Seite 1 von 4

[SOLVED] OH2.5 Tasmota GOSUND SP111 /SENSOR Daten in Sitemap anzeigen

Verfasst: 30. Okt 2022 13:54
von Boris099
Pi4b, OH2.5.12, JSONPATH ist installiert, das Tasmota device ist im Homeassistant mode (setoption19 1)

Hallo,
Ein Klima-Splitgerät habe ich an einem Tasmota Switch hängen und möchte ein paar der Sensor Werte in der Sitemap anzeigen.

mqtt.fx zeigt mir für die Sensorwerte folgendes:

Code: Alles auswählen

{"Time":"2022-10-30T13:37:56","ENERGY":{"TotalStartTime":"2020-03-20T17:28:40","Total":51.191,"Yesterday":0.455,"Today":0.021,"Period": 0,"Power": 1,"ApparentPower":14,"ReactivePower":14,"Factor":0.08,"Voltage":234,"Current":0.060}}
Wie bekomme ich nun z.B. "Yesterday" und "Power" in der Sitemap angezeigt?
In der Sitemap habe ich für das Gerät folgenden korrekten Eintrag für den Switch und auch schon mal einen "fehlerhaften" Eintrag für den Sensor erstellt, wie muß das denn richtig heißen?

Code: Alles auswählen

Switch Klima_Tobi {channel="mqtt:homeassistant_B9A7A0:583ffe5b:B9A7A0:B9A7A0_5FRL_5F1#switch"}
Number Klima_Tobi_Status {channel="mqtt:homeassistant_B9A7A0:583ffe5b:B9A7A0:B9A7A0_5Fstatus#sensor:JSONPATH($.ENERGY:Total"}
Kann mir bitte jemand helfen?

Re: OH2.5 Tasmota /SENSOR Daten in Sitemap anzeigen

Verfasst: 30. Okt 2022 15:35
von udo1toni
Aber gerne...

Erst mal: es gibt drei verschiedene Stellen, den Code durch JSONPATH zu manipulieren.

Die erste Stelle ist direkt an der Quelle, also im Channel. Keine Ahnung, ob man an der Stelle in die Konfiguration eingreifen kann, immerhin ist homeassistant ja Autodiscovery. Kannst Du den Code vom Thing mal zeigen?

Die zweite Stelle wäre in der Verbindung zwischen Channel und Item über ein Profile. Das setzt voraus, dass im Channel das vollständige JSON Objekt bereit liegt, was ´wiederum bedeutet, dass der Channel vom Typ String sein muss.
Ist das der Fall, kannst Du ein Number Item wie folgt koppeln:

Code: Alles auswählen

