Zigbee2mqtt problem z wieszaniem się

Zanim postawię Syslog to udało mi się uzyskać log przed zawieszeniem - a dokładniej stało się to przy próbie wyświetlenia mapy połączeń

gbee2MQTT:error 2024-01-11 13:47:40: Publish 'set' 'state' to 'Sterownik Ogrzewania P0_1' failed: 'Error: Command 0xa4c138fee9809c12/4 genOnOff.off({}, {"sendWhen":"immediate","timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":false,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false}) failed (sendZclFrameToEndpointInternal error)'

Czyli próba wysłania ustawień do sterownika
No i po tym tracę komunikację ze wszystkim :


Zigbee2MQTT:error 2024-01-11 13:54:50: Failed to execute LQI for 'Coordinator'
Zigbee2MQTT:error 2024-01-11 13:54:56: Failed to execute LQI for 'Garaz - Blaszkax2'
Zigbee2MQTT:error 2024-01-11 13:55:02: Failed to execute LQI for 'Wtyczka '

Stawiam na jakiś problem z samym donglem i tu szukałbym problemu.
Może samo zasilanie dongla, zmień na inny port USB

Dzięki - tak tez postąpię
Dongel mam na przedłużce USB , podłączony jest do serwera który stoi na standardowym PC
Na początek może zmienię pzredłużke

Niestety moje zabiegi niewiele zmieniły.
Zrobiłem:

  1. zmieniłem port USB
    2 - zmieniłem kanał z 11 na 25
    3 - podłączyłem wszystkie urządzenia od nowa (wczesnej je wykasowałem oczywiście) zachowując zasadę ze podpinam od najbliższego do najdalszego, tak aby siatka się poprawnie zbudowała

Przez 1 dzień wyglądało że jest lepiej , ale znowu pojawiają mi się te same błędy i wrażenie że zawiesza się Z2M. W logach mam błędy o braku możliwości wysłania komendy do urządzenia i nic poza tym

error <small>2024-01-15 12:09:54</small>`Publish
 'set' 'state' to 'Gniazdko' failed: 'Error: Command 
0xb4e8428728cd0000/1 genOnOff.on({}, 
{"sendWhen":"immediate","timeout":10000,"disableResponse":false,"disableRecovery":false,"disableDefaultResponse":false,"direction":0,"srcEndpoint":null,"reservedBits":0,"manufacturerCode":null,"transactionSequenceNumber":null,"writeUndiv":false})
 failed (sendZclFrameToEndpointInternal error)'`

Zastanawiam się nad zmianą koordynatora - ale n ajaki?

Sam musisz dokonać wyboru, ja mam ConBee II i nigdy nie miałem problemu z zawieszaniem, jest już wersja ConBee III .

A zaktualizowałaś w swoim firmware?

Inny użytkownik forum używa na takim sprzęcie v7.3.1.0 (choć nie podaję linka, bo moim zdaniem wgrał nieprawidłowy plik firmware)


“poza konkurencją”
Ja stawiam na jakieś konkretne urządzenie w twojej sieci Zigbee, które powoduje problemy, mam konkretnie na myśli to

więc nie paruj tego sterownika w ogóle do sieci Zigbee, nawet nie podawaj mu zasilania po usunięciu z sieci

No i skoro zignorowałeś wszystkie INNE możliwe przyczyny w ogóle nie powiązane z Z2M

W ogóle skorzystałeś z sugestii i wyłączyłeś NR chociaż na jakiś czas, by się przekonać czy on nie zabiera całych zasobów serwera?

Swój koordynator możesz wysłać do mnie na testy (lub przegadaj sprawy wsparcia z jego autorem, możesz go też zaprosić do nas na forum), ale jego wymiana może być bezcelowa, jeśli problem pochodzi z jakiegoś innego źródła.
sorry pomyliłem osoby - jest kilka podobnych wątków na forum powstałych w zbliżonym czasie, a dotyczących różnego sprzętu.

Ponieważ to Sonoff ZBDongle-E to nie widzę sensu jego wymiany (no chyba, że masz wadliwy egzemplarz, jakkolwiek wciąż możesz go podesłać na testy do mnie, testy za free, natomiast nie gwarantuję żadnego szybkiego terminu - zdrowie mi się posypało, więc nie chcę nic obiecywać, przesyłkę w obie strony pokrywasz sam).


