Mam problem z samozmieniającymi się identyfikatorami encji. Po kolei. Integracja ZigBee2Mqtt, kilka urządzeń Zigbee, ale problem tylko z jednym: TS0601_TZE284_kyyu8rbj (Water level sensor). Czujnik nazwany “szambo_czujnik”. HA core, HAOS, Zigbee2mqtt - zawsze na bieżąco aktualizowane. Encje zmieniają się właśnie po aktualizacji. Czujnik nie jest parowany na nowo, jest w HA, ale pod nową nazwą, więc nie widoczny dla urządzeń, czy automatyzacji wykorzystujących jego identyfikator. Nie bardzo wiem jak to opisać, więc dodaje screeny, które pokażą problem. To nie jest wina ostatniej aktualizacji HA 2026.1.0, bo problem miałem i poprzednio, teraz się powtórzył. Tym razem niektóre encje zmieniły się z “sensor” na “number” ale nie tylko. Jak to możliwe, że encja zmienia się z np. “sensor.szambo_czujnik_last_seen” na “sensor.szambo_last_seen”, gubiąc słowo “czujnik”? Przyszło mi do głowy, że powodem może być nazwa z podkreślnikiem, ale mam inne urządzania tak nazwane i nie ma z nimi kłopotu. Brak innych pomysłów.
Prawdopodobnie zmieniono obsługę danego urządzenia, najwyraźniej zacząłeś je używać zanim pojawiła się jego pełna obsługa (być może nadal nie jest to wersja ostateczna).
Błędem chyba też było, że w automatyzacjach zamiast użyć wyłącznie ID pojedynczych encji użyłeś też ID całego urządzenia (niestety edytor GUI przed tym nie ostrzega.
ID encji możesz sobie zmienić na identyczne ze starymi pod warunkiem, że usuniesz stare osierocone encje.
(czyli kopiujesz sobie na bok stare ID, usuwasz osieroconą, zmieniasz ID aktualnej encji na to skopiowane)
Zweryfikować czy usunąłeś osierocone możesz w MQTT Explorer mqtt-explorer
ba można je za jego pomocą usunąć też z bazy brokera (bo prawdopodobnie to właśnie broker MQTT trzyma te osierocone encje, teoretycznie powinno wystarczyć usuniecie ich z Integracji MQTT, ale gdyby były jakieś resztki, to bardzo wygodnie śmieci z brokera usuwa się właśnie MQTT Explorerem, tylko nie usuń za dużo!!)
Przed chwilą aktualizacja do HA Core 2026.1.1. “hokus-pokus” i encje wróciły do poprzednich identyfikatorów ![]()
NIe zamykam tematu. Będę obserwował.
Wcześniej wykluczałeś związek z aktualizacją HA core, więc nawet nie wspominałem, ale moim zdaniem w ostatnich wersjach HA core coś było grzebane w kwestii nazywania encji (autorzy kombinują w kwestiach nazywania związanych z nazwą urządzenia nadrzędnego, mnie dotknęły te kombinacje odnośnie ESPHome, ale niczego mi to nie psuło oprócz wyświetlania nazw w dashboardzie).
Też się z tym spotkałem, z tym że jedna oryginalna encja i druga zmieniona nazwa, ale obydwie odczytywały stany.
Jest taki mechanizm jak “Home Assistant Discovery”.
Kiedy aktualizujesz Z2M lub HA, integracja wymienia się informacjami o tym, jak dane urządzenie powinno wyglądać.
- Zmiana klasy (sensor na number): Programiści Z2M uznali, że np. próg alarmu w tym czujniku powinien być edytowalny (
number) a nie tylko odczytywany (sensor). To zmiana w kodzie definicji urządzenia. - Zmiana nazwy (szambo_czujnik na szambo): HA dąży do skracania nazw. Jeśli urządzenie nazywa się “Szambo Czujnik”, a encja “Last Seen”, HA próbuje inteligentnie uniknąć powtórzeń typu
sensor.szambo_czujnik_szambo_czujnik_last_seenco czasem kończy się nieprzewidywalnym ucięciem członu.
Tu masz pełne rozwiązanie problemu krok po kroku:
Rozwiązanie: Ręczne wymuszenie ID encji
Aby automatyzacje przestały “pękać”, musisz nadpisać automatyczne identyfikatory własnymi. HA szanuje ręczne zmiany i nie nadpisuje ich przy aktualizacjach.
Krok po kroku:
- Wejdź w Ustawienia → Urządzenia oraz usługi → Encje.
- Znajdź nową encję (tę złą, np.
sensor.szambo_last_seen). - Kliknij w nią wejdz w ikonę zębatki (Ustawienia) i w polu Identyfikator encji wpisz swoją starą, pożądaną nazwę:
sensor.szambo_czujnik_last_seen. - Jeśl HA wywali błąd, że nazwa jest zajęta – oznacza to, że w rejestrze wciąż wisi “osierocona” stara encja. Musisz ją najpirw usunąć (zazwyczaj widnieje jako “Przywrócona” z czerwoną ikoną wykrzyknika)
Aby uniknąć takich problemów w przyszłości, w samym panelu Z2M sprawdź opcję:
Home Assistant discovery entity ID generation: Upewnij się, czy masz zaznaczone używanie Entity name zamiast Object ID.
Najbezpieczniejszą metodą jest nadawanie urządzeniom w Z2M tzw. Friendly Name i zaznaczenie opcji Update Home Assistant entity ID przy zmianie nazwy.
Nastarałem się z szukaniem tego więc mam nadzieje żę pomoże.
Aktualizacja czego HA czy Z2M?
HA Core i HAOS - były robione jedna po drugiej.
Problem leży tu raczej w samym MQTT i nazwach
gdzie urządzenia/integracje/dodatki powinny zostać dostosowane do nowego formatu MQTT. Jak piszesz masz problem tylko z TS0601_TZE284_kyyu8rbj więc nie jest to globalne.
Tak jak napisał @Allon
ustaw swoją nazwę tutaj, nie powinna ona zostać zmieniona po aktualizacji.
I przeczytaj to.
nie ma potrzeby pisać szambo_czujnik bo sama domena sensor na to wskazuje.
Na razie zrobiłem tak:
'0xa4c138d27979169e':
friendly_name: szambo_czujnik
homeassistant:
name: szambo_czujnik
disabled: false
retain: true
nie ma potrzeby pisać szambo_czujnik bo sama domena
sensorna to wskazuje.
Mam: szambo_czujnik, szambo_sterownik, szambo_LCD. Całość to inna historia, pewnie opiszę ją jak już będzie w praktycznym użyciu.
Gdzie to zmieniłeś? W configuration.yaml Z2M?
Tak, wydawało mi się to pewniejsze.
Wejdź do MQTT → urządzenia
znajdź tam swoją encje szambo_czujnik
i Ustaw Nawę: na taką jak chcesz. nawet jak identyfikator się zmieni _2 twoje urządzenie wciąż będzie działać. Zmiany nazw w config.yaml mają taki sam wpływ jak w GUI Z2M.
Urządzenie (ZigBee) → Z2M → MQTT → HA
I tak i nie, zależy m.in. od tego
w nowym interfejsie zigbee2mqtt-windfront jest bardzo podobnie, ale stary interfejs zigbee2mqtt-frontend jest dla mnie dużo czytelniejszy
Kwestia przyzwyczajenia też miałem z początku ten problem, ale trzeba przeklinać i da się z nowym interfejsem żyć.
Jak nie można zmienić nazwy to może zmienić co innego ![]()
Ta zmiana nie jest po aktualizacji systemu czy Z2M tylko po restarcie HAOS.
Po restarcie samego dodatku Z2M mam jeszcze inaczej. Teraz już 3 wersje:
sensor.szambo_czujnik…
sensor.szambo_czujnik…2
number.szambo_czujnik
number. * to inna domena.
Czy jakieś inne urządzenia mają ten sam problem?
NIe, tylko to urządzenie.
r
Nie jest wina Z2M problem leży raczej w MQTT, tam szukaj problemu. O ile dobrze pamiętam w tamtym roku była duża aktualizacja MQTT i zalecenia dla programistów w celu dostosowania urządzeń, INTEGRACJI do nowego standartu MQTT, głównym zaleceniem było nadanie innych nazw dla Urządzeń i nazw encji które nie mogą zawierać takiej samej nazwy jak nazwa urządzenia.










