Hichi IR Wifi mqtt Werte auslesen

Die alternative Firmware für ESP8266 based devices

Moderatoren: seppy, udo1toni

Antworten
schultzi007
Beiträge: 12
Registriert: 28. Apr 2021 10:43

Re: Hichi IR Wifi mqtt Werte auslesen

Beitrag von schultzi007 »

Oh, da habe ich mich falsch ausgedrückt - sorry.
Der Tasmota Hichi läuft und ich sehe auch die Werte über das Webinterface und auch im MQTT-Explorer.
In OH3 läuft der MQTT-Broker und auch das Think vom Tasmota ist "online".
In der Tasmota-Console sehe ich den mqtt string:

Code: Alles auswählen

09:28:56.762 MQT: tele/tasmota_E3A268/SENSOR = {"Time":"2022-10-31T09:28:56","Haus ":{"total_in":2948.718,"total_out":15252.411,"Power_curr":-1842}}
Über einen Link soll das Item den momentanen Strom verbrauch uns 2 andere Items die Zählerstände darstellen
Anzeigewert ist bei allen aber NULL.

Der Channel-MQTT State Topic ist

Code: Alles auswählen

tele/tasmota_E3A268/SENSOR
Der Channel-MQTT Command Topic ist ebenfalls

Code: Alles auswählen

tele/tasmota_E3A268/SENSOR
Die JSON Transformation ist :

Code: Alles auswählen

JSONPATH:$.Haus.Power_curr
Irgendwas scheint da vielleicht falsch zu sein ?!

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

Re: Hichi IR Wifi mqtt Werte auslesen

Beitrag von udo1toni »

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:

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
Nun hast Du das gesamte JSON Objekt in einem String und kannst Items zu diesem Channel hinzufügen.

Vorschag hierzu:

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"]}
Leider gibt es keine Code-Anzeige für Items, deshalb muss ich hier auf das Format der *.items Dateien zurück greifen.
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 ;)
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

schultzi007
Beiträge: 12
Registriert: 28. Apr 2021 10:43

Re: Hichi IR Wifi mqtt Werte auslesen

Beitrag von schultzi007 »

Hallo Udo1Toni,
das Ganze ist jetzt so umgesetzt wie vorgeschlagen; und es läuft :D
Das Leerzeichen hinter "Haus" hatte sich wohl so eingeschlichen.
Es ist mein erstes MQTT-Objekt, wird aber sicher nicht das letzte( da jetzt der Broker endlich läuft).
Der Wasserzähler und Ölstandanzeige soll auch noch dazu kommen.
Auf jeden Fall bekommt man hier einen super Support!!
Vielen Dank !!

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

Re: Hichi IR Wifi mqtt Werte auslesen

Beitrag von udo1toni »

Immer gerne. Viel Spaß beim Basteln :)
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

sebiLBO
Beiträge: 22
Registriert: 17. Jul 2022 21:06

Re: Hichi IR Wifi mqtt Werte auslesen

Beitrag von sebiLBO »

Hallo,

Vielen Dank für die Hilfe. Damit habe ich auch meinen Hichi ins Openhab integriert.
Ich habe aber noch ein Thema, wo ich nicht weiter komme.

Die Werte werden nur alle 5 Minuten aktualisiert.
(für die Zählerstände OK, aber der Momentanverbrauch könnte alle 10-30s aktualisiert werden)

Wo kann ich das ändern?

Danke Sebastian

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

Re: Hichi IR Wifi mqtt Werte auslesen

Beitrag von udo1toni »

Man kann das in Tasmota einstellen, da es sich um ein zyklisch gesendetes Topic handelt. Leider kann man es allerdings nur für das gesamte Gerät einstellen.

Der Befehl lautet TelePeriod, erlaubte Werte sind 0,1 und 10 bis 3000. Voreinstellung ist 300 (Sekunden), 0 schaltet das feature aus und 1 lädt den in der Firmware hinterlegten default Wert (der muss ja nicht zwingend 300 sein...)

Du kannst den Befehl (wie alle Befehle...) über mqtt senden (z.B. cmnd/<topic>/TelePeriod mit Payload 20) oder die Konsole verwenden, die über das Webfrontend des Tasmota Geräts bereitgestellt wird.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

frankh
Beiträge: 17
Registriert: 13. Apr 2022 09:26

Re: Hichi IR Wifi mqtt Werte auslesen

Beitrag von frankh »

Versuch es mal mit <precision>
https://forum.creationx.de/forum/index. ... #post40311

<precision> number of decimal places. Add 16 to transmit the data immediately. Otherwise it is transmitted on TelePeriod only.

bei mir habe ich den Wert im SML Script angepasst, so dass ich die aktuelle Grundlast jetzt pro Sekunde erhalte. Kommt aber vermutlich auf den Stromzähler an, da die SML Scripte entsprechend unterschiedlich sind

https://tasmota.github.io/docs/Smart-Me ... rax-3d-sml

hier ein Beispiel fuer meinen Zaehler

1,77070100100700ff@1,Current consumption,W,Power_curr,16

die 16 ist der Wert fuer Sekundentakt

sebiLBO
Beiträge: 22
Registriert: 17. Jul 2022 21:06

Re: Hichi IR Wifi mqtt Werte auslesen

Beitrag von sebiLBO »

Danke,

Precision 16 hat funktioniert.

Sebastian

int5749
Beiträge: 1161
Registriert: 4. Nov 2019 22:08
Answers: 9

Re: Hichi IR Wifi mqtt Werte auslesen

Beitrag von int5749 »

Guten Morgen zusammen,

Ich denke die weitere Diskussion zum auslesen meiner Energiezähler mittel der Hichi WiFi IR-Leseköpfe passt hier besser.

Einrichtung der Leseköpfe war problemlos und der Einbau inkl. Stromversorgung in der UV ebenso.
Der Tip mit der 16 zu unmittelbaren Übermittlung der aktuellen Werte hatte auch bei mir funktioniert, aber (es muß ja eines geben ;) )

Ich bekomme derzeit nicht die aktuellen Zählerstände per MQTT aktualisiert. Im WebUI der Leseköpfe sind diese angezeigt, aber nicht im MQTT Explorer.
Ich habe dann auch für diese Werte eine unmittelbare Übertragung eingestellt und vom Tele_Intervall entkoppelt, aber dies klappt derzeit nicht :(

Aktuelles Script

Code: Alles auswählen

>D
>B

=>sensor53 r
>M 1
+1,3,s,0,9600,
1,77070100010800ff@1000,Gesamtverbrauch,KWh,Total_in,16
1,77070100020800ff@1000,Gesamteinspeisung,KWh,Total_out,16
1,77070100100700ff@1,Verbrauch,W,Power_curr,16
#
Bei den Zählern handet es sich um EMH eHZM-W22E8-0LH00-D5-A5Q2

Viele Grüße
openHAB 4.1.0 Release mit openHABian in einem Debian Bookworm (LXC) unter Proxmox 8.1.3

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

Re: Hichi IR Wifi mqtt Werte auslesen

Beitrag von udo1toni »

Wenn die Werte in der Webansicht auftauchen, muss es sich um ein Problem in Tasmota handeln. Das gezeigte Script kümmert sich ja genau darum, die Werte in Tasmota "einzulesen", da muss also irgendwas mit der Übergabe in die Topics haken.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Antworten