In dem ein oder anderen Zimmer befindet sich ein Onewire Sensor um die Temperatur zu messen, die gemessene Temperatur soll nun im openhab dargestellt werden.
Für das auslesen habe ich das Shellscript onewiretemp.sh erstellt:
#!/bin/bash
wert=`cat /sys/bus/w1/devices/$1/w1_slave | tail -n1 | cut -d '=' -f2`
wert2=`echo "scale=3; $wert/1000" | bc`
echo $wert2
Das Script liegt unter /home/openhab/bin und beim Aufruf muss die Sensor ID mit angegeben werden.
./onewiretemp.sh Sensor Id
Die gemessene Temperatur wird dann wie folgt ausgegeben 20,745.
Die Abfragen der einzelnen Sensoren habe ich in einer items Datei zusammengefasst.
Group temperatur
Number Temperature_Flur "Temperatur Flur [%.1f °C]"
Damit die Ausgabe an mehreren Stellen in der Sitemap erfolgt, können bei der jeweiligen Abfrage mehrere Gruppen angegeben werden.
Hier noch ein Auszug aus der sitemap:
Frame label="Temperatur"{
Group label="Temperatur" icon="house" item=temperatur
}
Wie die Onewire Sensoren mit dem Raspberry Pi verbunden werden, habe ich in dem Artikel beschrieben.