Home Assistant MQTT discovery Modul?

Hallo zusammen,

ich würde mich sehr für eure Meinung zu dem Thema interessieren.
Hintergrund ist, dass ich mal wieder an meiner Heizung bastel und dafür das EMS-ESP32 nutze, über MQTT bekomme ich die Werte auch schnell und einfach in IPS aber um von dort etwas schalten zu können wird es schnell aufwändig. Daher habe ich überlegt mal ein Modul anzufangen und bin schnell auf das oben genannte Home Assistant MQTT discovery gestoßen. Nach etwas recherche habe ich festgestellt, dass dies von einigen sehr bekannten ( Zigbee2MQTT, ESPHome, Tasmota, Z-waveJS UI, ebusd,… ) Projekten unterstütz wird. Für einige davon gibt es auch entsprechende Module für IPS aber leider nicht für alle.
Gab es von einem von euch (vor allem den Modulentwicklern @KaiS @bumaas oder vielleicht sogar von zentraler Stelle @paresy) schon mal Ansätze oder Überlegungen ein Modul zu erstellen das dieses nutzt um quasi ein Universalmodul für alle die das HA MQTT discovery unterstützen direkt in IPS anlegen zu können? Es klingt sehr verlockend nur ein Modul pflegen zu müssen um damit ein ganzes Paket an gängigen Systemen anbinden zu können und es schein wohl auch von z.B. openHAB so gemacht zu werden. Wie sehr ihr das? Vorallem wo seht ihr die Probleme?

Danke für eure Meinung!

Viele Grüße
Rolf

3 „Gefällt mir“

Ich schaue mir das auch gerade an und überlege wie ich daraus ein Modul bauen könnte…
Gruß Dennis

2 „Gefällt mir“

Hallo Zusammen,
ich gehe etwas mehr in die Planung.
Es währe für mich sehr Hilfreich ein paar Config Payloads von euch und verschiedenen Geräten zu bekommen. Es gibt wohl auch im Homeassistant mehrere Definitionen bzw. Versionen des Discovery Modul.
Für mich währe es Hilfreich ein paar configs zu bekommen.
Wie kommt ihr daran. 1. Im Gerät muss natürlich die homeassistant Integration aktiviert werden und auf euren/einen MQTT Server geschaltet werden. Dann mit, z.B. dem Programm MQTT Explorer (Windows Store) sich mit dem MQTT Server verbinden und im Topic „homeassistant“ nach den publizierten Topics schauen.
image
unter homeassistant kommen erstmal die verschieden integrationsarten.
Darunter folgen dann meistens Geräte ID´s und darunter die einzelnen Möglichkeiten.
Zu jeder Möglichkeit gibt es dann das config Payload. Diese Payloads und das Topic benötige ich. Im Zweifel könnt ihr natürlich ID´s verfremden.
Ein Payload sieht dann ungefähr so aus:
image

Ich benötige natürlich das komplette Payload.

Wie gesagt würde mir sehr Helfen um nicht ewig Beta Fehler auszumerzen.

VG
Dennis

1 „Gefällt mir“

Hallo BlackOrca

bist Du hier schon weitergekommen?

Moin @wibo050447,
Ich war fleißig am recherchieren. Habe auch den python Code angeschaut von homeassistant repo.
Was mir etwas übel aufgekommen ist, sind die vielen optionalen geschichten. Der discovery contract ist sehr optional aufgebaut und auch die Möglichkeit entweder auf Abkürzungen und/oder vollständig beschriftete properties zu nutzen.
Das ist alles für die Geräte Seite super entspannt. Aber für die discovery Instanz, die sicherlich auch nicht an einem Tag definiert wurde, sehr herausfordernd.
Ich habe nach wie vor Bock darauf uns lasse, wo es geht, auch bei meinen Geräten das homeassistant discovery laufen um verschiedene Arten zu sehen.
Viele sind recht unspektakulär und straight forward (z. B. Ai on Edge) und andere wiederum (z. B. Linktap) sind schon recht speziell.
Es gibt leider auch keine konkrete Auflistung aller „Profile“ die da kommen können.
Leider habe ich auch keinerlei Beispiel Payload hier im forum bekommen.
Ich möchte halt vermeiden das es wie beim Z2M Modul für fast jedes Gerät das Modul erweitert werden muss. Das wäre ja genau nicht das was das discovery bewirken soll. Universalität.
Ich bleibe weiter am Ball aber noch habe nicht begonnen zu code. Habe aber jetzt durch mein LinkTap und BLE-YC01 Modul schon mal Erfahrungen mit MQTT in Modulen gesammelt.

