Zibi_007 wrote: Tue Jun 10, 2025 10:50 pm
Trochę się nakopałem, ale znalazłem wszystko, co potrzeba.
Wersja softu 0.8.24 (2025-06-08) - merged 8MB OTA LOGS. Bramka podłączona pod USB po wgraniu softu nie wstała. Po otwarciu portu ożyła, nawet reset nie był potrzebny. Coś ją ewidentnie blokuje przy bootowaniu. Bramka w trybie parowania, więc do dzieła. Przycisk 4CH parowany przez dłuższe przytrzymanie klawisza nr 3. Poszło nawet szybko i prawie się udało. Prawie, bo dodało się 11 kanałów z 12. Nie dodał się czwarty klawisz, opisany zwykle jako BUTTON #4 HELD. W załączniki logi z parowania oraz użycie tego "niedodanego" klawisza. Załączam też widok z konfiguracji, gdzie widać wszystkie dodane kanały. Kolejne parowania nie poprawiają sytuacji, dalej brakuje jednego kanału.
Edit: Soft wgrany ponownie. Wcześniej "Erase". Sytuacja identyczna. Brakuje jednego kanału. Załączam logi, bo już zgłupiałem i nie wiem czy poprzednio naciskałem długo klawisz 3 czy 4. Teraz na 100% był to czwarty, więc proszę analizuj ten drugi plik (Log2.zip).
@Zibi_007 Nie wiem, co ja bym bez Ciebie zrobił, ale wiem na 100%, że rozwój bramki bez Twojego wsparcia nie byłby możliwy
Przechodząc do konkretów - w Twoich logach widać ewidentnie, że proces parowania przebiega bez błędów, podobnie
binding poszczególnych klastrów. Następnie bramka zaczyna generować kanały
Supla - po wygenerowaniu każdego kolejnego zapisuje tabelę w
LittleFS i przechodzi do następnego. W przypadku prostych urządzeń ten proces trwa zwykle krótko, po czym następuje restart bramki. Natomiast w przypadku urządzeń mających kilka endpointów, gdzie liczba kanałów robi się spora, ta operacja może trwać dłużej.
W logach widać, jak tuż przed dodaniem ostatniego przycisku pojawia się komunikat o stanie baterii - bramka od jakiegoś czasu zapisuje ten stan w tabeli urządzeń, a tutaj próba zapisu nakłada się na zapis kanału,
LittleFS robi
core panic i ten ostatni kanał się nie zapisuje.
Nie mogę wykluczyć, że podobny mechanizm odpowiada za inne błędy związane z parowaniem - brak wszystkich kanałów, wydłużony proces parowania itd. - ryzyko takich błędów będzie rosło wraz z liczbą urządzeń wcześniej dodanych do bramki.
Wersja 0.8.26-11/06/2025 wprowadza próbę rozwiązania tego problemu poprzez wyłączenie przetwarzania komunikatów Zigbee zaraz po rozpoczęciu procesu parowania nowego urządzenia. Oznacza to, że w trakcie parowania wszystkie raportowane dane z czujników
NIE zostaną przetworzone i przesłane do Supla.
Mam gorącą prośbę do wszystkich chętnych o przetestowanie tego rozwiązania i próbę odpowiedzi na poniższe pytania:
- Czy rozwiązuje to problem braku kanałów przy np. przyciskach 3-4 klawiszowych?
- Czy skraca to proces dodawania nowych urządzeń do bramki, tam gdzie wcześniej obserwowany był długi czas parowania?
- Czy ktoś zaobserwował jakieś nowe błędy wprowadzone przez to rozwiązanie?
Jeżeli ten pomysł okaże się skuteczny, to będzie się można zastanowić, czy nie zostawić raportowania w czasie parowania dla wybranych funkcji, np. dla stanu kontaktronów.