OpenHab i 1-wire

  • 2 Odpowiedzi
  • 671 Wyświetleń

0 użytkowników i 1 Gość przegląda ten wątek.

*

Offline wiki66

  • * 2
  • 0
    • Zobacz profil
OpenHab i 1-wire
« dnia: Listopad 13, 2016, 10:24:24 pm »
Cześć
Czy ktoś z Was próbował już uruchomić termometr DS18B20 na raspberry PI poprzez GPIO (pin7) i prezentację  temperatury poprzez OpenHab?
Używam Raspberry PI 1 na RASPBIAN JESSIE i OpenHaba 1.8.
Próbowałem połączenie zrobić za pomocą OWFS ale niestety nie udało mi się  tego połączyć ponieważ gdzieś na necie doczytałem że OWFS nie jest kompatybilny z obecnymi kernelami i można tego dokonać tylko za pomocą adapterów na i2c lub USB ( to rozwiązanie nie wchodzi w grę) Czujnik jest prawidłowo podłączony bo z poziomu systemy odczytuję wartości (cat /sys/bus/w1/devices/xx-yyyyyyyyyyy/w1_slave).
Z góry dziękuję za jakieś koncepcje
Wiki
*

Offline Enc

  • ** 93
  • 3
    • Zobacz profil
  • Nazwa i wersja ID: OpenHab
Odp: OpenHab i 1-wire
« Odpowiedź #1 dnia: Listopad 14, 2016, 06:52:16 am »
Jeśli działa z poziomou systemy to zawsze możesz czytać za pomocą Exec Binding
exec="<[cat /sys/bus/w1/devices/xx-yyyyyyyyyyy/w1_slave:60000:REGEX(.*?([0-9]+).*)]"
Powinno działać. Na wszelki wypadek dodałem REGEX, który wyciąga tylko liczbę - nie pamiętam czy w OWFSie liczby nie są uzupełniane spacjami z przodu.
... vendor agnostic ...
*

Offline wiki66

  • * 2
  • 0
    • Zobacz profil
Odp: OpenHab i 1-wire
« Odpowiedź #2 dnia: Listopad 16, 2016, 11:00:13 pm »
Dzięki za pomoc kod wprawdzie zadziałał ale zwracał mi jakąś dziwną wartość, ale poszedłem tym tropem i pokopałem w necie i zrobiłem to tak:
skrypt:
#!/bin/sh
 
TEMP=`cat /sys/bus/w1/devices/$1/w1_slave | grep t= | cut -d "=" -f 2`
TEMP1=`echo "scale=1; $TEMP/1000" | bc`
echo "$TEMP1"

a kod openhabie:
 {exec="<[/usr/bin/test.sh 28-0000054d332a:60000:REGEX((.*?))]"}