====== FHEM ======
FHEM ist in [[Perl]]basiertes 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 [[https://github.com/steigerbalett/FHEM-RPi-install/blob/master/install.sh|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:
{{speedtest.png|}}
===== Werte umrechnen =====
Liefert ein Device ein Reading in der falschen Einheit kann der Wert mit [[https://wiki.fhem.de/wiki/UserReadings|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}
===== Stromzähler auslesen =====
* [[https://www.landisgyr.de/webfoo/wp-content/uploads/2018/08/D000061986-E320-AMxD-Benutzerhandbuch-de-c.pdf|Benutzerhandbuch Landis Gyr E320]]
* [[https://api.netze-bw.de/ctfservice/v1/assets/5wq7XgMdnqWKWcEKgQ0sA0?|Anleitung Landis Gyr E320 (Netze BW)]]
===== Homepage =====
* [[https://fhem.de/|Homepage]]