SUPLA v22.11

krycha88
Posts: 5417
Joined: Fri Nov 16, 2018 7:25 am

Post

klew wrote: Mon Nov 14, 2022 1:53 pm
krycha88 wrote: Mon Nov 14, 2022 1:09 pm Czyli coś się zmieniło? Kiedyś wystarczyło tylko ustawić setValidityTimeSec dla kanału.
Poza setValidityTimeSec dla każdego kanału, trzeba też ustawić:

Code: Select all

  SuplaDevice.addFlags(SUPLA_DEVICE_FLAG_SLEEP_MODE_ENABLED);
  SuplaDevice.setActivityTimeout(MAX_SLEEP_TIME_SEC);
  
  ch1->setValidityTimeSec(MAX_SLEEP_TIME_SEC);
Ja "MAX_SLEEP_TIME_SEC" ustawiałem na ~2x czas spania.

Poza tymi rzeczami trzeba jeszcze zaimplementować samo usypianie urządzenia.
Dodałem tam jedną przydatną metodę do sprawdzania, czy można pójść spać:

Code: Select all

        if (Supla::Protocol::ProtocolLayer::IsAnyUpdatePending() {...}
Ona zwróci "true", gdy jakiś kanał ma jeszcze potrzebę wysłania czegoś, a "false" gdy wszystko jest wysłane. Po tym jak zmieni się na "false", ja robiłem mały delay, wyłączam wifi i włączam spanie.

Kolejna nowa metoda to:

Code: Select all

      SuplaDevice.isSleepingAllowed();
ona sprawdza, czy urządzenie jest w trybie normal lub test (trybu testowego raczej nie potrzebujesz) oraz czy nie ma zaplanowanego resetu urządzenia.

Ogólnie planuję dodać jakiś przykład ze śpiącym urządzeniem na Arduino IDE, ale jak zwykle trzeba na to znaleźć chwilę czasu :)
Dla mnie wystarczy krótkie info, że coś trzeba poprawić :)

Ogólnie przerobiłem wg tego co napisałeś i wszystko działa poprawnie. Ale mnie zastanawia jak ma się wyznaczać czas pracy urządzenia bo teraz po wybudzeniu urządzenia on się restartuje - tak ma być?
https://gui-generic-builder.supla.io/
User avatar
klew
Posts: 9693
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

krycha88 wrote: Mon Nov 14, 2022 3:57 pm
klew wrote: Mon Nov 14, 2022 1:53 pm
krycha88 wrote: Mon Nov 14, 2022 1:09 pm Czyli coś się zmieniło? Kiedyś wystarczyło tylko ustawić setValidityTimeSec dla kanału.
Poza setValidityTimeSec dla każdego kanału, trzeba też ustawić:

Code: Select all

  SuplaDevice.addFlags(SUPLA_DEVICE_FLAG_SLEEP_MODE_ENABLED);
  SuplaDevice.setActivityTimeout(MAX_SLEEP_TIME_SEC);
  
  ch1->setValidityTimeSec(MAX_SLEEP_TIME_SEC);
Ja "MAX_SLEEP_TIME_SEC" ustawiałem na ~2x czas spania.

Poza tymi rzeczami trzeba jeszcze zaimplementować samo usypianie urządzenia.
Dodałem tam jedną przydatną metodę do sprawdzania, czy można pójść spać:

Code: Select all

        if (Supla::Protocol::ProtocolLayer::IsAnyUpdatePending() {...}
Ona zwróci "true", gdy jakiś kanał ma jeszcze potrzebę wysłania czegoś, a "false" gdy wszystko jest wysłane. Po tym jak zmieni się na "false", ja robiłem mały delay, wyłączam wifi i włączam spanie.

Kolejna nowa metoda to:

Code: Select all

      SuplaDevice.isSleepingAllowed();
ona sprawdza, czy urządzenie jest w trybie normal lub test (trybu testowego raczej nie potrzebujesz) oraz czy nie ma zaplanowanego resetu urządzenia.

Ogólnie planuję dodać jakiś przykład ze śpiącym urządzeniem na Arduino IDE, ale jak zwykle trzeba na to znaleźć chwilę czasu :)
Dla mnie wystarczy krótkie info, że coś trzeba poprawić :)

