NOUS A1T in OH4 einbinden

Die alternative Firmware für ESP8266 based devices

Moderatoren: seppy, udo1toni

pbpromotion
Beiträge: 28
Registriert: 4. Sep 2023 21:30
Answers: 0

NOUS A1T in OH4 einbinden

Beitrag von pbpromotion »

Hallo zusammen,


ich verzweifel direkt am nächsten Teil.

Ich versuche die Werte von einer NOUS A1T Steckdose auszulesen. Leider bekomme ich immer nur NULL angezeigt.
nous1at.JPG
hier ist mal ein Beispiel Channel
energy.JPG
und so sieht es im Model aus.
klima.JPG

Wo ist mein Fehler?
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

pbpromotion
Beiträge: 28
Registriert: 4. Sep 2023 21:30
Answers: 0

Re: NOUS A1T in OH4 einbinden

Beitrag von pbpromotion »

Hier ist die tasmota Steckdose
tasmota_steckdose.JPG
und hier die mqtt einstellungen der Steckdose.
mqtt_einstellungen.JPG

was mache ich falsch?
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

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

Re: NOUS A1T in OH4 einbinden

Beitrag von udo1toni »

:) Das Erste, was Du falsch machst, ist, Bilder zu posten. ;)
Zum Zweiten offensichtlichen Fehler: Du hast das Full Topic geändert, ohne zu verstehen, wie Tasmota funktioniert.
Das Full Topic MUSS den Platzhalter %prefix% enthalten (zumindest, wenn Du möchtest, dass mqtt korrekt mit allen Funktionen zur Verfügung steht)
Das Full Topic sollte niemals mit einem / beginnen (auch wenn mqtt das nicht aktiv verhindert, so ist es dennoch nicht der "korrekte" Weg, mqtt zu nutzen). Allerdings sollte das Full Topic unbedingt mit einem / enden.
Nutze also stattdessen z.B. home/wohnzimmer/%topic%/%prefix%/ als Full Topic, das wäre die saubere Variante.

Wichtig an dieser Stelle:
%prefix% hat drei verschiedene werte, cmnd, stat und tele. alle drei Topics werden aktiv von Tasmota verwendet, auf cmnd "hört" Tasmota auf Befehle, auf stat sendet Tasmota Zustände (und die Bestätigung von empfangenen Befehlen) und auf tele werden periodische Daten gesendet. Mit aktuellen Tasmota Versionen wird ein Teil des prefixes zwangsweise ins Full Topic integriert, aber das ist nicht die saubere Konfiguration...

Weiterhin gibt es in Tasmota Group Topics (die lassen sich nur über passende Befehle setzen, über die Shell, http oder auch über mqtt). Über das Group Topic kannst Du bequem z.B. die Firmware für alle Devices auf einen Schlag updaten oder auch diverse Einstellungen auf allen Devices identisch setzen (Time Server, Time Zone, OTA Server usw.), dieses Group Topic arbeitet am Full Topic vorbei und nutzt logischerweise nur cmnd als Prefix.