Gruß BlackOrca

2 „Gefällt mir“

Heyho,

ich habe z.B. meine Klimaanlagen in HA integriert, in IPS mangels wissen aber leider nicht und liefere aktuell von HA → IPS die Werte um sie zumindest darstellen zu können. Eine Bedienung und entsprechende Skripte sind leider nicht möglich (z.B. Raumtemperatur über 30 Grad und PV-Ertrag größer 3 KW → starte Klima in Raum 1).

Ich kann dir gerne mit den Payloads behilflich sein, habe aber keine Ahnung woher ich die bekomme :wink:

@BlackOrca

Ich habe heute zufällig auch HA installiert um die Tuya Integration zu nutzen. Das ist schon sehr cool.
Jetzt habe ich gesehen das es hier schon Mal die Überlegung gab ein Modul zu erstellen.

Das fände ich wirklich Klasse muss ich sagen und würde gerne wissen ob du hier noch weiter daran arbeitest?
Fände ich wirklich großartig und wäre schön eine mächtige Erweiterung muss ich sagen.

Leider kann ich ers was die Programmierung angeht nicht helfen. Payload könnte ich liefern denke ich.

Viele Grüße
Stephan

Moin @firewire,
Aktuell ruhen mein Gedanken dazu. Wie ich bereits weiter oben geschrieben hatte ist es leider nicht einfach so, da es ein sehr loses „programmier-vertrag“ definiert ist. Vieles in den Daten ist Optional, einiges kann abgekürzt ausgedrückt werden (wohl für nicht so betuchte IoT Geräte). Um die Geräte Seite fit dafür zu machen ist kein Problem bzw. sehr charmant. Aber die „HA Seite“ entsprechend zu Programmieren ist ohne eine ganz klare Gliederung kaum möglich und wenn, dann mit viel Try and Error und mit jeden neuen Gerät ist mit Nachbesserung zu Rechnen.

Also erstmal wie gesagt meine Gedanken ruhen hier vorerst.

Gruß,
Dennis

Vielen Dank für deine Rückmeldung.

Schade, das habe ich befürchtet. Nutzt du HA aktuell parallel?
Falls ja, wie gehst du da momentan vor?

Viele Grüße
Stephan

Ich schaue mir das immer mal wieder an, aber ich werde damit einfach nicht Warm.
PHP finde ich schon eine eher bescheidene Syntax aber Python sieht immer nach quick und dirty aus :smiley:

Gruß,
Dennis

Ich habe mit HA nicht viel am Hut, aber das Eltako ZGW16-IP (Modbus MQTT Gateway für deren Produkte) schreibt in der Beta eine HA Discovery Message:

{„name“:„ZGW16-IP Voltage of L1 to N“,„state_topic“:„ZGW16-IP/devices/1/Voltage of L1 to N“,„unique_id“:„ZGW16-IP_Voltage_of_L1_to_N“,„availability_topic“:„ZGW16-IP/status“,„device_class“:„power“,„state_class“:„measurement“,„unit_of_measurement“:„Volt“,„value_template“:„{{ value_json[‚value‘] }}“,„device“:{„name“:„“,„manufacturer“:„Eltako“,„model“:„“,„identifiers“:„eltako_1“}}