Hallo zusammen,
ich nutze, wie schon öfter geschrieben, hauptsächlich LCN-Module in meinem kleinen Haus, die ich mit verschiedenen Systemen erweitert und das Ganze dann mit openHAB vernetzt habe.
Ein wichtiges Element der Hausautomatisierung ist die Erfassung der Raumtemperaturen, und genau da komme ich gerade nicht richtig weiter:
Die Temperaturen werden von GRT-Sensoren erfasst, die am I-Anschluss der Busmodule (UPP, UPS) hängen, und in die Modulvariablen geschrieben. Wenn ich mit LCN-PRO in die Module gucke, passt da alles, läuft ja auch schon acht Jahre.
Problem: Ich habe vor allem Module vor 2013, die diese Messwerte nicht "von allein" in den Bus schicken, sondern jedes Mal "gebeten" werden müssen. Im v1-Binding gab es noch die Möglichkeit, das entsprechende PCK-Kommando regelmäßig abzuschicken, um die Meldung auszulösen, das geht jetzt nicht mehr, zumindest finde ich es nicht. Ergebnis: Die Temperaturen werden auf dem Bus nicht mehr aktualisiert.
Ich habe bei GitHub schon ein Issue dazu aufgemacht (#9740) und darum gebeten, die "freie" PCK-Kommando-Funktion auch im v2-Bindung einzubauen.
Ich würde aber gerne wissen, ob ich da total auf dem Holzweg bin und Ihr schon alle längst einen super Workaround dazu habt. Wie macht Ihr das denn?
[LCN] Auslesen der Messwerte ("Variablen")
-
- Beiträge: 235
- Registriert: 3. Dez 2019 08:21
-
- Beiträge: 17
- Registriert: 29. Dez 2020 10:36
Re: [LCN] Auslesen der Messwerte ("Variablen")
Hallo @harteknut,
meine Module stammen vorwiegend aus den Jahren 2003/2004 und haben somit nur die 3 Variablen TVAR, R1VAR und R2VAR. Zur Temperaturmessung habe ich einige ebenfalls ältere LCN-TS verbaut, die am I-Anschluss der Module hängen und den Messwert in R1VAR ablegen. Um die Werte in OpenHAB zu bekommen, reicht es eigentlich aus, einfach ein Item anzulegen und über den entsprechenden Channel des Modul-Things die Verbindung herzustellen. Die Abfrage der Messwerte erfolgt dann automatisch durch das Binding. Mit den PCK-Kommandos muss man sich also direkt erstmal gar nicht beschäftigen, das erledigt das LCN-Binding.
Hier eine konkrete Beispielkonfiguration...
Ich setze voraus, dass das Thing und die Channels vorhanden sind. Das kann man im neuen WebUI über die Auto-Discover-Funktion des LCN-Bindings ja automatisch machen lassen. Die Modul-Things sind dann in der Inbox und können einfach hinzugefügt werden und enthalten dann auch gleich alle Channels, die ein Modul bietet.
im *.items file
Falls der Messwert nicht in R1VAR liegt muss "variable#2" entsprechend angepasst werden (1:TVAR, 2:R1VAR, 3:R2VAR).
im *.sitemap file
Das ist dann eigentlich schon alles und es sollte funktionieren.
Bei GitHub gibt es übrigens auch ein Issue zum Thema LCN-Binding und Variablen (#8151). Dort gibt es noch einen guten Tipp wie man das OH-Logging so einstellt, dass man die PCK-Kommandos im openHAB Log Viewer mitverfolgen kann.
Ich hoffe, ich konnte dir ein wenig weiterhelfen. Viel Erfolg!
meine Module stammen vorwiegend aus den Jahren 2003/2004 und haben somit nur die 3 Variablen TVAR, R1VAR und R2VAR. Zur Temperaturmessung habe ich einige ebenfalls ältere LCN-TS verbaut, die am I-Anschluss der Module hängen und den Messwert in R1VAR ablegen. Um die Werte in OpenHAB zu bekommen, reicht es eigentlich aus, einfach ein Item anzulegen und über den entsprechenden Channel des Modul-Things die Verbindung herzustellen. Die Abfrage der Messwerte erfolgt dann automatisch durch das Binding. Mit den PCK-Kommandos muss man sich also direkt erstmal gar nicht beschäftigen, das erledigt das LCN-Binding.
Hier eine konkrete Beispielkonfiguration...
Ich setze voraus, dass das Thing und die Channels vorhanden sind. Das kann man im neuen WebUI über die Auto-Discover-Funktion des LCN-Bindings ja automatisch machen lassen. Die Modul-Things sind dann in der Inbox und können einfach hinzugefügt werden und enthalten dann auch gleich alle Channels, die ein Modul bietet.
im *.items file
Code: Alles auswählen
//Temperatursensoren Erdgeschoss
Number:Temperature EG_BU_TS_1 "Bad unten aktuell [%.1f %unit%]" <temperature> //1
(g_TS_EG, g_HZ_BU, gBadezimmerUnten) ["Measurement", "Temperature"]
{ channel="lcn:module:02427ad9de08:S000M012:variable#2" } //so macht man es mit LCN-Binding 2.x
//{lcn="[myhome:VAR_VALUE.0.12.2.CELSIUS]"} //und so mit LCN-Binding 1.x
im *.sitemap file
Code: Alles auswählen
Frame label="Temperaturmesswerte"
{
Text item=EG_BU_TS_1
}
Bei GitHub gibt es übrigens auch ein Issue zum Thema LCN-Binding und Variablen (#8151). Dort gibt es noch einen guten Tipp wie man das OH-Logging so einstellt, dass man die PCK-Kommandos im openHAB Log Viewer mitverfolgen kann.
Ich hoffe, ich konnte dir ein wenig weiterhelfen. Viel Erfolg!
-
- Beiträge: 235
- Registriert: 3. Dez 2019 08:21
Re: [LCN] Auslesen der Messwerte ("Variablen")
Hallo @LCN-User,
vielen Dank für Deine ausführliche Antwort! Du bist ja auf GitHub mit Fabian schon in einer ausführlichen Diskussion
Meine Module haben ebenfalls nur die drei Variablen. Ich habe meine Items so angelegt (Messwerte liegen alle auf R1VAR):
Damit werden die Werte nach dem Start von openHAB einmalig beschrieben und nie mehr aktualisiert. Ich habe, wie im #8151 beschrieben, den LCN-Log auf "Trace" umgestellt. Auf dem Log erwarte ich (mit meinen rudimentären PCK-Kenntnissen)...
Seltsam in diesem Zusammenhang:
Ich habe auch teilweise Helligkeitsmelder angeschlossen, deren Variable liegt auf R2VAR:
Die Abfrage MWTB sehe ich regelmäßig, aber nur für ein Modul, obwohl ich drei von den Sensoren konfiguriert habe.
Kannst Du mal gucken, ob bei Dir die MWTA-Kommandos auf dem Bus kommen?
Danke Dir vielmals!
Gruß
Simon
vielen Dank für Deine ausführliche Antwort! Du bist ja auf GitHub mit Fabian schon in einer ausführlichen Diskussion

Meine Module haben ebenfalls nur die drei Variablen. Ich habe meine Items so angelegt (Messwerte liegen alle auf R1VAR):
Code: Alles auswählen
Number:Temperature EG_Flur_Temp_Ist "T_av EG Flur [ist: %.1f %unit%]" <temperature> (gTemperaturen, gEG_Flur_Heizung) [Measurement, Temperature] {channel="lcn:module:edb2e504:S000M019:variable#2"}
- für TVAR: "> MWV"
- für R1VAR: "> MWTA"
- für R2VAR: "> MWTB"

Seltsam in diesem Zusammenhang:
Ich habe auch teilweise Helligkeitsmelder angeschlossen, deren Variable liegt auf R2VAR:
Code: Alles auswählen
Switch EG_Flur_Bewegungsmelder "EG Flur Bewegung" <motion> (gEG_Flur_Bewegung, gBewegung) [Measurement, Presence] {channel="lcn:module:edb2e504:S000M005:output#3"}
Kannst Du mal gucken, ob bei Dir die MWTA-Kommandos auf dem Bus kommen?
Danke Dir vielmals!
Gruß
Simon
-
- Beiträge: 17
- Registriert: 29. Dez 2020 10:36
Re: [LCN] Auslesen der Messwerte ("Variablen")
Hallo @harteknut,
auf meinem bei GitHub hochgeladenen Log kannst du auch die Anfragen des Bindings per ">M000012.MWTA" sehen. Dort sieht es so aus, dass das LCN-Binding periodisch alle 30 Sekunden die Messwerte abfragt.
Unabhängig davon, wenn ich es richtig sehe, hast du das Item mit Ausgang 3 verbunden, d. h. da hängt möglicherweise deine Flurlampe dran. Wenn das Item den Bewegungsmelder (LCN-BMI) repräsentieren soll, dann müsste dort im Channel aber eher etwas wie "...binarysensor#4" stehen.
Was mir außerdem gerade noch einfällt. Ich hatte auch mal ein Modul mit der ID 5 und die Messwerte der Tvar (Messwerte vom LCN-LS) kamen einfach nicht mehr bei openHAB an, obwohl es eine zeitlang lief und in der LCN-Pro auch alles gut aussah. In meiner Verzweifelung habe ich dann dem Modul eine neue ID 205 zugewiesen und seitdem kommen die Messwerte wieder zuverlässig in OH an. Keine Ahnung warum, aber so ist es.
Weiterhin viel Erfolg!
auf meinem bei GitHub hochgeladenen Log kannst du auch die Anfragen des Bindings per ">M000012.MWTA" sehen. Dort sieht es so aus, dass das LCN-Binding periodisch alle 30 Sekunden die Messwerte abfragt.
Hast du hier möglicherweise das falsche Item eingefügt?harteknut hat geschrieben: ↑9. Jan 2021 11:46 Ich habe auch teilweise Helligkeitsmelder angeschlossen, deren Variable liegt auf R2VAR:Code: Alles auswählen
Switch EG_Flur_Bewegungsmelder "EG Flur Bewegung" <motion> (gEG_Flur_Bewegung, gBewegung) [Measurement, Presence] {channel="lcn:module:edb2e504:S000M005:output#3"}
Unabhängig davon, wenn ich es richtig sehe, hast du das Item mit Ausgang 3 verbunden, d. h. da hängt möglicherweise deine Flurlampe dran. Wenn das Item den Bewegungsmelder (LCN-BMI) repräsentieren soll, dann müsste dort im Channel aber eher etwas wie "...binarysensor#4" stehen.
Was mir außerdem gerade noch einfällt. Ich hatte auch mal ein Modul mit der ID 5 und die Messwerte der Tvar (Messwerte vom LCN-LS) kamen einfach nicht mehr bei openHAB an, obwohl es eine zeitlang lief und in der LCN-Pro auch alles gut aussah. In meiner Verzweifelung habe ich dann dem Modul eine neue ID 205 zugewiesen und seitdem kommen die Messwerte wieder zuverlässig in OH an. Keine Ahnung warum, aber so ist es.
Weiterhin viel Erfolg!
-
- Beiträge: 235
- Registriert: 3. Dez 2019 08:21
Re: [LCN] Auslesen der Messwerte ("Variablen")
Hallo @LCN-User,
ja, das war das falsche Item, das richtige sieht so aus:
Ich bin den Log nochmal durchgegangen und habe festgestellt, dass die MWTAs nach jedem openHAB-restart für einige Minuten abgefragt (und beantwortet) werden, dann hört das Binding irgendwann auf zu fragen...
Ich habe das mal bei GitHub gepostet, mal sehen, was da rauskommt.
Danke Dir für die Hilfe!
Gruß
Simon
ja, das war das falsche Item, das richtige sieht so aus:
Code: Alles auswählen
Number EG_Flur_Helligkeit "EG Flur Helligkeit [%.0f %unit%]" <sun> (gEG_Flur_Bewegung) [Measurement, Light] {channel="lcn:module:edb2e504:S000M012:variable#3"}
Ich habe das mal bei GitHub gepostet, mal sehen, was da rauskommt.
Danke Dir für die Hilfe!
Gruß
Simon