Mój komentarz do wypustów Dresden Elektronik (celowo zapisuję II jako 2 i III jako 3)

  • conbee2 jest sprzętowo przestarzały i mimo, że to naprawdę majstersztyk producenta, sens jego zakupu zmalał do zera w momencie premiery conbee3, pewne opcje (np. parowanie przez QR) są w nim niedostępne i nie wiadomo czy będą
  • conbee3 jest sprzętowo niemal bliźniakiem Sonoffa ZBDongle-E, wprawdzie wsparcie niemieckiego wytwórcy jest o niebo lepsze niż chińskiego iTead, to jednak Dresden Elektronik będzie moim zdaniem w pierwszej kolejności przygotowywać firmware pod współpracę z innym ich sztandarowym produktem deConz, a sam sprzęt w Z2M i ZHA będzie korzystał dokładnie z tego samego sterownika co zbdonglee czyli
  adapter: ezsp

Nie zignorowałem żadnej z sugestii

  • mój HA ma stały adres IP czyli zawsze jest pod tym adresem, a również mam konfigurację poprawioną konfigurację na

  • próbowałem tez bez NR

  • co do urządzenia to problemy mam praktycznie z każdym więc trudno mi wyłączyć wszystkie i testować.
    Zwłaszcza że pojawiają mi si ę tez

error <small>2024-01-15 15:28:19</small>`Failed to execute LQI for 'Coordinator'`

Ale tylko przy próbie wyświetlenia mapy połączeń

Właśnie zauważyłem ze nie wysłałem

Co do wersji to wszystko instalowałem według instrukcji - a sam jeszcze mam zbyt mała wiedzę aby takie rzeczy ogarnąć bee podpowiedzi.

FW jakie udało mi się znaleźć to takie jakie mam lub starsze

Wniosek - na pierwszy ogień firmware dongla do zmiany lub aktualizacji.
ALE
czemu masz protokół MQTT w wersji 4 a nie 5

U mnie też jest 4.
Coś z tym zrobić?

Web Flasher też taki wgrał, jednak nie pamiętam, czy teraz u mnie chodzi zaktualizowany flasherem czy z pliku ręcznie.

Chyba z tej strony korzystałem:

Ale jest jeszcze:

…choć przypuszczam, że to jest to samo.

Dobra wyjaśnię czemu tak uważam, wprawdzie nie kopałem po dokumentacji, a pewnie by się przydało.
Moim zdaniem hw oznacza sprzętową kontrolę przepływu, a z tego co kojarzę ZBDongle-E ma kontrolę programową…

edit
tak się nazywa oryginalny firmware iTead/Sonoff (tu przy okazji wychodzi druga kwestia - jak bardzo producent sprzętu ma wylane na wydawanie aktualizacji…)
ncp-uart-sw_EZNet6.10.3_V1.0.1.gbl
w każdym razie nabieram pewności, że mi się nie zdawało, iż kontrola przepływu jest programowa.


A w kwestii wersji protokołu, to nie twierdzę, że protokół MQTT w wersji 4 jest całym złem tego świata (w ogóle to istnieje taka wersja?), ale Z2M jest w stanie wykorzystywać 5.
Broker Mosquitto też go obsługuje od dawna

U siebie z koordynatorem na MCU TI CC2652P używam 5, ale sprzęt jest zupełnie inny - na stacku zstack, ponadto to może mieć powiązania z innymi ustawieniami (też nie wszystko pamiętam i znam od podszewki)


Byłoby fajnie gdyby inni użytkownicy ezsp, którym ten sprzęt działa bezproblemowo się podzielili swoimi konfiguracjami.


Tam jest opis flashowania dualstack, to w ogóle jest oderwane od tematu, bo firmware dualstack działa CAŁKOWICIE inaczej i jest niekompatybilne z normalnymi integracjami Zigbee, bo wymaga dodatkowego oprogramowania - pośredniczącego dodatkowego serwera, bo wtedy dongle nie jest samodzielnym koordynatorem, a de facto jedynie modemem Zigbee+Thread, a funkcje koordynatora pełni ten dodatkowy serwer.


Standardowy disclaimer - nie jestem nieomylny, niech się inni obeznani w temacie wypowiedzą…

Porównanie (producenta) wersji sticków https://itead.cc/product/zigbee-3-0-usb-dongle/#d i inne z bloga ZBDongle-P VS ZBDongle-E - Haade.fr

