Własna kompilacja GUI - wyłączanie RELAYA z poziomu kodu

petione
Posts: 91
Joined: Sat Jul 21, 2018 4:26 pm

Post

No nic tylko się cieszyć :D
Podpowiecie jeszcze chłopaki jak to zaimplementować w kodzie? :roll:
User avatar
lukfud
Posts: 2101
Joined: Thu Nov 23, 2017 11:33 pm
Location: Warszawa

Post

petione wrote: Fri Nov 26, 2021 8:22 am No nic tylko się cieszyć :D
Podpowie jeszcze chłopaki jak to zaimplementować w kodzie? :roll:

Code: Select all

dimmer->getChannel()->getValueBrightness();
Ogólnie zajrzyj do działu Arduino IDE viewforum.php?f=61
Sporo tam Krzysztof opisał odnośnie możliwości biblioteki ;)
https://www.facebook.com/groups/supladiy/
petione
Posts: 91
Joined: Sat Jul 21, 2018 4:26 pm

Post

Czytałem wątek viewforum.php?f=61&start=25#:~:text=Sto ... 85dzeniach niestety mam problemy z zapisem do pamięci dowolnej zmiennej ale generalnie wartości ustawionej na ściemniaczu i oczywiście odczycie z pamięci tak aby po restarcie wartość dimmera została przywrócona do stanu przed restartem. Pomożecie? :roll:
krycha88
Posts: 5208
Joined: Fri Nov 16, 2018 7:25 am

Post

petione wrote: Mon Nov 29, 2021 10:06 am Czytałem wątek viewforum.php?f=61&start=25#:~:text=Sto ... 85dzeniach niestety mam problemy z zapisem do pamięci dowolnej zmiennej ale generalnie wartości ustawionej na ściemniaczu i oczywiście odczycie z pamięci tak aby po restarcie wartość dimmera została przywrócona do stanu przed restartem. Pomożecie? :roll:
Ale taki problem występuje w GUI-Generic?
https://gui-generic-builder.supla.io/
petione
Posts: 91
Joined: Sat Jul 21, 2018 4:26 pm

Post

krycha88 wrote: Mon Nov 29, 2021 10:16 am
petione wrote: Mon Nov 29, 2021 10:06 am Czytałem wątek viewforum.php?f=61&start=25#:~:text=Sto ... 85dzeniach niestety mam problemy z zapisem do pamięci dowolnej zmiennej ale generalnie wartości ustawionej na ściemniaczu i oczywiście odczycie z pamięci tak aby po restarcie wartość dimmera została przywrócona do stanu przed restartem. Pomożecie? :roll:
Ale taki problem występuje w GUI-Generic?
Nie, w żadnym wypadku, próbuję tylko twój soft trochę zmodyfikować pod siebie i chciałbym ten parametr regulować z poziomu kodu.
User avatar
klew
Posts: 8357
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

petione wrote: Mon Nov 29, 2021 10:06 am Czytałem wątek viewforum.php?f=61&start=25#:~:text=Sto ... 85dzeniach niestety mam problemy z zapisem do pamięci dowolnej zmiennej ale generalnie wartości ustawionej na ściemniaczu i oczywiście odczycie z pamięci tak aby po restarcie wartość dimmera została przywrócona do stanu przed restartem. Pomożecie? :roll:
Kanał Dimmera potrafi przechowywać dane w pamięci, o ile zostało to skonfigurowane. Wtedy biblioteka sama zapisuje stan i odczytuje go po restarcie.
Widzimy się na Supla Offline Party vol. 2 :!:
petione
Posts: 91
Joined: Sat Jul 21, 2018 4:26 pm

Post

klew wrote: Mon Nov 29, 2021 11:00 am
petione wrote: Mon Nov 29, 2021 10:06 am Czytałem wątek viewforum.php?f=61&start=25#:~:text=Sto ... 85dzeniach niestety mam problemy z zapisem do pamięci dowolnej zmiennej ale generalnie wartości ustawionej na ściemniaczu i oczywiście odczycie z pamięci tak aby po restarcie wartość dimmera została przywrócona do stanu przed restartem. Pomożecie? :roll:
Kanał Dimmera potrafi przechowywać dane w pamięci, o ile zostało to skonfigurowane. Wtedy biblioteka sama zapisuje stan i odczytuje go po restarcie.
Czyli konfigurując tak

Code: Select all

auto dimmer = new Supla::Control::DimmerLeds(2);
trzeba zapewne coś jeszcze dodadać? (niestety nie znalazłem przykładu na forum albo mi gdzie umknęło)

Drugie pytanie, czy koniecznie musi być dodany fizyczny pin jako argument ponieważ według mojego zamysłu miałby to być kanał wirtualny służący wyłącznie do regulacji zmiennej.
User avatar
klew
Posts: 8357
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

petione wrote: Mon Nov 29, 2021 11:28 am Czyli konfigurując tak

Code: Select all

auto dimmer = new Supla::Control::DimmerLeds(2);
trzeba zapewne coś jeszcze dodadać? (niestety nie znalazłem przykładu na forum albo mi gdzie umknęło)

Drugie pytanie, czy koniecznie musi być dodany fizyczny pin jako argument ponieważ według mojego zamysłu miałby to być kanał wirtualny służący wyłącznie do regulacji zmiennej.
Możesz użyć klasy bazowej Dimmer - tylko nie pamiętam, czy tam nie trzeba dodać własnej implementacji jakiejś metody, aby to ruszyło. Jeśli się skompiluje, to będzie ok.
Aby pamięć działała, to trzeba dodać instancję klasy Storage - tutaj jest wątek o tym: viewtopic.php?f=61&t=7162
Ale GUI Generic pewnie klasę Storage też tworzy - także musiałbyś się zoruentować jak to jest tutaj zrobione.
Widzimy się na Supla Offline Party vol. 2 :!:
petione
Posts: 91
Joined: Sat Jul 21, 2018 4:26 pm

Post

Kurcze mam problem z odtworzeniem stanu przekaźnika po restarcie:
Przekaźnik dodany globalnie

Code: Select all

auto relay = new Supla::Control::Relay(5);
Przy zmianie stanu na terminalu "Wrote 1 bytes to storage at 24"
A w setupie

Code: Select all

relay->setDefaultStateRestore();
I niestety po restarcie nie przywraca poprzedniego stanu. Nie mam już pomysłu czego jeszcze brakuje.
Dodanie
relay->setDefaultStateOn();
też nie powoduje załączenia przekaźnika po restarcie.
Robiłem oczywiście na podstawie wątku "Przekaźniki/Relay w SuplaDevice Arduino IDE"
Kod to modyfikowany GUI wyłącznie w pliku GUI-Generic.ino i obecnie tylko przez dodanie powyższych wpisów
krycha88
Posts: 5208
Joined: Fri Nov 16, 2018 7:25 am

Post

a czy czasami kod z GG nie zmienia Ci tych ustawień :P
https://gui-generic-builder.supla.io/

Return to “GUI Generic”