Aktualizacja SuplaDevice

Awatar użytkownika
klew
Posty: 567
Rejestracja: czw cze 27, 2019 12:16 pm

wt lut 11, 2020 9:27 am

Na moim branchu pojawiły się pierwsze przekaźniki "po nowemu".

Jak na razie jest element Relay i VirtualRelay.
Relay pozwala na sterowanie dowolnym przekaźnikiem (włączanym stanem wysokim lub niskim).
VirtualRelay to wirtualny przekaźnik, który nie operauje na fizycznych GPIO, tylko pamięta swój stan w zmiennej.

Aby używać, trzeba dodać include:

Kod: Zaznacz cały

#include <supla/control/virtual_relay.h>
#include <supla/control/relay.h>
i w setup dodać:

Kod: Zaznacz cały

new Supla::Control::Relay(PIN1); // przekaźnik załączany stanem wysokim
new Supla::Control::Relay(PIN2, false); // przekaźnik załączany stanem niskim
new Supla::Control::VirtualRelay(); // wirtualny przekaźnik niepowiązany ze sprzętem
Jeśli ktoś chce sterować przekaźnikiem także z programu, to trzeba sobie zapisać wskaźnik do niego do jakiejś zmiennej, np.:

Kod: Zaznacz cały

// zmienna globalna
Supla::Control:Relay *mojPrzekaźnik = nullptr;
...
// w setup:
mojPrzekaznik = new Supla::Control::Relay(PIN1);
Metody do sterowania przekaźnikiem to turnOn, turnOff, toggle. Odczyt stanu przez metodę "isOn()" (https://github.com/klew/arduino/blob/21 ... .h#L72-L99)

W następnej kolejności dodam jeszcze przekaźnik bistabilny (taki, do którego podajemy impuls, aby go załączyć i impuls, aby go wyłączyć, a stan czytamy z innego GPIO). Po przekaźnikach kolej na długo wyczekiwany button ;)
elmaya
Posty: 661
Rejestracja: śr cze 27, 2018 5:48 pm
Lokalizacja: Sevilla

wt lut 11, 2020 9:46 am

wszelkie komentarze do „BinarySensor”, ponieważ usunąłeś „Sensor NO”?
Awatar użytkownika
klew
Posty: 567
Rejestracja: czw cze 27, 2019 12:16 pm

wt lut 11, 2020 10:11 am

elmaya pisze:
wt lut 11, 2020 9:46 am
wszelkie komentarze do „BinarySensor”, ponieważ usunąłeś „Sensor NO”?
Tak, zapomniałem o tym napisać.

Sensro NO został zastąpiony elementem BinarySensor.

Dodajemy include:

Kod: Zaznacz cały

#include <supla/sensor/binary_sensor.h>
I w setup:

Kod: Zaznacz cały

new Supla::Sensor::BinarySensor(INPUT_PIN1, true); // drugi parametr na true włącza internal pullup
I mamy sensor NO ;)
Awatar użytkownika
pzygmunt
Posty: 7781
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontaktowanie:

wt lut 11, 2020 10:25 am

BinarySensor... z-wave ?
Lepiej jak sensor to będzie sensor dlatego, że nigdzie indziej nie występuje określenie "BinarySensor".
lukfud
Posty: 152
Rejestracja: czw lis 23, 2017 11:33 pm
Lokalizacja: Warszawa

wt lut 11, 2020 10:28 am

Czy jest możliwość używania dwóch bibliotek SuplaDevice (nowej i starej) w zależności od sketchu?
.newbie
Awatar użytkownika
klew
Posty: 567
Rejestracja: czw cze 27, 2019 12:16 pm

wt lut 11, 2020 10:40 am

pzygmunt pisze:
wt lut 11, 2020 10:25 am
BinarySensor... z-wave ?
Lepiej jak sensor to będzie sensor dlatego, że nigdzie indziej nie występuje określenie "BinarySensor".
Binary, bo operuje 0/1. "Sensor" może mierzyć np. temperaturę i on nie jest wtedy "binary"

