Sma-bluetooth
Es geht hier um das Tool sma-bluetooth zum Einsatz auf einer Synology NAS
Bisher getestet auf folgenden Diskstations:
DS1010+
- Vorraussetzungen für den Einsatz von SMA Bluetooth schaffen:
Bluetooth muss funktionieren. Die Installation ist hier: Bluetooth_Treiber beschrieben.
- Sourcecode für sma-bluetooth besorgen:
- Original Source
hg pull https://code.google.com/p/sma-bluetooth/
- Modifizierte Source
hg pull https://code.google.com/p/janus44444-sma-bluetooth/
- Compilieren des Sourcecodes:
make strip smatool
- Erstellen der smatool Datenbank
<TODO> Die Datenbank muss mittels mysql Befehlen erstellt werden und mit einem Passwort versehen werden.
- Kopieren der Binaries und erstellen der Config Dateien
<TODO: /opt/etc/smatool/smatool.conf anpassen> <TODO: /opt/etc/smatool/sma.in.new kopieren> <TODO: /opt/etc/smatool/invcode.in kopieren>
mkdir /opt/etc/smatool cp smatool /opt/bin
- Erstellen der Datenbank Strukturen mittels smatool
LD_LIBRARY_PATH=/opt/lib:/opt/lib/mysql; export LD_LIBRARY_PATH /opt/bin/smatool --INSTALL
- Script für benutzung von smatool im cron.
Bitte beachten, dass das Passwort, der User und der Datenbank Name eingesetzt werden müssen, damit der MySQL Hack funktioniert.
File /opt/etc/smatool/sma-cron.sh:
#!/opt/bin/bash # # Startup script to use with cron to download sma data to the database with smatool # # crontab example entry to run every 5 minutes: # 1,11,21,31,41,51 * * * * root /opt/etc/smatool/sma-cron.sh # SMAHOME=/opt/etc/smatool SMATOOL=/opt/bin/smatool SMACFG=/opt/etc/smatool/smatool.conf #DEBUG=-v #DEBUG=-d LD_LIBRARY_PATH=/opt/lib:/opt/lib/mysql export LD_LIBRARY_PATH # # Main cd ${SMAHOME} touch logfile.log ${SMATOOL} -c ${SMACFG} ${DEBUG} $@ | tee -a logfile.log cat << EOF | /opt/bin/mysql --password=<your mysql password> -u <your smatool mysql user> <your mysql smatool database> | tee -a logfile.log select * from DayData where CurrentPower>6000; delete from DayData where CurrentPower>6000; select * from DayData WHERE DateTime LIKE "1970-%%-%% %%:%%:%%"; delete from DayData WHERE DateTime LIKE "1970-%%-%% %%:%%:%%"; EOF # End
- Utility Script um die aktuellen Einträge der Datenbank anzuzeigen
Bitte beachten, dass das Passwort, der User und der Datenbank Name eingesetzt werden müssen, damit der MySQL Hack funktioniert.
File /opt/etc/smatool/show-mysql.sh:
AKTDATE=`date +%Y-%m-%d` cat << EOF | mysql --password=<your mysql password> -u <your smatool mysql user> <your mysql smatool database> select * from DayData where CurrentPower>0 and DateTime LIKE "${AKTDATE} %%:%%:%%" order by DateTime; EOF