Problemy z DeepSleep od wersji 5.1.6

proxxon
Posty: 93
Rejestracja: śr lis 22, 2017 2:42 pm

Hej,

Od wspomnianej wersji zauważyłem złe/dziwne działanie modułu z deepsleep. Wcześniej było tak, że w logach widziałem info, że za 30s moduł idzie spać - teraz tego nie ma (ale nie o to chodzi, to jest tylko dodatkowy objaw). Zasypianie jest natychmiastowe. Wydaje mi się że być może zachodzi taka sytuacja, że moduł po komendzie "Changing activity timeout to 1080" (2*9min) za szybko zasypia powodując, że serwer dalej myśli że jest to 2min. Po tych 2 minutach kanał jest niedostępny w aplikacji (rozłączony w Cloud). Sama ikonka (i) też jest pusta (a miała mieć buforowane dane). Być może nie chodzi o to ale ewidentnie jest problem bo urządzenie po chwili znika a i logi temperatury z takiego kanału są bardzo "pocięte" (przy dłuższym deepsleep niż 10 min).

supla_deep_sleep_failure2.png
supla_deep_sleep_failure2.png (16.89 KiB) Przejrzano 485 razy
proxxon
Posty: 93
Rejestracja: śr lis 22, 2017 2:42 pm

Dodatkowa obserwacja:
Czasami w logach wskakuje dodatkowa pozycja:
supla_deep_sleep_failure3.png
supla_deep_sleep_failure3.png (11.08 KiB) Przejrzano 476 razy
Wtedy ikonka (i) widać, że działa z buforowaną zawartością i moduł jest dostępny dłużej. Po ponownym wybudzeniu jest jak poprzednio choć czasami wartości temp są widoczne i moduł jest dostępny (nie ma tu jakiegoś wzorca) :?
proxxon
Posty: 93
Rejestracja: śr lis 22, 2017 2:42 pm

Tak wygląda historia pomiarów na tym sofcie. Wgram starsze GG (jakieś 4.x.x) i wstawię też logi oraz screen z historii pomiarów:
v5.3.0:
supla_screen_historia.png
supla_screen_historia.png (119.76 KiB) Przejrzano 420 razy
proxxon
Posty: 93
Rejestracja: śr lis 22, 2017 2:42 pm

Kontynuując monolog (chyba tylko u mnie jest ten problem) udało się dojść do pewnego rozwiązania. Tak jak pisałem wcześniej, wgrałem starszy soft i problemy ustały:
old_gg.png
old_gg.png (40.31 KiB) Przejrzano 372 razy

Następnie dodałem

Kod: Zaznacz cały

delay(3000);

przed pójściem spać w linii https://github.com/krycha88/GUI-Generic ... ep.cpp#L31 i nowy soft (5.3.x) zaczął działać dobrze:
new_gg_with_fix.png
new_gg_with_fix.png (41.34 KiB) Przejrzano 372 razy
Nie będę robił merge requesta bo pewnie da się to zrobić lepiej. Prosiłbym @krycha88 o poprawki.
krycha88
Posty: 5186
Rejestracja: pt lis 16, 2018 7:25 am
Kontakt:

Nie traktuj braku odpowiedzi jako braku chęci pomocy, po prostu zajmuję się teraz innym tematem :) A do tego usiądę jak znajdę chwilę czasu.

@klew podpowiesz czemu to się tak dziwnie zachowuje i dlaczego delay przed ESP.deepSleep niby rozwiązało problem? :)
https://gui-generic-builder.supla.io/
proxxon
Posty: 93
Rejestracja: śr lis 22, 2017 2:42 pm

krycha88 pisze: wt gru 13, 2022 9:00 am Nie traktuj braku odpowiedzi jako braku chęci pomocy, po prostu zajmuję się teraz innym tematem :) A do tego usiądę jak znajdę chwilę czasu.
Luzik, nie mam z tym żadnego problemu - wiadomo, soft jest darmowy a i tak robicie kawał dobrej roboty. :ugeek:
Bardziej chodziło mi o to, że zacząłem się zastanawiać czy to nie jest jakiś błąd po mojej stronie skoro nikt nic nie pisze o podobnych objawach. To moje rozwiązanie może poprawiać ale nie rozwiązywać źródła błędu, może tylko odwleka w czasie inne potencjalne błędy. W każdym razie starszy soft nie usypiał się tak szybko i być może jeszcze jakaś komunikacja miała szanse się dokończyć (np. set activity timeout).
Awatar użytkownika
klew
Posty: 8184
Rejestracja: czw cze 27, 2019 12:16 pm
Lokalizacja: Wrocław

krycha88 pisze: wt gru 13, 2022 9:00 am Nie traktuj braku odpowiedzi jako braku chęci pomocy, po prostu zajmuję się teraz innym tematem :) A do tego usiądę jak znajdę chwilę czasu.

@klew podpowiesz czemu to się tak dziwnie zachowuje i dlaczego delay przed ESP.deepSleep niby rozwiązało problem? :)
Zerknąłem tylko na ten fragment kodu, co powyżej w poście link się pojawił.
Możliwe, że Wi-Fi nie zdąża wszystkiego wysłać zanim nie uśpisz urządzenia. Ja to spanie robiłem tak, że jak nie było "any update pending" to najpierw mam małego delaya (200 ms), potem wyłączam sieć Wi-Fi na ESP i dopiero po tym kładę go spać.
Obstawiam, że takie łagodne złożenie sieci powoduje, że wszystkie pakiety najpierw są wysłane (flush) zanim Wi-Fi zostanie wyłączone.
Widzimy się na Supla Offline Party vol. 2 :!:
krycha88
Posty: 5186
Rejestracja: pt lis 16, 2018 7:25 am
Kontakt:

proxxon pisze: wt gru 13, 2022 8:03 am Kontynuując monolog (chyba tylko u mnie jest ten problem) udało się dojść do pewnego rozwiązania. Tak jak pisałem wcześniej, wgrałem starszy soft i problemy ustały:
old_gg.png


Następnie dodałem

Kod: Zaznacz cały

delay(3000);

przed pójściem spać w linii https://github.com/krycha88/GUI-Generic ... ep.cpp#L31 i nowy soft (5.3.x) zaczął działać dobrze:

new_gg_with_fix.png

Nie będę robił merge requesta bo pewnie da się to zrobić lepiej. Prosiłbym @krycha88 o poprawki.
Czy jesteś wstanie przetestować kod z mniejszym delay np. 200, 250?
https://gui-generic-builder.supla.io/
proxxon
Posty: 93
Rejestracja: śr lis 22, 2017 2:42 pm

krycha88 pisze: wt gru 13, 2022 4:32 pm Czy jesteś wstanie przetestować kod z mniejszym delay np. 200, 250?
Tak, wgram na noc z 250ms opóźnieniem.
proxxon
Posty: 93
Rejestracja: śr lis 22, 2017 2:42 pm

Dla 250ms nie zaobserwowałem nieprawidłowości.
ODPOWIEDZ

Wróć do „GUI Generic”