1 polubienie

Post został podzielony na nowy temat: SkyConnect Z2M problemy, HAOS-ova na Synology

Troszkę poeksperymentowałem z uwzględnieniem Waszych uwag i sugestii - proszę nadal o wyrozumiałość bo moja wiedza jest jeszcze co najmniej skromna.
Mam małe postępy ale jeszcze chyba długa droga przede mną.
Na tą chwilę uzyskałem efekt że przez cały dzień nie miałem zawieszenia , ale jak chciałem odtrąbić sukces to …
Zrobiłem zgodnie z sugestiami

  • odłączyłem prawie wszystkie urządzenia
  • wyłączyłem dodatek Node-Red
  • ponownie dodałem urządzanie - co niektóre “lepiej” się dodały chodzi o1 termostat , w którym nie widziałem harmonogramów, teraz już widzę.
  • uruchomiłem node-red ponownie
    i tak działało od wczoraj , aż do momentu chęci dodania kolejnego modułu - zwykłego switcha mini .
    Po próbie włączenia trybu dodawania error -
2024-01-17 20:30:41,"error","local0","Zigbee2MQTT","localhost","Request 'zigbee2mqtt/bridge/request/permit_join' failed with error: 'Connection not initialized'/n"

Co ciekawe drugi raz uruchomienie trybu dodawania wszystko zadziałało

Aha zmieniłęm tez wersje MQTT z 4 na 5

To, że czasem parowanie nowego urządzenia się nie powiedzie jest dość częste. Raczej nie jest to wielki problem, innymi słowy - ten typ tak ma.

Nie chodzi że sie nie powiodło , tylko że nie można było nawiązać kontaktu z koordynatorem - tak jakby się uśpił
Nie napisałem że wtedy nie działały także odczyty i wysyłanie poleceń do już dodanych urządzeń
Po “wybudzeniu” wszystko wróciło do normy

Zupełnie nie rozumiem tej procedury, chyba nie zrozumiałeś co dany krok miał przetestować…

Wyłączenie NR na zawsze! w skali eksperymentu miało zagwarantować, że żaden wadliwy proces uruchomiony wewnątrz niego nie zabierze całych zasobów systemu. Więc jego włączenie niweczy cały wykonany eksperyment. Wyciek pamięci, którego się tu spodziewam nie jest szybkim zabójcą tylko powolnym i utajonym.

Ale nie musimy tak kombinować, po prostu powinieneś zacząć monitorować kluczowe zasoby, czyli instalujesz integrację

i uruchamiasz jakiś minimalny zestaw sensorów, np. taki jaki sugerowałem kiedyś tam (tylko weź poprawkę, że teraz tą integrację konfiguruje się w GUI, a NIE w YAMLu, ale kod kart wciąż można wykorzystać, po zmodyfikowaniu na swoje encje)

Może podkreślę - najważniejsze jest procentowe wykorzystanie RAMu i swapa, ale polecam monitorować wszystkie ważne zasoby, w tym obciążenie procesora czy jego temperaturę (to akurat w inny sposób), bo wiedza o nich bywa kluczowa w diagnozowaniu sytuacji mało powtarzalnych.


Teoretycznie pojedyncza sesja dodawania urządzeń do sieci Zigbee nie może trwać dłużej niż 4 minuty z groszami, więc trudno czasem się zmieścić w okienku czasowym.
Z2M do niedawna umożliwiało obejście tego ograniczenia przez włączenie stałego parowania (to jest w ustawieniach i oczywiście bezwzględnie należy je wyłączyć po robocie), no nie mam pod ręką żadnego upierdliwego sprzętu by sprawdzić czy nadal jest możliwość realizacji parowania w sesji bez time-outu.

Rzeczywiście źle zrozumiałem z NR - zrobię monitor , aczkolwiek patrząc w supervisior na stan pamięci nie zauważam przeciążenia.
Co do uruchamiania sesji dodawania to źle interpretujesz - chodzi o to że 1 próba włączenia trybu dodawania daje mi komunikat błędu

2024-01-17 20:30:41,"error","local0","Zigbee2MQTT","localhost","Request 'zigbee2mqtt/bridge/request/permit_join' failed with error: 'Connection not initialized'/n"

i nie włącza się , natychmiastowe drugie włączenie tej procedury już uruchamia proces. Więc nie chodzi o to że nie mogę dodać tylko że nie mogę uruchomić procedury dodawania .