Ogólnie przerobiłem wg tego co napisałeś i wszystko działa poprawnie. Ale mnie zastanawia jak ma się wyznaczać czas pracy urządzenia bo teraz po wybudzeniu urządzenia on się restartuje - tak ma być?
Ja robię na interfejsie sieciowym: disable network() przed spaniem (iterate powinno się jeszcze odpalić) i potem enableNetwork() po obudzeniu.
Jeśli używasz light sleep to nie powinno być resetu.
Wybudzenie z deep sleep wygląda jak reset.
Kiedy będzie Supla Offline Party / SOP#2025 ?
krycha88
Posts: 5417
Joined: Fri Nov 16, 2018 7:25 am

Post

klew wrote: Mon Nov 14, 2022 4:06 pm Ja robię na interfejsie sieciowym: disable network() przed spaniem (iterate powinno się jeszcze odpalić) i potem enableNetwork() po obudzeniu.
Jeśli używasz light sleep to nie powinno być resetu.
Wybudzenie z deep sleep wygląda jak reset.
Ja wykorzystuję deep sleep więc czas połączenia będzie się resetował? Jeżeli tak to czy da się go nie pokazywać w informacji?
https://gui-generic-builder.supla.io/
User avatar
pzygmunt
Posts: 19240
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków

Post

O tym co jest wyświetlane decyduje urządzenie.
krycha88
Posts: 5417
Joined: Fri Nov 16, 2018 7:25 am

Post

proxxon wrote: Mon Nov 14, 2022 12:44 pm
klew wrote: Fri Nov 04, 2022 12:16 pm - dodanie wsparcia dla ikonki (i) - urządzenie przesyła dane z (i) do serwera zaraz po połączeniu i serwer to buforuje i odpowiada za urządzenie, gdy ono śpi, a apka prosi o dane
- dodanie wsparcie do przełączania w tryb konfiguracyjny z poziomu Clouda - gdy urządzenie śpi, to serwer zapisuje request i przesyła go do urządzenia w odpowiedzi na próbę rejestracji/połączenia do serwera.
1) Dzisiaj na próbę usunąłem jeden termometr (na GG 4.20.12), który ma włączone deep sleep na 8 minut. Po ponownym połączeniu do serwera zniknęła mi ikonka (i). Czy nie powinna się pojawić właśnie z buforowanym informacjami?
2) Czy to przełączanie z deep-sleep do konfiguracji działa/będzie działać z GG czy tylko z Zamelem?
Wrzuciłem poprawki do GG.
https://gui-generic-builder.supla.io/
proxxon
Posts: 99
Joined: Wed Nov 22, 2017 2:42 pm

Post

krycha88 wrote: Mon Nov 14, 2022 6:30 pm Wrzuciłem poprawki do GG.
Wgrałem GG 5.1.6 i jest lepiej. Teraz pokazuje się (i) ale "czas pracy" to ciągle 5s - czyli tak jakby w ogóle się nie odświeżał nawet w trakcie wybudzeń.
krycha88
Posts: 5417
Joined: Fri Nov 16, 2018 7:25 am

Post

proxxon wrote: Tue Nov 15, 2022 7:25 pm Wgrałem GG 5.1.6 i jest lepiej. Teraz pokazuje się (i) ale "czas pracy" to ciągle 5s - czyli tak jakby w ogóle się nie odświeżał nawet w trakcie wybudzeń.
Wg mnie ten czas taki będzie, przy pełnym usypianiu. Trzeba by usypiać urządzenie w trybie Light-sleep, a na tym chyba nam nie zależy w GG.
https://gui-generic-builder.supla.io/
User avatar
lukfud
Posts: 2266
Joined: Thu Nov 23, 2017 11:33 pm
Location: Warszawa

Post

Pokazuje mi się na stronie logowania do Cloud link "Zarejestruj Twoją instancję.. ", choć jest już zarejestrowana.
Odpaliłem nową instalację bez rejestracji i tego linku nie ma.

Nie powinno być odwrotnie?
https://www.facebook.com/groups/supladiy/
User avatar
fracz
Posts: 2274
Joined: Fri Oct 28, 2016 10:56 pm
Location: Kraków

Post

Powinno, poprawione, dzięki!
User avatar
YoMan
Posts: 2717
Joined: Thu Apr 30, 2020 5:18 pm
Location: Częstochowa

Post

nie wiem czy tutaj powinienem czy w wątku dot. integracji z GH (w razie pomyłki proszę o przeniesienie postu)
czy integracja scen z GH już działa i jeżeli tak to JAK to powinno działać? Jakoś tak kombinuję ale nic mi nie wychodzi, nie mogę odpalić żadnej sceny głosowo. Gdzieś chyba było, że tej integracji nawet w GH nie widać.
YoMan
________________________________________
Wziąłem udział w SOP2023 & SOP2024

Return to “Nowości”