12.08
Wer günstig mit Linux Temperaturen messen möchte, kann das jetzt. Für unter 20 Euro vertreibt der Anbieter M-Ware auf Amazon den RDing TEMPer1.2 USB-Temperatursensor. Doch etwas Vorsicht ist geboten, denn die neue Version 1.2 ist nicht mit den verfügbaren Perl-Bibliotheken oder Munin-Plugin kompatibel.
Wird der neue als gold TEMPer betitelte Sensor angeschlossen ergibt sich folgendes Bild:
[1816401.763718] usb 2-1: Product: TEMPerV1.2 [1816401.763724] usb 2-1: Manufacturer: RDing [1816401.782819] input: RDing TEMPerV1.2 as /devices/pci0000:00/0000:00:10.0/usb2/2-1/2-1:1.0/input/input44 [1816401.783419] generic-usb 0003:0C45:7401.004F: input,hidraw0: USB HID v1.10 Keyboard [RDing TEMPerV1.2] on usb-0000:00:10.0-1/input0 [1816401.798144] generic-usb 0003:0C45:7401.0050: hiddev0,hidraw1: USB HID v1.10 Device [RDing TEMPerV1.2] on usb-0000:00:10.0-1/input1 [1817325.787837] udev[26706]: starting version 164
Nach längerer Suche im Internet wird klar, dass für die neue Version eine spanische Firma (ISP-SL) verantwortlich zeichnet, die auch hier einen entsprechenden Treiber zur Verfügung stellt. Damit geht die Installation der Software dann ganz schnell wie folgt.
apt-get install build-essentials libusb-dev wget "http://www.isp-sl.com/pcsensor-1.0.0.tgz" tar xvzf pcsensor-1.0.0.tgz cd pcsensor-1.0.0 make clean make pcsensor make rules-install cp pcsensor /usr/local/bin/
Um die udev Regeln zu aktivieren muss jetzt der Computer neugestartet werden, oder der entsprechende Dienst mit dem Befehl /etc/init.d/udev reload neugestartet werden. Alternativ tut es auch ein abziehen und wiedereinstecken des TEMPer Moduls.
Hat alles geklappt, liefert die Eingabe des Befehl pcsensor jetzt die gewünschten Daten.
# pcsensor 2012/12/08 19:53:33 Temperature 71.83F 22.12C
Um auch dauerhaft einen Überblick über die gemessene Temperatur zu behalten, eignet sich ein Munin-Plugin (Abbildung folgt).
Das ist schnell geschrieben und könnte wie folgt aussehen.
#!/bin/sh
# Where is pcsensor located?
PCSENSOR="/usr/local/bin/pcsensor"
if [ ! -e ${PCSENSOR} ]; then
echo "Cannot find pcsensor executable" >&2
exit -1
fi
case $1 in
config)
echo "
graph_title TEMPer USB Thermometer
graph_vlabel Celsius
graph_info This graph shows the temperatur reported by the attached TEMPer USB Thermometer.
graph_category Sensors
temp.label temp
temp.draw AREA
temp.colour FFD700
# < water freezes, > high fever
temp.warning 4:40
# sensor max
temp.critical -40:120
"
exit 0;;
esac
echo -n "temp.value "
${PCSENSOR} -cm | head -n1
Zusammengefasst lässt sich sagen, dass der TEMPer nicht leich in Betrieb zu nehmen war. Nicht, weil die Software nicht zur Verfügung stand, sondern weil der Sensor schlicht ohne Handbuch oder Treiber oder Informationen über Bezugsquellen für Treiber geliefert wurde. Das ist schade, aber bei einem Preis von unter 20 Euro zu verschmerzen.
Google+
1. Für eine Umleitung der Ausgabe in eine Datei habe ich fuer meine Zwecke noch ein
fflush(stdout); // flush output for redirection into file
in die Ausgabe eingefuegt, sodass die Werte unmittelbar in der Datei ankommen.
2. Beim Korrekurfaktor nicht zimperlich sein! 256 entspricht bei mir etwa 1°C
Danke für den Artikel und die Hinweise! Hat mir auf jeden Fall weiter geholfen. Leider ist das Programm unter der Adresse nicht mehr verfügbar. Hier findet man die Fortsetzung des Programms auf GitHub: https://github.com/peterfarsinsen/pcsensor
runterladen >> entpacken >> make >> glücklich sein :)