Das tasmota Topic startet (ganz wie in den mqtt Richtlinien definiert) NICHT mit einem / (siehe oben...) weshalb das Topic in openHAB auch nicht korrekt ist. Aber das Topic ist ohnehin nicht gut, denn es handelt sich hier ja um das autodiscovery Topic. Nutze ENTWEDER die Autodiscovery ODER ein manuelles Setup, mische die beiden keinesfalls, das führt nur zu endlosen Problemen.
Wenn Du das Full Topic korrekt gesetzt hast (z.B. so wie oben gezeigt) taucht das Device entsprechend im MQTT Explorer im Baum auf (in 192.168.178.86/home/wohnzimmer/, nicht in 192.168.178.86//home/wohnzimmer/) und es wird automatisch mit zwei der drei Prefix Topics auftauchen, nach spätestens 5 Minuten wird es die Topic stat und tele geben. cmnd taucht auf, sobald Du einen Befehl an das Device schickst und damit cmnd nutzt

Tipp am Rande: Du kannst das Topic direkt aus dem MQTT Explorer kopieren (genau wie die Payload jedes beliebigen Topics, was die Analyse von JSON angenehmer machen kann, um den korrekten JSONPATH zu ermitteln)

Wenn Du openHAB4 verwendest, achte auch darauf, in den Metadaten der QuantityType Items (Number:irgendwas) unbedingt unit passend zu setzen. Der Parameter bestimmt, in welcher Einheit der Wert im Item gespeichert wird, das hat Auswirkungen auf die Persistence. Die Anzeige wird hingegen über das State Description Pattern (ebenfalls Metadaten) gesetzt. Das Pattern kann man jederzeit anpassen, die Item Unit muss (nachdem sie mal korrekt gesetzt ist) in Ruhe gelassen werden, da sonst die Persistence durcheinander geraten wird.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Benutzeravatar
peter-pan
Beiträge: 2573
Registriert: 28. Nov 2018 12:03
Answers: 25
Wohnort: Schwäbisch Gmünd

Re: NOUS A1T in OH4 einbinden

Beitrag von peter-pan »

Udo hat das ja schon erläutert, was falsch in deinem Setting ist. Mir ist noch aufgefallen, das du eine Portadresse (32779) im Setting deiner Steckdose benutzt, die eigentlich nicht "Standard" (1883) ist.
Ausserdem hast du einmal die Hostadresse "192.168.178.84" im MQTT-Setting deiner Steckdose stehen, aber im MQTT-Explorer ist die Host-Adresse "192.168.178.86".

Das passt auch irgendwie nicht zusammen.
Ich hab das so gelöst:
gosund_muster.jpg
Vielleicht hilft dir das auch ein bisschen weiter.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.1.2 openhabian

pbpromotion
Beiträge: 28
Registriert: 4. Sep 2023 21:30
Answers: 0

Re: NOUS A1T in OH4 einbinden

Beitrag von pbpromotion »

peter-pan hat geschrieben: 17. Sep 2023 15:16 Udo hat das ja schon erläutert, was falsch in deinem Setting ist. Mir ist noch aufgefallen, das du eine Portadresse (32779) im Setting deiner Steckdose benutzt, die eigentlich nicht "Standard" (1883) ist.
Ausserdem hast du einmal die Hostadresse "192.168.178.84" im MQTT-Setting deiner Steckdose stehen, aber im MQTT-Explorer ist die Host-Adresse "192.168.178.86".

Das passt auch irgendwie nicht zusammen.
Ich hab das so gelöst:
gosund_muster.jpg

Vielleicht hilft dir das auch ein bisschen weiter.
Das war noch ein Fehler und da hab ich wohl vergessen den MQTT Server auszutauschen. Ist jetzt geändert.


@udo1toni, vielen Dank schon mal für deine Hilfe.

Das mit den Topics habe ich aus einem Youtube Tutorial, aber ok jetzt weiss ich dass es falsch ist.

PS: Warum darf/soll man keine Bilder posten?
Darauf erkennt man doch die Fehler einfacher oder nicht?

Habe jetzt alle meine MQTT Topics angepasst.

Demnach müsste die Einstellung wie folgt sein.

MQTT State Topic:
home/wohnzimmer/steckdose_wohnzimmer_klima/tele/SENSOR

und Incoming Value Transformations:
JSONPATH:$.ENERGY.Total

und als Unit kwh.

Oder ist da wieder was falsch? Weil so bekomme ich weiterhin nichts ausgegeben. Bei einem anderen Channel hab ich noch folgendes drinstehen gehabt

MQTT State Topic:
/home/wohnzimmer/steckdose_wohnzimmer_klima/SENSOR

und hier wird mir was angezeigt.

Das dürfte ja eigentlich nicht sein oder?

Mein Fulltopic der Steckdose sieht so aus.
home/wohnzimmer/%topic%/%prefix%/


mfg

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

Re: NOUS A1T in OH4 einbinden

Beitrag von udo1toni »

pbpromotion hat geschrieben: 18. Sep 2023 22:14Warum darf/soll man keine Bilder posten?
Soll... dürfen darfst Du schon, es ist halt Datenmüll, der komplett unnötig ist.
Für Things gibt es die Code Ansicht, die im Zweifel wesentlich besser lesbar ist. Außerdem bietet Text den großen Vorteil, dass man zum Helfen nicht alle Worte abtippen muss. Und auch die Texterkennung in den PowerToys funktioniert nicht immer zu 100% zuverlässig.

Im Fall von Tasmota hat es natürlich geholfen, das Bild zu haben, weil Du mit hoher Wahrscheinlichkeit nur einen Teil der Infos gezeigt hättest :) aber im Zweifel bekommt man das per Nachfragen raus.

