supla-device na Linux

kris.gie
Posts: 400
Joined: Thu Apr 28, 2016 4:24 pm
Location: Katowice

Post

klew wrote: Mon May 23, 2022 8:37 am
Proszę o podpowiedź jak użyć kanału temperatury i wilgotności (chyba jest taka możliwość?). A najlepiej to więcej informacji dla laika.
User avatar
klew
Posts: 10747
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

shimano73 wrote: Wed Nov 16, 2022 9:23 pm Jak używać VirtualRelay ? Na moim terminalu Wyse uruchomiłem sobie sterowanie przekaźnikiem po modbusie i chciałbym nim sterować z aplikacji. Potrzebowałbym stan VirtualRelay np w pliku txt, da się ?
Dodałem typ kanału "CmdRelay". W przykładzie w readme jest pokazane jak tego użyć do zapisania stanu.
tomekk87
Posts: 192
Joined: Fri Aug 02, 2019 12:19 pm

Post

Proszę o odpowiedź czy za pomocą supla-device na Linux można odczytywać dane z własnego brokera MQTT i wyświetlać w formie np. kanału temp. w supli? Jeśli tak to gdzie znajdę przykład?
User avatar
klew
Posts: 10747
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

tomekk87 wrote: Thu Dec 22, 2022 9:44 pm Proszę o odpowiedź czy za pomocą supla-device na Linux można odczytywać dane z własnego brokera MQTT i wyświetlać w formie np. kanału temp. w supli? Jeśli tak to gdzie znajdę przykład?
Aktualnie jeszcze nie ma obsługi MQTT.

W którejś wersji "supla-virtual-device" było wsparcie dla MQTT.
W supla-device trzeba jeszcze na to poczekać. Alternatywnie jesli jesteś w stanie jakoś wartośc parametru odczytać z MQTT i zapisać do pliku, to dalej z pliku dane wrzucisz do Supli.
bigthomas
Posts: 235
Joined: Mon Aug 12, 2019 3:35 pm

Post

Mam pytanie odnośnie "CmdRelay".
Wykorzystałem to w trochę inny sposób :) tzn. nie zapisuje stanu do pliku tylko uruchamiam nim skrypt w którym mam zapytanie API do urządzenia którym wykonuję pewną akcję. Działa bez problemu, ale w logach jest informacja "Failed writing body" o co chodzi?

Code: Select all

INFO[1671785487.392858] Relay[0] turn ON (duration 0 ms)
DEBUG[1671785487.392873] Channel(0) value changed to 1
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    90  100    90    0     0   1232      0 --:--:-- --:--:-- --:--:--  1232
[b](23) Failed writing body[/b]
Druga kwestia to czy jest możliwość wywołania akcji na danym przekaźniku tak jak jest to w ESP "new Supla::Control::VirtualRelay()->turnOff()", aby móc po pewnym czasie go wyłączyć?
Wiem że mogę zmienić na automat schodowy i w ten sposób to realizować, ale jeżeli jest taka możliwość to dla mnie było by to lepszym rozwiązaniem.
User avatar
klew
Posts: 10747
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

bigthomas wrote: Fri Dec 23, 2022 9:01 am Mam pytanie odnośnie "CmdRelay".
Wykorzystałem to w trochę inny sposób :) tzn. nie zapisuje stanu do pliku tylko uruchamiam nim skrypt w którym mam zapytanie API do urządzenia którym wykonuję pewną akcję. Działa bez problemu, ale w logach jest informacja "Failed writing body" o co chodzi?

Code: Select all

INFO[1671785487.392858] Relay[0] turn ON (duration 0 ms)
DEBUG[1671785487.392873] Channel(0) value changed to 1
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    90  100    90    0     0   1232      0 --:--:-- --:--:-- --:--:--  1232
[b](23) Failed writing body[/b]
Druga kwestia to czy jest możliwość wywołania akcji na danym przekaźniku tak jak jest to w ESP "new Supla::Control::VirtualRelay()->turnOff()", aby móc po pewnym czasie go wyłączyć?
Wiem że mogę zmienić na automat schodowy i w ten sposób to realizować, ale jeżeli jest taka możliwość to dla mnie było by to lepszym rozwiązaniem.
To jest jakiś komunikat z tego polecenia, co odpalasz. Spróbuj go uruchomić z linii poleceń.

