Undefined Error - konfiguracja Z2M + Sonoff 3.0 Dongle

Hej,

Probuję skonfigurować Z2M na donglu Sonoff 3.0 ale cały czas pojawia mi się taki sam błąd podczas uruchamiania dodatku. Ciężko jest zidentyfikować problem ponieważ opis błędu to: undefined.

Zigbee2MQTT:info  2023-04-05 09:15:37: Starting zigbee-herdsman (0.14.103)
Zigbee2MQTT:error 2023-04-05 09:15:53: Error while starting zigbee-herdsman
Zigbee2MQTT:error 2023-04-05 09:15:53: Failed to start zigbee
Zigbee2MQTT:error 2023-04-05 09:15:53: Check https://www.zigbee2mqtt.io/guide/installation/20_zigbee2mqtt-fails-to-start.html for possible solutions
Zigbee2MQTT:error 2023-04-05 09:15:53: Exiting...
Zigbee2MQTT:error 2023-04-05 09:15:53: undefined

Poniżej konfiguracja mojego Z2M

Screenshot 2023-04-05 101327

Cały HA mam postawiony na RaspberryPi 3 i jedyne co mnie zastanawia to fakt, że Raspberry posiada tylko USB 2.0 a Sonoff 3.0. Wcześniej posiadałem Conbee II przy takiej samej konfiguracji i wszystko działało dobrze.

Czy ktoś wie co może być przyczyną albo jak w bardziej szczegółowy sposób namierzyć błąd?

Zamień zapis:

port: /dev/ttyUSB0

na

