To opis dla osób, które robią projekty własnych urządzeń i chcą je skomunikować po MQTT z Asystentem domowym.
Wstęp do MQTT Discovery
Idea jest taka, że konfiguracja jest nie w Asystencie domowym ale na samym urządzeniu. Bo urządzenie wie jakie ma czujniki, na jakie komendy reaguje jak się nazywa itd. - potrafi opisać jak się z nim komunikować w sposób zrozumiały dla Asystenta.
Taki opis urządzenie publikuje na temat z prefixem homeassistant. Tak wygląda doomyślna konfiguracja MQTT dla wykrywania urządzeń:
mqtt:
discovery: true
discovery_prefix: homeassistant
W ten sposób ograniczamy potrzebę konfiguracji po stronie Asystenta domowego.
Dokumentacja Home Assistant
Tu są opisane wszystkie możliwe opcje które rozumie Asystent domowy i które mogą wysyłać urządzenia
Prosty przykład
Żeby dodać urządzenie typu sensor binarny to urządzenie powinno opublikować do bramki np. taki komunikat:
{
"name": "garden",
"device_class": "motion",
"state_topic": "homeassistant/binary_sensor/garden/state"
}
w temacie:
homeassistant/binary_sensor/garden/config
w programie MQTT Explorer, łączymy się z brokerem MQTT na bramce i publikujemy json-a:
w efekcie na bramce automatycznie mamy automatycznie dodaną encje binary sensor:
i możemy już raportować jego status do Asystenta:
efekt:
i oglądać status w interfejsie:
automatyzować itd…
To nie koniec
Trzeba jeszcze zadbać o to, żeby przy starcie Asystent domowy zapytał o status wszystkich urządzeń MQTT w sieci (publikując pytanie o temacie na którym nasłuchują wszystkie urządzenia - ten temat to dom).
Oczywiście po dołączeniu do brokera MQTT urządzenie też musi opublikować swój opis i status tak żeby Asystent mógł je automatycznie skonfigurować/dołączyć. Podobnie po zmianie konfiguracji urządzenia powinien być wysłany stosowny komunikat discovery ( o zmianie nazwy, parametrów).
Tak dokładnie dział gniazdko które sprzedajemy, oraz wszystkie urządzenia z oprogramowaniem AIS Tasmota i tak można dodać kolejne własne urządzenia.
To wszystko opisane jest szczegółowo w naszej dokumentacji