Linux USB-Thermometer TEMPer mit Munin für unter 20 Euro

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).

RDing TEMPer 1.2

RDing TEMPer 1.2

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.

5 comments

    1. Hallo Frank,

      leider nein. Was denkbar wäre, ist munin anzuweisen, statt den Werten einfach den Durchschnitt der Messung vor Ausfall und nach Ausfall zu mitteln. Was misst du mit deinem Temper?

      Grüße

  1. Bei der Recherche, wie ich mit dem TEMPer1 Temperaturen messen und grafisch ausgeben kann, bin ich auf diese Seite gestoßen. Leider konnte ich der ganzen Geschichte nicht ganz folgen. Das mit dem Munin-Plugin konnte ich nicht nachvollziehen. Ich habe nun auf http://meinpi.no-ip.org eine RR-Datenbank angelegt und lasse die Daten über das RRDtool auf meiner Seite ausgeben. Zuerst hatte ich ein Linien-, jetzt aber ein Flächendiagramm. So sieht es etwas gefälliger aus, da es irgendwie zu unschönen Messfehlern kommt. Leider weiß ich nicht wie man diese verhindern bzw. in der Darstellung vermeiden kann!?

    Grüße intux

  2. 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

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>