diff options
Diffstat (limited to 'god')
| -rwxr-xr-x | god/streams/bin/relaxxapi.py | 4 | ||||
| -rwxr-xr-x | god/streams/bin/streams | 2 | ||||
| -rw-r--r-- | god/temper/.gitignore | 1 | ||||
| -rw-r--r-- | god/temper/99-tempsensor.rules | 1 | ||||
| -rw-r--r-- | god/temper/Makefile | 20 | ||||
| -rwxr-xr-x | god/temper/collectd-temper.sh | 9 | ||||
| -rw-r--r-- | god/temper/temper.c | 277 | ||||
| -rw-r--r-- | god/temper/temper.h | 39 | 
8 files changed, 3 insertions, 350 deletions
| diff --git a/god/streams/bin/relaxxapi.py b/god/streams/bin/relaxxapi.py index f367caef..55e628b0 100755 --- a/god/streams/bin/relaxxapi.py +++ b/god/streams/bin/relaxxapi.py @@ -78,7 +78,7 @@ class relaxx:      def get_first(self):          return json.loads(self._playlist("getPlaylistInfo","0",""))[0] -    def get_first(self): +    def get_last(self):          return json.loads(self._playlist("getPlaylistInfo","0",""))[-1]      def clear(self): @@ -124,7 +124,7 @@ class relaxx:          if state["status"]["state"] == "play" :              ident = state["status"]["song"]              current = state["playlist"]["file"][int(ident)] -            return current.get("Name",current.get("Artist")) + " - " + current["Title"] +            return current.get("Name",current.get("Artist","unkown artist")) + " - " + current.get("Title","unknown title")          else:              return "" diff --git a/god/streams/bin/streams b/god/streams/bin/streams index ea6e9a90..8e00a733 100755 --- a/god/streams/bin/streams +++ b/god/streams/bin/streams @@ -1,4 +1,4 @@ -#!/usr/bin/python +#!/usr/bin/python2  import os  import sys  from subprocess import Popen, PIPE diff --git a/god/temper/.gitignore b/god/temper/.gitignore deleted file mode 100644 index 7e50641a..00000000 --- a/god/temper/.gitignore +++ /dev/null @@ -1 +0,0 @@ -temper diff --git a/god/temper/99-tempsensor.rules b/god/temper/99-tempsensor.rules deleted file mode 100644 index 441a469e..00000000 --- a/god/temper/99-tempsensor.rules +++ /dev/null @@ -1 +0,0 @@ -SUBSYSTEMS=="usb", ACTION=="add", ATTRS{idVendor}=="1130", ATTRS{idProduct}=="660c", MODE="666" diff --git a/god/temper/Makefile b/god/temper/Makefile deleted file mode 100644 index 80c0206f..00000000 --- a/god/temper/Makefile +++ /dev/null @@ -1,20 +0,0 @@ - -all: infest -infest: temper rules-install -CFLAGS = -O2 -Wall - -temper:	temper.c  -	${CC} -DUNIT_TEST -o $@ $^ -lusb -	chmod +s temper -	cp -a temper /usr/bin -clean:		 -	rm -f temper *.o - -rules-install: /etc/udev/rules.d/99-tempsensor.rules -/etc/udev/rules.d/99-tempsensor.rules: -	cp 99-tempsensor.rules /etc/udev/rules.d -debian-prereq: -	apt-get install libusb-dev -uninstall: -	rm -f /etc/udev/rules.d/99-tempsensor.rules /usr/bin/temper - diff --git a/god/temper/collectd-temper.sh b/god/temper/collectd-temper.sh deleted file mode 100755 index f66e9acc..00000000 --- a/god/temper/collectd-temper.sh +++ /dev/null @@ -1,9 +0,0 @@ -HOSTNAME="${COLLECTD_HOSTNAME:-localhost}" -INTERVAL="${COLLECTD_INTERVAL:-30}" -TEMPERNAME="${TEMPERNAME:-external}" -TEMPERBIN="${TEMPERBIN:-/krebs/temper/temper}" -#while sleep "$INTERVAL"; do -  VALUE=`$TEMPERBIN` -  echo "PUTVAL \"$HOSTNAME/sensors-temper/temperature-$TEMPERNAME\" N:$VALUE" #interval=$INTERVAL -  logger "PUTVAL \"$HOSTNAME/sensors-temper/temperature-$TEMPERNAME\" N:$VALUE" #interval=$INTERVAL -#done diff --git a/god/temper/temper.c b/god/temper/temper.c deleted file mode 100644 index 390f9056..00000000 --- a/god/temper/temper.c +++ /dev/null @@ -1,277 +0,0 @@ -#include <stdio.h> -#include <string.h> -#include <usb.h> -#include <errno.h> - -/* - * Temper.c by Robert Kavaler (c) 2009 (relavak.com) - * All rights reserved. - * - * Temper driver for linux. This program can be compiled either as a library - * or as a standalone program (-DUNIT_TEST). The driver will work with some - * TEMPer usb devices from RDing (www.PCsensor.com). - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - *     * Redistributions of source code must retain the above copyright - *       notice, this list of conditions and the following disclaimer. - *  - * THIS SOFTWARE IS PROVIDED BY Robert Kavaler ''AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL Robert kavaler BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - *  - */ - -#include "temper.h" - -#define VENDOR_ID  0x1130 -#define PRODUCT_ID 0x660c - -struct Temper { -	struct usb_device *device; -	usb_dev_handle *handle; -	int debug; -	int timeout; -}; - -	Temper * -TemperCreate(struct usb_device *dev, int timeout, int debug) -{ -	Temper *t; -	int ret; - -	t = calloc(1, sizeof(*t)); -	t->device = dev; -	t->debug = debug; -	t->timeout = timeout; -	t->handle = usb_open(t->device); -	if(!t->handle) { -		free(t); -		return NULL; -	} -	if(t->debug) { -		printf("Trying to detach kernel driver\n"); -	} - -	ret = usb_detach_kernel_driver_np(t->handle, 0); -	if(ret) { -		if(errno == ENODATA) { -			if(t->debug) { -				printf("Device already detached\n"); -			} -		} else { -			if(t->debug) { -				printf("Detach failed: %s[%d]\n", -						strerror(errno), errno); -				printf("Continuing anyway\n"); -			} -		} -	} else { -		if(t->debug) { -			printf("detach successful\n"); -		} -	} -	ret = usb_detach_kernel_driver_np(t->handle, 1); -	if(ret) { -		if(errno == ENODATA) { -			if(t->debug) -				printf("Device already detached\n"); -		} else { -			if(t->debug) { -				printf("Detach failed: %s[%d]\n", -						strerror(errno), errno); -				printf("Continuing anyway\n"); -			} -		} -	} else { -		if(t->debug) { -			printf("detach successful\n"); -		} -	} - -	if(usb_set_configuration(t->handle, 1) < 0 || -			usb_claim_interface(t->handle, 0) < 0 || -			usb_claim_interface(t->handle, 1)) { -		usb_close(t->handle); -		free(t); -		return NULL; -	} -	return t; -} - -	Temper * -TemperCreateFromDeviceNumber(int deviceNum, int timeout, int debug) -{ -	struct usb_bus *bus; -	int n; - -	n = 0; -	for(bus=usb_get_busses(); bus; bus=bus->next) { -		struct usb_device *dev; - -		for(dev=bus->devices; dev; dev=dev->next) { -			if(debug) { -				printf("Found device: %04x:%04x\n", -						dev->descriptor.idVendor, -						dev->descriptor.idProduct); -			} -			if(dev->descriptor.idVendor == VENDOR_ID && -					dev->descriptor.idProduct == PRODUCT_ID) { -				if(debug) { -					printf("Found deviceNum %d\n", n); -				} -				if(n == deviceNum) { -					return TemperCreate(dev, timeout, debug); -				} -				n++; -			} -		} -	} -	return NULL; -} - -	void -TemperFree(Temper *t) -{ -	if(t) { -		if(t->handle) { -			usb_close(t->handle); -		} -		free(t); -	} -} - -	static int -TemperSendCommand(Temper *t, int a, int b, int c, int d, int e, int f, int g, int h) -{ -	unsigned char buf[32]; -	int ret; - -	bzero(buf, 32); -	buf[0] = a; -	buf[1] = b; -	buf[2] = c; -	buf[3] = d; -	buf[4] = e; -	buf[5] = f; -	buf[6] = g; -	buf[7] = h; - -	if(t->debug) { -		printf("sending bytes %d, %d, %d, %d, %d, %d, %d, %d\n", -				a, b, c, d, e, f, g, h); -	} - -	ret = usb_control_msg(t->handle, 0x21, 9, 0x200, 0x01, -			(char *) buf, 32, t->timeout); -	if(ret != 32) { -		perror("usb_control_msg failed"); -		return -1; -	} -	return 0; -} - -	static int -TemperGetData(Temper *t, char *buf, int len) -{ -	int ret; - -	return usb_control_msg(t->handle, 0xa1, 1, 0x300, 0x01, -			(char *) buf, len, t->timeout); -} - -	int -TemperGetTemperatureInC(Temper *t, float *tempC) -{ -	char buf[256]; -	int ret, temperature, i; - -	TemperSendCommand(t, 10, 11, 12, 13, 0, 0, 2, 0); -	TemperSendCommand(t, 0x54, 0, 0, 0, 0, 0, 0, 0); -	for(i = 0; i < 7; i++) { -		TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0); -	} -	TemperSendCommand(t, 10, 11, 12, 13, 0, 0, 1, 0); -	ret = TemperGetData(t, buf, 256); -	if(ret < 2) { -		return -1; -	} - -	temperature = (buf[1] & 0xFF) + (buf[0] << 8);	 -	temperature += 1152;			// calibration value -	*tempC = temperature * (125.0 / 32000.0); -	return 0; -} - -	int -TemperGetOtherStuff(Temper *t, char *buf, int length) -{ -	TemperSendCommand(t, 10, 11, 12, 13, 0, 0, 2, 0); -	TemperSendCommand(t, 0x52, 0, 0, 0, 0, 0, 0, 0); -	TemperSendCommand(t, 10, 11, 12, 13, 0, 0, 1, 0); -	return TemperGetData(t, buf, length); -} - - -#define USB_TIMEOUT 1000	/* milliseconds */ -#define DEBUG_MODE 0 -#define SLEEP_TIMEOUT 10 - -	int -main(int argv,char** args) -{ - - -	Temper *t; -	char buf[256]; -	int i, ret,oneshot=0; -	if (argv == 2 && (args[1][1] == 'h' || args[1][0] == 'h')) -	{ -		printf("Temper, does the right thing in C\n"); -		printf("recompile with DEBUG_MODE = 1 for all the debug printing\n"); -		printf("recompile with SLEEP_TIMEOUT = XX for a different polling interval\n"); -		exit(0); -	} - -	usb_set_debug(DEBUG_MODE); -	usb_init(); -	usb_find_busses(); -	usb_find_devices(); - -	t = TemperCreateFromDeviceNumber(0, USB_TIMEOUT, DEBUG_MODE); -	if(!t) { -		perror("TemperCreate"); -		exit(-1); -	} - -	/* -	   TemperSendCommand(t, 10, 11, 12, 13, 0, 0, 2, 0); -	   TemperSendCommand(t, 0x43, 0, 0, 0, 0, 0, 0, 0); -	   TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0); -	   TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0); -	   TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0); -	   TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0); -	   TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0); -	   TemperSendCommand(t, 0, 0, 0, 0, 0, 0, 0, 0); -	 */ - -	bzero(buf, 256); -	ret = TemperGetOtherStuff(t, buf, 256); - -	float tempc; - -	if(TemperGetTemperatureInC(t, &tempc) < 0) { -		perror("TemperGetTemperatureInC"); -		exit(1); -	} - -	printf("%.2f\n", tempc); -	return 0; -} diff --git a/god/temper/temper.h b/god/temper/temper.h deleted file mode 100644 index 7ea6280a..00000000 --- a/god/temper/temper.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef TEMPER_H -#define TEMPER_H - -/* - * Temper.h by Robert Kavaler (c) 2009 (relavak.com) - * All rights reserved. - * - * Temper driver for linux. This program can be compiled either as a library - * or as a standalone program (-DUNIT_TEST). The driver will work with some - * TEMPer usb devices from RDing (www.PCsensor.com). - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - *     * Redistributions of source code must retain the above copyright - *       notice, this list of conditions and the following disclaimer. - *  - * THIS SOFTWARE IS PROVIDED BY Robert Kavaler ''AS IS'' AND ANY - * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE - * DISCLAIMED. IN NO EVENT SHALL Robert kavaler BE LIABLE FOR ANY - * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES - * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; - * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND - * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - *  - */ - -typedef struct Temper Temper; - - -Temper *TemperCreateFromDeviceNumber(int deviceNum, int timeout, int debug); -void TemperFree(Temper *t); - -int TemperGetTemperatureInC(Temper *t, float *tempC); -int TempterGetOtherStuff(Temper *t, char *buf, int length); - -#endif | 
