Temperatur Netatmo auf KNX Bus schreiben

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

SaschaQ
Beiträge: 202
Registriert: 2. Mär 2020 13:50
Answers: 0

Temperatur Netatmo auf KNX Bus schreiben

Beitrag von SaschaQ »

Hallo zusammen,

ich möchte gerne den Temperaturwert meiner Netatmo Wetterstation auf einen KNX GA schreiben.

Folgendermaßen ist die aktuelle Konfiguration:

Things:

Code: Alles auswählen


Type number-control        : th_au_ws_terrasse_isttemp   "Außentemperatur Ist Temperatur Terrasse" [ ga="9.001:X/X/XX" ]

Items:

Code: Alles auswählen


Number au_wetterstation_netatmo_temperatur     "Temperatur [%.1f °C]" <temperature>  (gWetterstationNetatmo)  { channel="netatmo:outdoor:XXXXXXXXXXXXXXXXXXXXX:temperature#value",channel="knx:device:bridge:generic:th_au_ws_terrasse_isttemp"}

Ich bekomme im OH Log immer den folgenden Fehler:

Code: Alles auswählen


2022-09-15 09:40:56.032 [INFO ] [g.knx.internal.dpt.KNXCoreTypeMapper] - Translator couldn't parse data for datapoint type '9.001' (KNXIllegalArgumentException).

2022-09-15 09:40:56.033 [WARN ] [.internal.handler.DeviceThingHandler] - Ignoring KNX bus data: couldn't transform to any Type (destination='X/X/XX', datapoint='command DP X/X/XX 'knx:device:bridge:generic', DPT 9.001, low priority', data='0x00')


Jemand eine Idee?

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

Re: Temperatur Netatmo auf KNX Bus schreiben

Beitrag von udo1toni »

Wie liefert Netatmo die Temperatur an? Ist das tatsächlich eine einfache (ohne Einheit) Zahl? Oder hast Du einfach einen UoM Channel mit einem nicht-UoM-Item gekoppelt? Das wird nicht funktionieren.
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

SaschaQ
Beiträge: 202
Registriert: 2. Mär 2020 13:50
Answers: 0

Re: Temperatur Netatmo auf KNX Bus schreiben

Beitrag von SaschaQ »

AH okay, das war mein Fehler. Danke Dir.

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

Re: Temperatur Netatmo auf KNX Bus schreiben

Beitrag von udo1toni »

:D
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

SaschaQ
Beiträge: 202
Registriert: 2. Mär 2020 13:50
Answers: 0

Re: Temperatur Netatmo auf KNX Bus schreiben

Beitrag von SaschaQ »

Ich habe aber noch eine ähnliche Frage.

Ich möchte auch den Batterieladezustand meiner PV Batterie auf den Bus bringen. Ich bekomme in den Logs keine Fehler sehe aber das sich der Batterieladezustand im Log aktualisiert und seinen Wert ändert:

Code: Alles auswählen


2022-09-15 15:08:52.632 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'solaranlage_DEVICE_LOCAL_BATTERY_STATE_OF_CHARGE' changed from 5 % to 6 %

Mein ITEM:

Code: Alles auswählen


Number:Dimensionless          solaranlage_DEVICE_LOCAL_BATTERY_STATE_OF_CHARGE "Aktueller Ladezustand des Akkus"          <batterylevel> (gSolaranlage) { channel="kostalinverter:XXXXXX:deviceLocalBatteryStageOfCharge",channel="knx:device:bridge:generic:th_au_pv_ladezustand_batterie"}

THING:

Code: Alles auswählen


Type number-control        : th_au_pv_ladezustand_batterie   "Ladezustand Batterie" [ ga="5.001:X/X/X" ]


Auf dem Bus sehe ich aber nicht, dass der Zustand geschrieben wird.

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

Re: Temperatur Netatmo auf KNX Bus schreiben

Beitrag von udo1toni »

