[Video] v19. Термометр из Raspberry Pi. Мониторинг домашней температуры.


В этом видео я рассказываю о том как настроить мониторинг температуры в своём доме. ( и строить по отслеживаемой температуре графики)

Посетите мой второй канал: AfterWorkLife

Мой термометр (похоже что распродан, может появится в будущем).

Аналог, но без выносного модуля.

Настройка программы для сбора данных с термометра:dev-random.net

Дополнения к настройкам из статьи:
На x86:
export LIBUSB_LIBDIR=/usr/lib/x86_64-linux-gnu
export LIBUSB_INCDIR=/usr/include/libusb.h

На arm:
export LIBUSB_LIBDIR=/usr/lib/arm-linux-gnueabihf
export LIBUSB_INCDIR=/usr/include/libusb-1.0

Сбор данных по SNMP:
snmpget -v 2c -c communityname host-ip-address NET-SNMP-EXTEND-MIB::nsExtendOutLine.\"test1\".1

Моя конфигруция SNMP демона:
$ cat /etc/snmp/snmpd.conf
<часть удалена>
#test of creating own MIB or etc...: Это настойки для тестов:
extend test1 /bin/echo Hello, world!
extend-sh test2 echo Hello, world! ; echo Hi there ; exit 35
# Это настройка для сбора данных о температуре:
extend temper /bin/cat /home/pi/temperv14/current_temperature.txt

Мой скрипт для сбора данных с термометра (с проверкой на косистентность) и сохранением данных в файл для последующего забора по SNMP:
~/temperv14 $ pwd
/home/pi/temperv14

~/temperv14 $ ls -lh
total 56K
-rw-r--r-- 1 pi pi 96 Aug 19 2013 99-tempsensor.rules
-rw-r--r-- 1 pi pi 6 Oct 30 22:48 current_temperature.txt
-rw-r--r-- 1 pi pi 215 Aug 19 2013 Makefile
-rwxr--r-- 1 pi pi 739 Oct 19 22:18 temperature.sh
-rwxr-xr-x 1 pi pi 17K Oct 18 23:44 temperv14
-rw-r--r-- 1 pi pi 13K Aug 19 2013 temperv14.c
-rw-r--r-- 1 pi pi 6 Oct 30 22:48 temp_temperature.txt

~/temperv14 $ cat temperature.sh
#!/bin/bash
# variables declaration:
declare -i a=0
declare -i b=0

# check current temperature value:
/home/pi/temperv14/temperv14 -c > /home/pi/temperv14/temp_temperature.txt

# calculate how many lines test file has, if more than 6 than vpn is working.
a=$(wc -m < /home/pi/temperv14/temp_temperature.txt) if [ "$a" -eq "$b" ] then # something is wrong # echo 'USB read failed -> use previous temperature value!'
# do not change ‘current_temperature.txt’
exit 1
else
# echo 'everything looks fine -> overwrite ‘current_temperature.txt’'
# cat /home/pi/temperv14/temp_temperature.txt
cat /home/pi/temperv14/temp_temperature.txt > /home/pi/temperv14/current_temperature.txt
exit 0
fi
exit 0

Удачи!