Tak na bieżąco po uruchomieniu monitora
NR jest włączone
obraz

Pojedynczy odczyt stanu jeszcze o niczym nie świadczy - wartości masz wręcz idealne, ALE stan zasobów trzeba analizować w funkcji czasu, do tego wystarcza najzwyklejszy wykres historii, zawierający kilka czujników naraz (dlatego wykorzystanie procentowe się przydaje, bo znamy granice i jest wspólna skala).

Natomiast samo monitorowanie póki co nie zastępuje wyłączenia NR - nie wiemy czy w procesach uruchomionych w NR odwołujesz się do jakichkolwiek urządzeń Zigbee, jeśli tak, to go wyłącz; jeśli natomiast żaden proces nie dotyka niczego związanego z Zigbee, to NR może zostać włączony (mamy już monitorowanie, to potencjalny wyciek pamięci będzie widoczny na wykresie).


Nie miałem siły na analizę wszystkiego, ale w końcu jest coś, co może dość jednoznacznie wskazywać na bezpośredni problem z koordynatorem lub jego komunikacją z Z2M.

Teraz pytanie dodatkowe - czy ten problem występuje zawsze i bezwzględnie?
również po zrestartowaniu systemu?
Co rozumiesz przez wybudzenie, jak to realizujesz?
Próbowałeś bez przedłużacza USB?
Innego ortu USB?
Czy w ogóle się skutecznie pozbyłeś integracji ZHA?
Co z firmware koordynatora?

nieco zbaczam z tematu

To wskazuje na to, że miałeś urządzenia nie w pełni wspierane w wersji Z2M w której je dodałeś pierwotnie lub interview był nieudany za 1 razem. Teraz tego nie sprawdzimy, ale możesz poczytać ostatnie notatki do wydań Z2M i zobaczyć czy są jakieś wzmianki o tym sprzęcie, gdy wrzucałeś raport z systemu miałeś Zigbee2MQTT (1.34.0-1), dzisiaj aktualna wersja to 1.35.1-1
https://github.com/Koenkk/zigbee2mqtt/releases/tag/1.35.1
https://github.com/Koenkk/zigbee2mqtt/releases/tag/1.35.0
jeśli poprzednio dodawałeś to urządzenie w jeszcze starszej wersji, to drążysz temat głębiej
https://github.com/Koenkk/zigbee2mqtt/releases/tag/1.34.0
https://github.com/Koenkk/zigbee2mqtt/releases/tag/1.33.2
https://github.com/Koenkk/zigbee2mqtt/releases/tag/1.33.1
itd.
Tu mnie naszły też podejrzenia co do tego czy w ogóle w sieci wciąż nie masz nieobsługiwanego lub nie w pełni obsługiwanego sprzętu.

NR w zasadzie mam tylko dla urządzeń ZigBee - przynajmniej na razie bo dopiero buduję automatykę, ale oczywiście zrobię testy z wyłączonym NR na stałe.

Co do wartości wiem że są dobre , zwłaszcza że używam zwykłego PC a nie RaspberryPI (Jakoś po krótkim zachwycie nie przemawia do mnie ten sprzęt w szczególności wydajność do ceny).
Ten źle dodany termostat to podejrzewam że przyczyna było to iż był/jest w dość niekorzystnym miejscu na granicy zasięgu.
A teraz

  • Problem występuje zawsze i bezwzględnie również po restarcie systemu/ hosta
  • wybudzanie - czyli jak kliknę 1 raz na funkcje dodawania urządzeń mam komunikat jak pisałem , ponowne kliknięcie juz jest poprawny komunikat , czyli tak jakby pierwsze kliknięcie budziło śpiący koordynator / połączenie z koordynatorem.
  • tak próbowałem bez przedłużacza
  • tak obecnie mam na innym porcieUSB
  • tu nie dam odpowiedzi wydaje mi się ze tak skutecznie pozbyłem sie integracji z ZHA ale nic nie dam sobie uciec Jak to sprawdzić?
  • Frimware koordynatora mam 6.10.3.0 build 297 i nie mogę znaleźć nowszej - może źle szukam

Objawy skłaniają mnie do sugestii, sprawdź czy w BIOS nie masz usypiania zasilania dla USB.
W Dell są chyba wybrane gniazda USB gdzie zasilanie jest włączone na stałe.

1 polubienie