Inhaltsverzeichnis
FHEM
FHEM ist in Perlbasiertes Program zur Hausautomatisierung.
Installation auf Raspberry PI OS
Die Anweisungen unter https://debian.fhem.de/ scheinen veraltet zu sein. Eine Möglichkeit ist die Verwendung dieses Skripts. Alternativ können diese Befehle verwendet werden:
wget -O- https://debian.fhem.de/archive.key | gpg --dearmor > /usr/share/keyrings/debianfhemde-archive-keyring.gpg && sudo echo "deb [signed-by=/usr/share/keyrings/debianfhemde-archive-keyring.gpg] https://debian.fhem.de/nightly/ /" >> /etc/apt/sources.list && sudo apt update && sudo apt install fhem
Plots löschen
Nicht mehr benötigte Plots lassen sich mit dem Kommando delete PLOTNAME
löschen.
Beispiel:
delete SVG_HMS100TF_4300
Messung der Internetgeschwindigkeit
Die Internetgeschwindigkeit lässt sich mit dem Modul speedtest
messen.
Installation von Ookla Speedtest
curl -L https://packagecloud.io/ookla/speedtest-cli/gpgkey | gpg --dearmor | sudo tee /usr/share/keyrings/speedtestcli-archive-keyring.gpg >/dev/null echo "deb [signed-by=/usr/share/keyrings/speedtestcli-archive-keyring.gpg] https://packagecloud.io/ookla/speedtest-cli/debian/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/speedtest.list sudo apt update sudo apt install speedtest
Modul einbinden
define Speedtest speedtest 3600 define FileLog_MySpeedtest FileLog ./log/InternetSpeedTest-%Y.log MySpeedtest:.* attr FileLog_MySpeedtest logtype text define SVG_FileLog_MySpeedtest_1 SVG FileLog_Speedtest:SVG_FileLog_MySpeedtest_1:CURRENT
Plot einrichten
Um Upload, Download und Ping in einem Diagramm darzustellen, diese Einstellungen im Plot Editor machen:
Werte umrechnen
Liefert ein Device ein Reading in der falschen Einheit kann der Wert mit UserReadings umgerechnet werden:
attr DEVICENAME userReadings NEW_USER_READING_NAME {ReadingsVal(DEVICENAME,EXISTING_USER_READING_NAME,0)/1000}
Beispiel:
attr Stromzaehler userReadings total_consumption_kwh {ReadingsVal("Stromzaehler","total_consumption",0)/1000}
Als DEVICENAME innerhalb von UserReadings sollte man $NAME verwenden, falls man das Device mal umbenennen möchte.
Beispiel:
attr Stromzaehler userReadings total_consumption_kwh {ReadingsVal($NAME,"total_consumption",0)/1000}
Mehrere UserReadings müssen in einer Zeile angegeben werden (mit Komma getrennt), sonst wird nur das zuletzt hinzugefügt aktualisiert.
Beispiel:
attr Stromzaehler userReadings total_feed_kwh {ReadingsVal($NAME,"total_feed",0)/1000},total_consumption_kwh {ReadingsVal($NAME,"total_consumption",0)/1000}