UoM - Hager KNX Energiezähler in OH4 einbinden

Allgemeine Fragen rund um die "Smart Home" Hardware/Komponenten

Moderatoren: seppy, udo1toni

Antworten
Heiderdaus
Beiträge: 8
Registriert: 11. Feb 2020 19:19
Answers: 0

UoM - Hager KNX Energiezähler in OH4 einbinden

Beitrag von Heiderdaus »

Das Thema UoM bringt mich noch um den Verstand. OH zeigt mir keine Einheiten in den Items an.
Hager TE360 Energiezähler (KNX).
KNX Seite : Datenpunkte
Augenblickliche Leistung (W) 4 Byte laut Handbuch, in ETS als 14.056 definiert (Leistung W).
Zählerstand (Wh) 4 Bytes laut Handbuch, in ETS als 13.010 definiert (Wirkarbeit Wh)

OH4 Seite (KNX-Binding):
Channels
Augenblickliche Leistung (W) ga:14.056:4/0/4
Zählerstand (Wh) ga:13.010:4/0/3

Items
Augenblickliche Leistung (W) Number:Power
Zählerstand (Wh) Number:Energy

Im Event-Log wird seltsamerweise die Einheit angezeigt.

Keine State Description, keine Unit eingestellt.

Die Zahlenwerte kommen durch. Aber OH4 setzt keine Einheiten dahinter. Wo liegt mein Denkfehler ??? Das Problem existiert seit der Einführung der UoM, nicht erst seit OH4.

Dito bei der KNX Wetterstation. Auch hier kommen bei Helligkeit, Temperatur und Windgeschwindigkeit die Einheiten nicht mit ins Item. Auch hier werden sie im Event Log korrekt aufgeführt.

Benutzeravatar
udo1toni
Beiträge: 15242
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: UoM - Hager KNX Energiezähler in OH4 einbinden

Beitrag von udo1toni »

Unter openHAB4 musst Du bei den Items die Unit unbedingt setzen. Welche Unit Du wählst (solange sie zum gelieferten Wert passt) ist dabei egal.
Der Parameter Unit wurde in openHAB4 eingeführt, um Probleme mit der Persistence auzubügeln.
Die UoM Unterstützung ist im knx Addon erst vor kurzem implementiert worden, das ist meines Wissens nicht mal in der Doku der 3.4.5 erwähnt (auch wenn ich meine, dass es schon unter 3.4.4 funktioniert hat - da kann ich mich aber auch falsch erinnern...)

An welcher Stelle vermisst Du denn die Einheiten? Wenn die Einheit im events.log mitgeschrieben wird, dann hält das Item die Einheit auch. Vielleicht erwartest Du die Einheit nur an einer Stelle, wo sie nicht angezeigt wird.

EDIT: gerade festgestellt, dass tatsächlich die Einheit nicht im Item angezeigt wird, obwohl man bei leerem pattern erwarten sollte, dass dort die Standard-Unit verwendet werden sollte, die sich aus dem Itemtyxp ergibt.
Ich denke mal, das ist ein Fehler. Mit gesetztem Pattern in der State Description klappt es natürlich...
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Heiderdaus
Beiträge: 8
Registriert: 11. Feb 2020 19:19
Answers: 0

Re: UoM - Hager KNX Energiezähler in OH4 einbinden

Beitrag von Heiderdaus »

Hallo Udo
Sollte nicht automatisch die Einheit gesetzt werden wenn ich das Item als number:Energy definiere ?
Anbei ein paar Bilder. Es ist sehr verwirrend und passiert nur bei den KNX Daten. Shelly und Smartmeter Binding geht einwandfrei.
Itemliste : Dies ist die Darstellung in OH wenn ich auf "Items" gehe. Hier wird die Einheit angezeigt.
Itemliste in Group : Die gleiche Darstellung wenn ich die Gruppe des Energiezählers öffne. Hier fehlt die Einheit.
Itemansicht : Auch hier wird keine Einheit angezeigt.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Heiderdaus
Beiträge: 8
Registriert: 11. Feb 2020 19:19
Answers: 0

Re: UoM - Hager KNX Energiezähler in OH4 einbinden

Beitrag von Heiderdaus »

Smartmeter und Shelly gibt beim Item die Einheit mit aus. Scheint also ein Thema des KNX Bindings zu sein.
Gleiches Problem auch bei anderen Datenpunkten (Helligkeit, Windgeschwindigkeit, Temperatur) die von der Wetterstation übermittelt werden.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Heiderdaus
Beiträge: 8
Registriert: 11. Feb 2020 19:19
Answers: 0

Re: UoM - Hager KNX Energiezähler in OH4 einbinden

Beitrag von Heiderdaus »