Hast Du nach dem Ändern des Full Topic das Gerät neu gestartet? Siehst Du im MQTT Explorer das Gerät unter dem neuen Topic?
Das alte Topic kann evtl. über Retain gespeichert worden sein, das wirst Du am einfachsten los, indem Du den passenden Teil des Baums links anklickst und dann rechts oben den Papierkorb anklickst. Wenn es sehr viele Unterverzeichnisse gibt (wie bei Dir) kann es durchaus sein, dass Du den Zweig mehrfach in den Papierkorb befördern musst.
Du könntest auch Tabula Rasa machen, indem Du mosquitto anhältst und anschließend das "Gedächtnis" von mosquitto löschst (der Pfad zur Datei sollte in /etc/mosquitto.conf hinterlegt sein - evtl. wird hier aber auch einfach ein Standardpfad genutzt, da müsste ich aber auch erst nachschauen, wie der lautet...). Nachdem Du die betreffende Datei gelöscht hast, kannst Du mosquitto wieder neu starten und alle werte, die als Retain gehalten wurden, sollten verschwunden sein.
Das Löschen über den MQTT Explorer ist aber die bequemere Variante, auch wenn Du da im Zweifel mehrfach Löschen musst.

Natürlich muss überall der selbe Broker hinterlegt sein und User und Passwort müssen im Zweifel ebenfalls korrekt gesetzt sein.

Achte bei der unit unbedingt auf die korrekte Schreibweise. es ist kWh, nicht kwh. Ist JSONPATH installiert (wird gerne mal übersehen)?
Für Debugging kannst Du einfach einen String Channel mit dem selben stateTopic anlegen und ohne weitere Transformation mit einem String Item verknüpfen, so kannst Du direkt sehen, ob (und wenn ja, welche) Daten ankommen.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

pbpromotion
Beiträge: 28
Registriert: 4. Sep 2023 21:30
Answers: 0

Re: NOUS A1T in OH4 einbinden

Beitrag von pbpromotion »

udo1toni hat geschrieben: 18. Sep 2023 23:57 Achte bei der unit unbedingt auf die korrekte Schreibweise. es ist kWh, nicht kwh. Ist JSONPATH installiert (wird gerne mal übersehen)?
Für Debugging kannst Du einfach einen String Channel mit dem selben stateTopic anlegen und ohne weitere Transformation mit einem String Item verknüpfen, so kannst Du direkt sehen, ob (und wenn ja, welche) Daten ankommen.
Ja ist korrekt eingetragen, war nur zu faul beim abtippen das W gross zu schreiben ;) JSON ist auch installiert, nach dem ich im Thread bezüglich meiner Sensoren darauf hingewiesen wurde.

Das im MQTT Explorer hab ich genau so gemacht wie beschrieben mit dem Mülleimer, die fehlerhaften Einträge sind hoffentlich alle weg.
Die Geräte starten alle neu, nach der ändern der MQTT Einstellungen, zumindest haben Sie angezeigt dass Sie neustarten.

Heut Abend schau ich mal ob ich Werte bekomme durch den String.



PS: Was wäre denn die "schönste" Darstellung eines Dashboard auf einem Tablet um alle Geräte zu steuern? Irgendeine UI oder HABPanel?


mfg

pbpromotion
Beiträge: 28
Registriert: 4. Sep 2023 21:30
Answers: 0

Re: NOUS A1T in OH4 einbinden

Beitrag von pbpromotion »

also das debug hat geklappt.

Code: Alles auswählen

{"Time":"2023-09-19T19:01:31","ENERGY":{"TotalStartTime":"2023-09-07T21:40:19","Total":27.815,"Yesterday":0.016,"Today":0.000,"Period":0,"Power":1,"ApparentPower":4,"ReactivePower":4,"Factor":0.20,"Voltage":305,"Current":0.013}}
als State Topic hab ich folgendes genutzt

Code: Alles auswählen

home/wohnzimmer/steckdose_wohnzimmer_klima/tele/SENSOR

Danke schonmal für deine Hilfe.

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

Re: NOUS A1T in OH4 einbinden

Beitrag von udo1toni »

Ja, prima, lesefreundlich formatiert sieht das so aus:

Code: Alles auswählen

{
   "Time": "2023-09-19T19:01:31",
   "ENERGY": {
      "TotalStartTime": "2023-09-07T21:40:19",
      "Total": 27.815,
      "Yesterday": 0.016,
      "Today": 0.000,
      "Period": 0,
      "Power": 1,
      "ApparentPower": 4,
      "ReactivePower": 4,
      "Factor": 0.20,
      "Voltage": 305,
      "Current": 0.013
   }
}
JSONPATH:$.ENERGY.Total sollte also zu einem Wert 27.815 führen. Wenn unit auf kWh gesetzt ist und Du ein Number:Energy Item verknüpfst, sollte das Item dann 27,815 kWh anzeigen.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

pbpromotion
Beiträge: 28
Registriert: 4. Sep 2023 21:30
Answers: 0

Re: NOUS A1T in OH4 einbinden

Beitrag von pbpromotion »

Danke.

Wie gesagt habs mit deiner Hilfe hinbekommen.
Auch der Tipp mit dem Prefix beim MQTT hat viel geholfen. Das war nämlich immer falsch.

Antworten