port: (wklej tutaj zapis z pozycji "Identyfikator"

Sonoff-a masz podłączonego na przedłużce?

Jeśli powyższe nie pomoże to zmień soft w koordynatorze:

Nie ma czegoś takiego jak “Sonoff 3.0”, masz albo Dongle-P albo Dongle-E (z nazw wyrzuciłem wszystko co nieważne dla jasności).

Tu nie chodzi o USB3.0 tylko o Zigbee3.0
Sam port jest USB2.0 (a ze względu na używane prędkości gwarantuję, że to działałoby nawet gdybyś miał w RPi port USB1.1)


Myślę, że kluczowym jest rozpoznanie dongla (czy to P czy E)

Tu masz zdjęcie E w środku

a tu zdjęcie P

PS na screenshocie z 1 posta się dopatrzyłem ścieżki charakterystycznej dla modelu Zbdongle-P

więc z konfiguracji musisz wyrzucić protokół komunikacyjny (chodzi o parametr adapter:) deconz, bo CC2652P używa zStack3x0 (w konfiguracji to wartość parametru zstack, zamiast deconz chociaż powinien działać na ustawieniu auto czyli bez ręcznego specyfikowania, jeśli podałeś poprawną ścieżkę i nie dpouściłeś do przejęcia adaptera przez Integrację ZHA)

PS Ponieważ teraz masz adapter Zigbee3.0 a poprzednio miałeś Zigbee1.2 to najprawdopodobniej nie unikniesz ponownego parowania urządzeń (backup sieci Zigbee jest raczej niekompatybilny).

Więc jeśli w żaden sposób nie dajesz rady, to wyjściem ostatecznym jest usunięcie Z2M oraz skasowanie pozostawionych plików konfiguracyjnych (mam nadzieję, że wiesz gdzie one są, bo na przestrzeni ostatnich lat bywały zarówno w podkatalogu w share/ jak i w podkatalogu w config/ i dopiero po restarcie maszyny ponowna instalacja “od zera”, skopiuj sobie stare konfiguracje “gdzieś na bok”, bo obecnie konfiguruje się to inaczej - nawet nie jest wymagane specyfikowanie połączenia z brokerem MQTT o ile jest to Mosquitto w postaci Dodatku, wspominam, bo nie wiem jaki masz typ instalacji).

PPS Ze względu na powszechnie stosowany skrót Z2M wątki związane z Zigbee2MQTT są otagowane z2m a nie długaśnym zigbee2mqtt (choć i takie się zdarzają, to im zdublowałem tagi na z2m)
https://forum.arturhome.pl/tag/z2m

Tak, podłączone jest na przedłużaczu USB.

Robiłem to kilka razy, bez pozytywnego rezultatu niestety

Zacząłem to robić ale nie wykrywa mi urządzenia w connected devices, też podłączyłem na przedłużce.

Namierzyłem również jakie mam urządzenie: jest to dongle - P

Rozumiem, że po prostu mam odinstalować i zainstalować dodatek na nowo? Nawet w tym przypadku będę musiał skasować “stare” pliki konfiguracyjne?

ścieżka “by-id” jest zwykle tak długa, że nie mieści się w 1 linii, więc upewnij się, że wklejasz całość (i końcówka nie jest “urwana”)

Jak to zacząłeś? Firmware trzeba skutecznie wgrać, w przeciwnym razie nie działa.
Instrukcja jest w którymś już podlinkowanym wątku (dla windowsa z użyciem oficjalnego narzędzie do programowania od TI).

Po pierwsze rób backupy przed taką robotą.

Po drugie moim zdaniem backup nie da się zaimportować bo przechodzisz ze stacka 1.2 na 3.0 (ale poczytaj oficjalną dokumentację, może się coś zmieniło).

Po trzecie moim zdaniem zachowanie starej konfiguracji jest tą kłodą pod nogi, którą sobie sam rzucasz, tak wiem parowanie wszystkiego od nowa, ręce mogą opaść.

Po czwarte - można mieć 2 koordynatory (zalecam wtedy konfigurację na różnych kanałach, stary niech sobie zostanie na 11 a nowy ustaw na 25) i DWIE instancje z2m
(wątek być może jest nieco starawy, ale jest to wykonalne, instalacja nowej instancji może być w sposób uproszczony, byleby dopilnować aby obie instancje nie nadpisywały sobie plików).

Posiedziałem trochę nad tym i zaczęło działać :smiley:

Po 1: Dałem sobie spokój z konfigurowaniem i wygrywaniem nowego softa (nie chciałem nic popsuć)
Po 2: Zabrałem się za wyczyszczenie konfiguracji Z2M, zrobiłem kopię wszystkich 3 plików z folderu i usunąłem (folderu log nie byłem w stanie usunąć)

Zrestartowałem cały HA z dodatkami, wygenerował się nowy plik configuration.yaml
Po tym zabiegu natrafiłem na błąd tego typu:

Error: network commissioning timed out - most likely network with the same panId or extendedPanId already exists nearby

Przeczytałem na internecie aby dodać w konfiguracji

advanced:
  pan_id: GENERATE
  ext_pan_id: [0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08]
  network_key: GENERATE

Zrobiłem to, restart i zaczęło działać

PS:
Rozumiem, że wszystkie urządzenia muszę parować na nowo? Nie ma co kombinować

Musisz parować od nowa - nic w tej kwestii nie wykombinujesz.

To znaczy, że był w użyciu.
Jeśli usuwasz jakiś Dodatek, to zrestartuj system po tym zabiegu, a dopiero potem usuwaj pliki. (to tak na przyszłość, bo teraz nie ma po co grzebać)

To jest część zabawy, której zapewne nie unikniesz.


nieco OFF TOPIC
Właściwie to czekam z ciekawością na nowe wydanie beta firmware (jak się okazuje wersja stabilna z grudnia zeszłego roku nie radzi sobie z routingiem w sieciach Zigbee zawierających dużo urządzeń, dużo = powiedzmy więcej niż 100, ale zależnie od tego co jest w sieci problemy mogą występować przy mniejszej lub większej ich liczbie).
Już bym testował, ale niestety obecna wersja przekracza możliwości sprzętu, który posiadam (no chyba, że to było wydanie na prima aprilis?)


Jak zgaduję Conbee2 też nie aktualizowałeś?

Nie nie aktualizowałem, ogólnie zmiana z Conbee2 na Sonoff dlatego, że miałem problem z włączaniem/ wyłączaniem większej ilości urządzeń (żarówek). Sonoff ma działać lepiej. Testowo skonfigurowałem większość żarówek i jest lepiej, ale dalej jest “lag” na niektórych urządzeniach. Jakaś podpowiedź jak to usprawnić?

No cóż może warto było? (w razie strachu takie rzeczy robi się choćby spod Windowsa)

Jakiej ilości i jak rozumiem jednocześnie?
Grupę sobie utworzyłeś na poziomie sieci?

Od razu powiem czemu to jest ważne - koordynator wtedy wysyła jedną komendę broadcastem(=do wszystkich urządzeń, ale to nie jest istotne - ważniejsze jest, że jest to jedna komenda), natomiast gdy masz grupę utworzoną przez jakiś inny system nadrzędny (np. HA czy NR) to wtedy koordynator dostaje do wysłania zasadniczo jednocześnie (co już na wstępie jest niemożliwe do spełnienia) tyle komend adresowanych do różnych urządzeń końcowych, ile masz ich w grupie, więc powyżej pewnej liczby takie odwołanie może się nie udać (oczywiście można próbować to rozwiązać inaczej np. tworząc automatyzację, która będzie throttlowała komendy wysyłając po jednej powiedzmy co 100ms).

Tak, próbowałem to robić właśnei wczoraj z Sonoff spod Windowsa, ale nie wiem czemu nie wykrywało mi urządzenia z USB (wciskałem Boot).

20 sztuk w 5 grupach zrobionych w HA. Tak np chodzi o to żeby jednocześnie wszystko wyłączyć, ogólnie w przypadku zapalania działa to sprawniej. Jak robie wyłączanie jest delikatny delay na niektórych żarówkach.

PS. Patrząc na Twojego linka to nie do końca mam pewność czy aby na pewno mówimy o tych samych grupach, zrobilem to z poziomu frontendu w HA, deviceshelpersgroups

Jeśli są opóźnienia to nie ma tragedii, myślałem, że nie gasną.

Oczywiście nie mówimy o tych samych grupach, grupy na poziomie sieci działają znacznie efektywniej, a dlaczego to już w skrócie opisałem.
Grupy na poziomie sieci będziesz widział w Integracji jako kolejne urządzenia.