Natomiast odnośnie drugiego pytania - to za bardzo nie rozumiem o co chodzi. Jeśli chcesz aby samo się wyłączało po zadanym czasie, to do tego służy "automat schodowy". Jeśli nie ma być autoamtycznie po zadanym czasie, to co ma powodować wywołanie turnOff?
przygod
Posts: 112
Joined: Wed Jul 17, 2019 9:31 am

Post

klew wrote: Mon Dec 19, 2022 10:24 am
shimano73 wrote: Wed Nov 16, 2022 9:23 pm Jak używać VirtualRelay ? Na moim terminalu Wyse uruchomiłem sobie sterowanie przekaźnikiem po modbusie i chciałbym nim sterować z aplikacji. Potrzebowałbym stan VirtualRelay np w pliku txt, da się ?
Dodałem typ kanału "CmdRelay". W przykładzie w readme jest pokazane jak tego użyć do zapisania stanu.
Dziękuje serdecznie! Już zabrałem się do testowania.

ps. Z innej beczki. Czy jest jakiś powód czemu supla-device nie używa ścieżek bezwzględnych czy to u mnie jakieś braki konfiguracji?

Kilka razy po ponownym uruchomieniu zauważyłem że całość rejestruje sie z nowym guid zaś w logu znajduje coś takiego:

Code: Select all

INFO[1671791298.1671791298] GUID and AUTHKEY: loading from file var/lib/supla-device/guid_auth.yaml
ERR[1671791298.1671791298] Guid/auth file YAML error: bad file
....i wychodzi na to że supla device tworzy podsciezke var/lib/supla-device w kazdej z ktorej jest aktualnie uruchomiona.
User avatar
klew
Posts: 10747
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

przygod wrote: Fri Dec 23, 2022 10:43 am
klew wrote: Mon Dec 19, 2022 10:24 am
shimano73 wrote: Wed Nov 16, 2022 9:23 pm Jak używać VirtualRelay ? Na moim terminalu Wyse uruchomiłem sobie sterowanie przekaźnikiem po modbusie i chciałbym nim sterować z aplikacji. Potrzebowałbym stan VirtualRelay np w pliku txt, da się ?
Dodałem typ kanału "CmdRelay". W przykładzie w readme jest pokazane jak tego użyć do zapisania stanu.
Dziękuje serdecznie! Już zabrałem się do testowania.

ps. Z innej beczki. Czy jest jakiś powód czemu supla-device nie używa ścieżek bezwzględnych czy to u mnie jakieś braki konfiguracji?

Kilka razy po ponownym uruchomieniu zauważyłem że całość rejestruje sie z nowym guid zaś w logu znajduje coś takiego:

Code: Select all

INFO[1671791298.1671791298] GUID and AUTHKEY: loading from file var/lib/supla-device/guid_auth.yaml
ERR[1671791298.1671791298] Guid/auth file YAML error: bad file
....i wychodzi na to że supla device tworzy podsciezke var/lib/supla-device w kazdej z ktorej jest aktualnie uruchomiona.
Dodaj na początku / to będzie ścieżka bezwzględna. To raczej standardowe zachowanie, którego oczekuje się od apilkacji na Linuxie :)
przygod
Posts: 112
Joined: Wed Jul 17, 2019 9:31 am

Post

klew wrote: Fri Dec 23, 2022 10:45 am Dodaj na początku / to będzie ścieżka bezwzględna. To raczej standardowe zachowanie, którego oczekuje się od apilkacji na Linuxie :)
No tak, właśnie doczytałem że wersja normal używa relatywnych scieżek, wiec dodawanie ścieżki supla-device-linux do PATH było raczej słabym pomysłem :D
User avatar
klew
Posts: 10747
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław

Post

przygod wrote: Fri Dec 23, 2022 10:59 am
klew wrote: Fri Dec 23, 2022 10:45 am Dodaj na początku / to będzie ścieżka bezwzględna. To raczej standardowe zachowanie, którego oczekuje się od apilkacji na Linuxie :)
No tak, właśnie doczytałem że wersja normal używa relatywnych scieżek, wiec dodawanie ścieżki supla-device-linux do PATH było raczej słabym pomysłem :D
Nie wiem co to "wersja normal". Masz na myśli domyślną wartość parametru ze ścieżką?

Return to “Supla-device dla Linuxa (sd4linux)”