Skripte von HM auf HA umstellen
Verfasst: 16.04.2024, 12:08
Hi,
ich bin vor ca. 1 Woche auf HA umgestiegen. Nun will ich meine RaspberryMatic nicht komplett auf HA übertragen aber manche Geräte welche sowieso nicht von HM sind will ich direkt in HA integrieren.
Unteranderem habe ich ein Skript laufen welche mein ESP an dem 3 LCD2004 angeschlossen sind mit Daten befüttere.
hier ein kleiner Auszug aus dem Skript:
Nun würde ich dies gerne in HA umsetzten. Mit ESPhome habe ich es versucht und bin an dem Problem gestoßen damit ich die Hintergrundbeleuchtung nur dann für ca. 2min. aktivieren will wenn eine Bewegung im Flur ist (Bewegungsmelder).
LCD an:
und LCD aus:
Das ganze hätte man vielleicht auch besser machen können aber Programmieren war noch nie so mein Ding aber es führt zum Ziel
Kann mir jemand einen Tipp geben wie man so etwas in HA umsetzt. Als Betriebssystem auf dem ESP habe ich ESPEasy bin aber für alles offen.
Danke
ich bin vor ca. 1 Woche auf HA umgestiegen. Nun will ich meine RaspberryMatic nicht komplett auf HA übertragen aber manche Geräte welche sowieso nicht von HM sind will ich direkt in HA integrieren.
Unteranderem habe ich ein Skript laufen welche mein ESP an dem 3 LCD2004 angeschlossen sind mit Daten befüttere.
hier ein kleiner Auszug aus dem Skript:
Code: Alles auswählen
string ip_adr = "192.168.10.244";
string haus_watt = dom.GetObject("Stromzaehler_Watt").Value().ToString(2);
string buero_watt = dom.GetObject("buero_kw").Value().ToString(2);
! Display löschen... sofort
string clear = "http://"#ip_adr#"/control?cmd=[Display1].LCDCMD,clear";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O /dev/null '"#clear#"'");
!- Zeile 1 Display 1 schreiben... verzögert 200ms
string ze1 = "http://"#ip_adr#"/control?cmd=[Display1].LCD,1,1,Komp.%A0Haus:%A0%A0%A0%A0"#haus_watt#"";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O /dev/null '"#ze1#"'",200);
!- Zeile 2 Display 1 schreiben... verzögert 400ms
string ze2 = "http://"#ip_adr#"/control?cmd=[Display1].LCD,2,1,Buero:%A0%A0%A0%A0%A0%A0%A0%A0%A0"#buero_watt#"W";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O /dev/null '"#ze2#"'",400);
LCD an:
Code: Alles auswählen
string url = "http://192.168.10.244/control?cmd=[Display1].LCDCMD,on";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O /dev/null '"#url#"'");
string url = "http://192.168.10.244/control?cmd=[Display2].LCDCMD,on";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O /dev/null '"#url#"'");
string url = "http://192.168.10.244/control?cmd=[Display3].LCDCMD,on";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O /dev/null '"#url#"'");
Code: Alles auswählen
string url = "http://192.168.10.244/control?cmd=[Display1].LCDCMD,off";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O /dev/null '"#url#"'");
string url = "http://192.168.10.244/control?cmd=[Display2].LCDCMD,off";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O /dev/null '"#url#"'");
string url = "http://192.168.10.244/control?cmd=[Display3].LCDCMD,off";
dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State("wget -q -O /dev/null '"#url#"'");
Kann mir jemand einen Tipp geben wie man so etwas in HA umsetzt. Als Betriebssystem auf dem ESP habe ich ESPEasy bin aber für alles offen.
Danke