Encja MQTT w Home Assistancie może należeć do urządzenia tylko wtedy, gdy ma unikalny identyfikator (unique_id). Mimo to Home Assistant do tej pory czytał sekcję device także w encjach, które go nie miały, i miało to jeden widoczny skutek. Zmiana #187856, scalona z gałęzią rozwojową 22 października 2026 i oznaczona jako niezgodna wstecz, to zmienia. Trafi do Home Assistanta 2026.11.

Co się zmienia

Od wersji 2026.11 sekcja device w encji MQTT bez unique_id będzie pomijana. Dotyczy to encji zdefiniowanych w YAML i tych, które powstają przez automatyczne wykrywanie MQTT, łącznie z późniejszymi aktualizacjami ich konfiguracji.

Sama encja dalej działa. Znika tylko pozostałość po jej sekcji device. Jeśli była w niej pozycja via_device, Home Assistant zakładał dla niej urządzenie w rejestrze urządzeń, chociaż encji i tak nie dało się z żadnym urządzeniem powiązać. Takie niepotrzebne urządzenie nie będzie już tworzone.

Home Assistant ostrzegał przed tym już wcześniej. W dzienniku pojawiał się wpis, że MQTT próbuje przypiąć urządzenie do encji bez unikalnego identyfikatora i że od wersji 2027.8 przestanie to działać. Teraz integracja MQTT sama odrzuca dane urządzenia, jeszcze przed tym terminem.

Kogo to dotyczy

Przejrzyj encje MQTT, które napisałeś ręcznie w YAML i które mają sekcję device:, ale nie mają unique_id:. To samo dotyczy komunikatów wykrywania wysyłanych przez własne skrypty albo oprogramowanie urządzeń, w których obiekt dev lub device jest, a uniq_id brakuje. Gotowe mostki, takie jak Zigbee2MQTT, zwykle wysyłają unikalny identyfikator z każdą encją, więc to raczej nie one. Częściej pomijają go domowej roboty programy publikujące dane.

Jeśli taka encja ma się pojawić pod urządzeniem, dodaj jej unikalny identyfikator:

mqtt:
  sensor:
    - name: "Temperatura w garażu"
      state_topic: "garage/temp"
      unique_id: garage_temperature
      device:
        identifiers: ["garage_node"]
        name: "Moduł w garażu"

Bez unique_id Home Assistant nadal pokaże czujnik, ale nie przypisze go do urządzenia „Moduł w garażu” i nie utworzy tego urządzenia tylko z jego powodu.

Część większej zmiany w MQTT

Ta zmiana została wydzielona z #186015, która dodaje obsługę urządzeń podrzędnych w MQTT i wciąż czeka na scalenie. W tym samym czasie scalono też dwie poprawki MQTT: jedna naprawia błędne aktualizacje wykrywania dla wyzwalaczy urządzeń i znaczników, a druga obsługuje błędy rejestracji urządzeń dla tych samych wyzwalaczy i znaczników.