Ja, gleiches Problem, UoM. Soweit ich das verstanden habe, ist das tatsächlich in Arbeit, ich habe aber bisher nicht mitbekommen, dass es auch schon in den aktuellen Snapshots ist. Im Zweifel wirst Du es nur indirekt erledigen können - also mit einer kleinen Rule, die auch nichts anderes macht, als die Zahl von einem Item ins andere Item zu schreiben.
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

SaschaQ
Beiträge: 202
Registriert: 2. Mär 2020 13:50
Answers: 0

Re: Temperatur Netatmo auf KNX Bus schreiben

Beitrag von SaschaQ »

Bei Number:Energy (Leistung der PV und Hausverbrauch) und wie oben beschrieben Number:Temperature funktioniert es nur aktuell bei dem Batterieladezustand (Number:Dimensionless) nicht. Welche Ansatz hättest du denn um das umzuwandeln? Habe das noch nicht gemacht.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Zuletzt geändert von SaschaQ am 16. Sep 2022 10:02, insgesamt 1-mal geändert.

SaschaQ
Beiträge: 202
Registriert: 2. Mär 2020 13:50
Answers: 0

Re: Temperatur Netatmo auf KNX Bus schreiben

Beitrag von SaschaQ »

3.JPG
4.JPG
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

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

Re: Temperatur Netatmo auf KNX Bus schreiben

Beitrag von udo1toni »

Na, Du legst ein Number Item (ohne :Dimensionless) an, welches Du mit dem knx number-control Channel verlinkst, an den der Prozentwert gemeldet werden soll.
Und dann eine Winz-Rule:

Code: Alles auswählen

rule "update knx"
when
    Item MyPercentItem changed  // Das Item vom Typ Number:Dimensionless
then
    if(newState instanceof Number)
        MyknxItem.postUpdate((newState as Number).intValue)
end
Die Abfrage ist wichtig, weil das Item ja durchaus auc heinen ungültigen Wert enthalten könnte (NULL oder UNDEV) und wir wollen ja keine Fehler im log.
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

SaschaQ
Beiträge: 202
Registriert: 2. Mär 2020 13:50
Answers: 0

Re: Temperatur Netatmo auf KNX Bus schreiben

Beitrag von SaschaQ »

Danke dir, das habe ich jetzt so gemacht und ich sehe auch im Log:

Code: Alles auswählen

2022-09-18 11:27:54.417 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'solaranlage_DEVICE_LOCAL_BATTERY_STATE_OF_CHARGE' changed from NULL to 6 %

2022-09-18 11:27:57.505 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'solaranlage_DEVICE_LOCAL_BATTERY_STATE_OF_CHARGE_KNX' changed from NULL to 6

Der Wert kommt aber nicht auf dem Bus an, habe Openhab neu gestartet und auch Cache geleert. Im ETS Monitor sehe ich nichts.

Code: Alles auswählen

Thing:

Type number-control        : th_au_pv_ladezustand_batterie   "Ladezustand Batterie" [ ga="5.001:X/X/X" ]

Items:

Code: Alles auswählen


Number         solaranlage_DEVICE_LOCAL_BATTERY_STATE_OF_CHARGE_KNX "Aktueller Ladezustand des Akkus"          <batterylevel>  {channel="knx:device:bridge:generic:th_au_pv_ladezustand_batterie"}

Number:Dimensionless          solaranlage_DEVICE_LOCAL_BATTERY_STATE_OF_CHARGE "Aktueller Ladezustand des Akkus"          <batterylevel> (gSolaranlage) { channel="kostalinverter:XXXXXXXX:deviceLocalBatteryStageOfCharge"}


Rule:

Code: Alles auswählen


rule "Batteriestatus KNX"
when
    Item solaranlage_DEVICE_LOCAL_BATTERY_STATE_OF_CHARGE changed  
then
    if(newState instanceof Number)
        solaranlage_DEVICE_LOCAL_BATTERY_STATE_OF_CHARGE_KNX.postUpdate((newState as Number).intValue)
end



Antworten