Problemy z DeepSleep od wersji 5.1.6

proxxon
Posts: 93
Joined: Wed Nov 22, 2017 2:42 pm

Post

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
You do not have the required permissions to view the files attached to this post.
proxxon
Posts: 93
Joined: Wed Nov 22, 2017 2:42 pm

Post

Dodatkowa obserwacja:
Czasami w logach wskakuje dodatkowa pozycja:
supla_deep_sleep_failure3.png
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) :?
You do not have the required permissions to view the files attached to this post.
proxxon
Posts: 93
Joined: Wed Nov 22, 2017 2:42 pm

Post

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
You do not have the required permissions to view the files attached to this post.
proxxon
Posts: 93
Joined: Wed Nov 22, 2017 2:42 pm

Post

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

Code: Select all

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.
You do not have the required permissions to view the files attached to this post.
krycha88
Posts: 5208
Joined: Fri Nov 16, 2018 7:25 am

Post

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
Posts: 93
Joined: Wed Nov 22, 2017 2:42 pm

Post

krycha88 wrote: Tue Dec 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).
User avatar
klew
Posts: 8357
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

krycha88 wrote: Tue Dec 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
Posts: 5208
Joined: Fri Nov 16, 2018 7:25 am

Post

proxxon wrote: Tue Dec 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

Code: Select all

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
Posts: 93
Joined: Wed Nov 22, 2017 2:42 pm

Post

krycha88 wrote: Tue Dec 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
Posts: 93
Joined: Wed Nov 22, 2017 2:42 pm

Post

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

Return to “GUI Generic”