Number Klima_Tobi_Status {channel="mqtt:homeassistant_B9A7A0:583ffe5b:B9A7A0:B9A7A0_5Fstatus#sensor" [profile="transform:JSONPATH", function="$.ENERGY:Total"}
Wobei ich hier einfach mal vorausgesetzt habe, dass die UID des Channels stimmt (vermutlich eher nicht... zu viele Doppelpunkte) und der Channel #sensor auch ein String Channel ist, der das gesamte JSON Objekt ausgibt.

Die dritte Stelle setzt voraus, dass das gesamt JSON Objekt in einem String Item gespeichert ist. Dann kannst Du das JSONPATH Statement auch als Transformation im Label vornehmen (bzw. über die Metadaten in der State Description)

Re: OH2.5 Tasmota /SENSOR Daten in Sitemap anzeigen

Verfasst: 31. Okt 2022 07:06
von Boris099
So ich habe das mal in die ITEMS eingebaut, und ich denke das sieht doch schon gar nicht schlecht aus

Code: Alles auswählen

Number Klima_Tobi_Status {channel="mqtt:homeassistant_B9A7A0:583ffe5b:B9A7A0:B9A7A0_5Fstatus#sensor" [profile="transform:JSONPATH", function="$.ENERGY:Total"]}
bekomme dann die Antwort

Code: Alles auswählen

2022-10-31 06:44:46.544 [WARN ] [ofiles.JSonPathTransformationProfile] - Could not transform state '98' with function '$.ENERGY:Total' and format '%s'
In der Konsole sieht SENSOR wie folgt aus

Code: Alles auswählen

06:57:56.578 MQT: tele/E-TobiKlima45/SENSOR = {"Time":"2022-10-31T06:57:56","ENERGY":{"TotalStartTime":"2020-03-20T17:28:40","Total":51.216,"Yesterday":0.036,"Today":0.010,"Period": 0,"Power": 2,"ApparentPower":12,"ReactivePower":12,"Factor":0.13,"Voltage":229,"Current":0.054}}
und Thing und Channel in der PaperUI
thing.jpg
channel.jpg

in der SITEMAP habe ich folgenden Eintrag

Code: Alles auswählen

Text item=Klima_Tobi_Status label="Klima_Tobi_Status [%.3f V]"

Re: OH2.5 Tasmota /SENSOR Daten in Sitemap anzeigen

Verfasst: 31. Okt 2022 09:52
von udo1toni
Hmm. Also diese Meldung:

Code: Alles auswählen

2022-10-31 06:44:46.544 [WARN ] [ofiles.JSonPathTransformationProfile] - Could not transform state '98' with function '$.ENERGY:Total' and format '%s'
                                                                                             ^^^^^^^^^^
 
besagt, dass im Item nicht das JSON Objekt enthalten ist, sondern ein Wert (98).

Deine Screenshots scheinen nicht zueinander zu passen. Ist auf der Seite "Code" nichts eingetragen? Text würde im Zweifel die Konfiguration vollständig beschreiben.

Re: OH2.5 Tasmota /SENSOR Daten in Sitemap anzeigen

Verfasst: 31. Okt 2022 10:04
von Boris099
Aber wo holt er denn diese "98" her? Ist es evtl. nur dieses Format "%s" wo auch immer er das hochzieht, kann man evtl. ein passendes Format einfach mitgeben?

Re: OH2.5 Tasmota /SENSOR Daten in Sitemap anzeigen

Verfasst: 31. Okt 2022 13:45
von Boris099
Was meinst du mit der Seite "Code"
Wo finde ich diese?

Re: OH2.5 Tasmota /SENSOR Daten in Sitemap anzeigen

Verfasst: 31. Okt 2022 15:16
von Boris099
Also in mqtt.fx zeigt er das so unter

tele/E-TobiKlima45/SENSOR

Code: Alles auswählen

{
  "Time" : "2022-10-31T15:12:56",
  "ENERGY" : {
    "TotalStartTime" : "2020-03-20T17:28:40",
    "Total" : 51.808,
    "Yesterday" : 0.036,
    "Today" : 0.601,
    "Period" : 0,
    "Power" : 1,
    "ApparentPower" : 12,
    "ReactivePower" : 12,
    "Factor" : 0.11,
    "Voltage" : 232,
    "Current" : 0.051
  }
}

Re: OH2.5 Tasmota /SENSOR Daten in Sitemap anzeigen

Verfasst: 31. Okt 2022 17:13
von udo1toni
mqtt.fx ist an dieser Stelle uninteressant, da openHAB die Geräte je per Autokonfiguration einrichtet.

Die Seite "Code" ist die rechte, wenn Du das Thing anschaust. Links ist das Thing, in der Mitte die Channels und rechts die Code Ansicht.

Re: OH2.5 Tasmota /SENSOR Daten in Sitemap anzeigen

Verfasst: 31. Okt 2022 17:36
von Boris099
Ich weiß nicht wo du meinst, ich bin in OH2.5.12, wo soll ich das thing anschauen?

Re: OH2.5 Tasmota /SENSOR Daten in Sitemap anzeigen

Verfasst: 31. Okt 2022 17:39
von Boris099
Im Channel finde ich noch folgendes als Json Configuration

Code: Alles auswählen

{"name":"E-TobiKlima45 status","stat_t":"tele/E-TobiKlima45/HASS_STATE","avty_t":"tele/E-TobiKlima45/LWT","pl_avail":"Online","pl_not_avail":"Offline","json_attr_t":"tele/E-TobiKlima45/HASS_STATE","unit_of_meas":"%","val_tpl":"{{value_json['RSSI']}}","ic":"mdi:information-outline","uniq_id":"B9A7A0_status","dev":{"ids":["B9A7A0"],"name":"E-TobiKlima45","mdl":"Gosund SP111 V","sw":"11.0.0(tasmota)","mf":"Tasmota"}}