Also ist der gespeicherte Wert um den Faktor 1000 zu klein.
Oder auch nicht.
Wie exakt ist Dein Channel definiert (bitte Code-Ansicht)?
Wie exakt ist das Item definiert (Number oder Number:Power)?
Also ist der gespeicherte Wert um den Faktor 1000 zu klein.
Hallo Udo,udo1toni hat geschrieben: ↑31. Okt 2022 10:48 Ja, das ist falsch
Punkt eins: MQTT benötigt immer und ausnahmslos zwei unterschiedliche Topics, falls auf einem Channel sowohl gesendet als auch empfangen wird, stateTopic und commandTopic sind niemals gleich gesetzt.
Punkt zwei: Mag ja sein, dass Tasmota hier noch die Möglichkeit bietet, Befehle anzunehmen, nötig ist das aber sicher nicht. Also lass bitte das commandTopic im Zweifel komplett leer.
Punkt drei: Da das Topic drei Informationen überträgt, die Du alle haben willst (und eine vierte, auf die Du eventuell verzichten kannst, die aber auch interessant sein kann), wäre es sinnvoll, den Channel mehrfach zu verlinken. dazu muss die stateTransformation leer bleiben und der Channel muss von Typ String sein. Codeansicht:Nun hast Du das gesamte JSON Objekt in einem String und kannst Items zu diesem Channel hinzufügen.Code: Alles auswählen
UID: mqtt:topic:mosquitto:hichi label: Anbindung Stromzähler thingTypeUID: mqtt:topic configuration: {} bridgeUID: mqtt:broker:mosquitto channels: - id: json channelTypeUID: mqtt:string label: JSON Objekt description: "" configuration: stateTopic: tele/tasmota_E3A268/SENSOR
Vorschag hierzu:Leider gibt es keine Code-Anzeige für Items, deshalb muss ich hier auf das Format der *.items Dateien zurück greifen.Code: Alles auswählen
Number hichi_in "Bezug" {channel="mqtt:topic:mosquitto:hichi"[profile="transform:JSONPATH", function="$.['Haus'].total_in"]} Number hichi_out "Einspeisung" {channel="mqtt:topic:mosquitto:hichi"[profile="transform:JSONPATH", function="$.['Haus'].total_out"]} Number hichi_power "aktuelle Leistung" {channel="mqtt:topic:mosquitto:hichi"[profile="transform:JSONPATH", function="$.['Haus'].Power_curr"]} DateTime hichi_date "Messung von" {channel="mqtt:topic:mosquitto:hichi"[profile="transform:JSONPATH", function="$.Time"]}
Ich habe hier auf das Semantic Model verzichtet, weil es für die Funktion irrelevant ist.
Die Konfiguraiton habe ich bei mir getestet, sieht dann so aus:
Screenshot 2022-10-31 104755.png
Die wichtigsten Punkte: Dein JSONPATH Ausdruck stimmt nicht. Und die JSONPATH Transformation gehört hier in den Link zwischen Channel und Item, das ist effizienter.
Achso... Warum muss der JSONPATH Ausdruck so komisch aussehen? Weil hinter dem Wort "Haus" noch ein Leerzeichen folgt. Vermutlich kannst Du das in Tasmota konfigurieren, dann wäre es das einfachste, das Leerzeichen zu entfernen, dann funktioniert auch der "normale" JSONPATH $.Haus.total_in usw. Das ist aber nur ein Detail
Hardware:
Code: Alles auswählen
Bridge mqtt:broker:mosquitto "Mosquitto" [
host="...",
... und so weiter
] {
Thing topic hichi "Anbindung Stromzähler" [
] {
Channels:
Type string : json "JSON Objekt" [ stateTopic="tele/tasmota_E3A268/SENSOR" ]
}
}
Code: Alles auswählen
Bridge mqtt:broker:3448a27a [ host="localhost", secure=false ]
{
Thing topic hitchi "hitchi" @ "DWS7612" [availabilityTopic="tele/tasmota_8E881A/LWT", payloadAvailable="Online", payloadNotAvailable="Offline"]
{
Channels:
Type string : json "JSON Objekt" [ stateTopic="tele/tasmota_8E881A/SENSOR" ]
}
}
Code: Alles auswählen
Group hitchi
Group ghitchiStats
Number hitchi_in "Bezug" (hitchi) {channel="mqtt:topic:3448a27a:hitchi:json"[profile="transform:JSONPATH", function="$.['DWS7612'].total_in"]}
Number hitchi_out "Einspeisung" (hitchi) {channel="mqtt:topic:3448a27a:hitchi:json"[profile="transform:JSONPATH", function="$.['DWS7612'].total_out"]}
Number hitchi_power "aktuelle Leistung" (hitchi,ghitchiStats) {channel="mqtt:topic:3448a27a:hitchi:json"[profile="transform:JSONPATH", function="$.['DWS7612'].Power_curr"]}
Number hitchi_amp_L1 "Strom L1" (hitchi) {channel="mqtt:topic:3448a27a:hitchi:json"[profile="transform:JSONPATH", function="$.['DWS7612'].Amp_L1_curr"]}
Number hitchi_amp_L2 "Strom L2" (hitchi) {channel="mqtt:topic:3448a27a:hitchi:json"[profile="transform:JSONPATH", function="$.['DWS7612'].Amp_L2_curr"]}
Number hitchi_amp_L3 "Strom L3" (hitchi) {channel="mqtt:topic:3448a27a:hitchi:json"[profile="transform:JSONPATH", function="$.['DWS7612'].Amp_L3_curr"]}
DateTime hitchi_date "Messung von" (hitchi) {channel="mqtt:topic:3448a27a:hitchi:json"[profile="transform:JSONPATH", function="$.Time"]}
Code: Alles auswählen
{
"Time": "2023-05-27T21:51:46",
"DWS7612": {
"total_in": 8,
"total_out": 0,
"Power_curr": 0,
"Amp_L1_curr": 0,
"Amp_L2_curr": 0,
"Amp_L3_curr": 0
}
}
Sorry für die späte Antwort.
Ich sag's ja nur ungern, aber eventuell... stehen Profiles in der Form unter OH2.4 noch nicht zur Verfügung...
Code: Alles auswählen
Bridge mqtt:broker:3448a27a [ host="localhost", secure=false ]
{
// hitchi Lesekopf @ DWS7612 Zähler
Thing topic hitchi "hitchi" @ "DWS7612" {
Channels:
Type number : hitchi_in "Bezug" [ stateTopic="tele/tasmota_8E881A/SENSOR", transformationPattern="JSONPATH:$.DWS7612.total_in" ]
Type number : hitchi_out "Einspeisung" [ stateTopic="tele/tasmota_8E881A/SENSOR", transformationPattern="JSONPATH:$.DWS7612.total_out" ]
Type number : hitchi_power "aktuelle Leistung" [ stateTopic="tele/tasmota_8E881A/SENSOR", transformationPattern="JSONPATH:$.DWS7612.Power_curr" ]
Type number : hitchi_amp_L1 "Strom L1" [ stateTopic="tele/tasmota_8E881A/SENSOR", transformationPattern="JSONPATH:$.DWS7612.Amp_L1_curr" ]
Type number : hitchi_amp_L2 "Strom L2" [ stateTopic="tele/tasmota_8E881A/SENSOR", transformationPattern="JSONPATH:$.DWS7612.Amp_L2_curr" ]
Type number : hitchi_amp_L3 "Strom L3" [ stateTopic="tele/tasmota_8E881A/SENSOR", transformationPattern="JSONPATH:$.DWS7612.Amp_L3_curr" ]
Type datetime : hitchi_date "Messung von" [ stateTopic="tele/tasmota_8E881A/SENSOR", transformationPattern="JSONPATH:$.Time" ]
Type string : reachable "Erreichbarkeit" [ stateTopic="tele/tasmota_8E881A/LWT"]
}
}
Code: Alles auswählen
Group hitchi
Group ghitchiStats
Number hitchi_in "Bezug [%.3f kWh]" <energy> (hitchi) {channel="mqtt:topic:3448a27a:hitchi:hitchi_in"}
Number hitchi_out "Einspeisung [%.3f kWh]" <energy> (hitchi) {channel="mqtt:topic:3448a27a:hitchi:hitchi_out"}
Number hitchi_power "aktuelle Leistung [%.1f W]" <energy> (hitchi,ghitchiStats) {channel="mqtt:topic:3448a27a:hitchi:hitchi_power"}
Number hitchi_amp_L1 "Strom L1 [%.3f A]" <energy> (hitchi) {channel="mqtt:topic:3448a27a:hitchi:hitchi_amp_L1"}
Number hitchi_amp_L2 "Strom L2 [%.3f A]" <energy> (hitchi) {channel="mqtt:topic:3448a27a:hitchi:hitchi_amp_L2"}
Number hitchi_amp_L3 "Strom L3 [%.3f A]" <energy> (hitchi) {channel="mqtt:topic:3448a27a:hitchi:hitchi_amp_L3"}
DateTime hitchi_date "Messung von [%1$ta, %1$td.%1$tm.%1$ty, %1$tH:%1$tM Uhr]" (hitchi) {channel="mqtt:topic:3448a27a:hitchi:hitchi_date"}
String reachable "Erreichbarkeit" <network> (hitchi) {channel="mqtt:topic:3448a27a:hitchi:reachable"}