Nazwa binary sensor nie jest chyba przez nikogo zastrzeżona. Jest w Fibaro, w Home Assistant, w ESPhome.
Ale chętnie posłucham propozycji na nazwę na sensor zwracający true/false, 0/1, on/off, open/closed.
Rozważałem jedynie wyrzucenie słowa "Sensor" i zostawienie "Supla::Sensor::Binary"
Awatar użytkownika
klew
Posty: 567
Rejestracja: czw cze 27, 2019 12:16 pm

wt lut 11, 2020 10:42 am

lukfud pisze:
wt lut 11, 2020 10:28 am
Czy jest możliwość używania dwóch bibliotek SuplaDevice (nowej i starej) w zależności od sketchu?
Można podmieniać biblioteki ;). Druga opcja to zmiana nazw, ale trzeba by trochę powalczyć, aby zmiana nazwy zadziałała.
Jeśli zdecydujesz się na zmianę nazwy, to najlpiej jakbyś sobie zrobił tą operację na starej bibliotece, bo tam nic się nie zmienia i nie trzeba będzie się męczyć z aktualizacjami.
lukfud
Posty: 152
Rejestracja: czw lis 23, 2017 11:33 pm
Lokalizacja: Warszawa

wt lut 11, 2020 11:26 am

klew pisze:
wt lut 11, 2020 10:42 am
lukfud pisze:
wt lut 11, 2020 10:28 am
Czy jest możliwość używania dwóch bibliotek SuplaDevice (nowej i starej) w zależności od sketchu?
Można podmieniać biblioteki ;). Druga opcja to zmiana nazw, ale trzeba by trochę powalczyć, aby zmiana nazwy zadziałała.
Jeśli zdecydujesz się na zmianę nazwy, to najlpiej jakbyś sobie zrobił tą operację na starej bibliotece, bo tam nic się nie zmienia i nie trzeba będzie się męczyć z aktualizacjami.
Ok, dzięki, miałem nadzieję na prostsze rozwiązanie :)
Jest jeszcze opcja instalacji IDE z M$ Store i uruchomienia dwóch niezależnych środowisk.
.newbie
Awatar użytkownika
klew
Posty: 567
Rejestracja: czw cze 27, 2019 12:16 pm

wt lut 11, 2020 11:36 am

lukfud pisze:
wt lut 11, 2020 11:26 am
klew pisze:
wt lut 11, 2020 10:42 am
lukfud pisze:
wt lut 11, 2020 10:28 am
Czy jest możliwość używania dwóch bibliotek SuplaDevice (nowej i starej) w zależności od sketchu?
Można podmieniać biblioteki ;). Druga opcja to zmiana nazw, ale trzeba by trochę powalczyć, aby zmiana nazwy zadziałała.
Jeśli zdecydujesz się na zmianę nazwy, to najlpiej jakbyś sobie zrobił tą operację na starej bibliotece, bo tam nic się nie zmienia i nie trzeba będzie się męczyć z aktualizacjami.
Ok, dzięki, miałem nadzieję na prostsze rozwiązanie :)
Jest jeszcze opcja instalacji IDE z M$ Store i uruchomienia dwóch niezależnych środowisk.
Tak też można.
Może wieczorem zrobię na szybko starą bibliotekę pod inną nazwą i udostępnię zipa.
elmaya
Posty: 661
Rejestracja: śr cze 27, 2018 5:48 pm
Lokalizacja: Sevilla

wt lut 11, 2020 11:40 am

klew pisze:
wt lut 11, 2020 11:36 am
lukfud pisze:
wt lut 11, 2020 11:26 am
klew pisze:
wt lut 11, 2020 10:42 am


Można podmieniać biblioteki ;). Druga opcja to zmiana nazw, ale trzeba by trochę powalczyć, aby zmiana nazwy zadziałała.
Jeśli zdecydujesz się na zmianę nazwy, to najlpiej jakbyś sobie zrobił tą operację na starej bibliotece, bo tam nic się nie zmienia i nie trzeba będzie się męczyć z aktualizacjami.
Ok, dzięki, miałem nadzieję na prostsze rozwiązanie :)
Jest jeszcze opcja instalacji IDE z M$ Store i uruchomienia dwóch niezależnych środowisk.
Tak też można.
Może wieczorem zrobię na szybko starą bibliotekę pod inną nazwą i udostępnię zipa.
Więc w końcu zrobisz coś pożytecznego. :lol:
ODPOWIEDZ