Das setzten der Unit (hier W = Standardeinheit) führt zu keiner Veränderung des angezeigten Wertes. Einheit fehlt immer noch ;-)
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Benutzeravatar
udo1toni
Beiträge: 15242
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: UoM - Hager KNX Energiezähler in OH4 einbinden

Beitrag von udo1toni »

Ja, offensichtlich... (siehe mein Edit oben)

Interessant auch die Group ITems, welches sich bei mir exakt gegensätzlich zu Dir verhalten (allerdings habe ich inzwischen bei den Items das Pattern manuell gesetzt)

Meine Group Items sind gar nicht als UoM definiert, dennoch wird der Wert mit Einheit angezeigt, nicht aber innerhalb der Itemliste, dort wiederum wird der Wert bei den Items auch dann mit Einheit angezeigt, wenn ich kein Pattern setze, aber eben nicht in der Detailansicht des Items.

:lol:

Da wird wohl nochmal jemand den Code studieren müssen, der davon Ahnung hat...

Nur so am Rande: Ich hatte auch etwas Mühe, zu verifizieren, welche Sub-DPT in openHAB definiert sind - es ist nämlich mitnichten so, dass alle Sub-DPT gelistet wären, dies ist offensichtlich nur dort der Fall, wo die Automatik von Calimero nicht korrekt funktioniert.
Am ehesten kann man sich noch an den automatisierten Tests entlanghangeln, dort werden wohl mehr oder weniger alle DPT einzeln gecheckt.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Heiderdaus
Beiträge: 8
Registriert: 11. Feb 2020 19:19
Answers: 0

Re: UoM - Hager KNX Energiezähler in OH4 einbinden

Beitrag von Heiderdaus »

Ja, mit State description kommt die Einheit. Aber eigentlich hat UoM ja genau den Sinn, dass dies nicht mehr nötig ist :D

Das nicht alle DPT definiert sind hab ich auch schon herausgefunden :-) Hagelt Fehlermeldungen in meinem Log. wo ich mich Stück für Stück durchkämpfen muss. Gibt es irgendwo eine Liste, welche DPT bei Openhab hinterlegt sind ? Die Online Hilfe ist da nicht ganz erhellend.

Benutzeravatar
udo1toni
Beiträge: 15242
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: UoM - Hager KNX Energiezähler in OH4 einbinden

Beitrag von udo1toni »

Heiderdaus hat geschrieben: 3. Aug 2023 13:47 Ja, mit State description kommt die Einheit. Aber eigentlich hat UoM ja genau den Sinn, dass dies nicht mehr nötig ist :D
Äh, nein, das ist nur ein Seiteneffekt. Eigentlich geht es darum, dass Du Dir einen Wert in Einheit x anzeigen lassen kannst, obwohl der Wert in Einheit y im Item vorliegt, welches aus dem Channel mit Einheit z versorgt wurde.

Ja, es sollte automatisch (an allen Stellen...) die Default Einheit verwendet werden (solange man kein Pattern gesetzt hat).
Ich denke, das Problem ist hier, dass UoM in knx (noch) nicht vollständig eingebaut ist.

Normalerweise liefert ein Binding vollautomatisch Channel. Solche Channel bekommen dann vom Binding selbst auch Eigenschaften mit, unter anderem eben die zu verwendende Einheit.
Bei Bindings, in denen man den Channel selbst definiert, muss man gewöhnlich die Unit händisch setzen (z.B. http Binding oder mqtt Binding) - das ist dort nicht weiter ungewöhnlich, wird die Einheit doch nicht mitgeliefert, woher sollte openHAB diese also kennen...
Bei knx ist es aber so, dass es teilweise möglich ist, die Unit direkt aus dem DPT zu ermitteln (aber ganz wichtig... teilweise...)
Und da wird vermutlich der Parameter Unit nicht korrekt gesetzt.

Wie gesagt, ich denke, das ist ein Fehler, aber ein komischer, weil er an einigen Stellen Auswirkungen hat, an anderen aber nicht. In der Itemliste werden mir die Items mit Einheit angezeigt, obwohl kein Pattern gesetzt ist.

Der Unit Parameter im Item ist aber unbedingt anzugeben (auch wenn man den bei leerem Feld auch auf einen default Wert abhängig vom UoM Typ setzen könnte) der Parameter bestimmt, wie die Daten in der Persistence gespeichert werden (dort ausschließlich ohne Einheit!)
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Heiderdaus
Beiträge: 8
Registriert: 11. Feb 2020 19:19
Answers: 0

Re: UoM - Hager KNX Energiezähler in OH4 einbinden

Beitrag von Heiderdaus »

Danke für die Info und die Hilfe.

Dann werde ich die Units überall klar definieren, auch wenn es die Standardeinheiten sind. Sicher ist sicher.

Und was das komische verhalten hier betrifft, da behelfe ich mir erst mal mit State descriptions.

Antworten