supla-device na Linux

przygod
Posty: 97
Rejestracja: śr lip 17, 2019 9:31 am

klew pisze: pt gru 23, 2022 11:03 am Nie wiem co to "wersja normal". Masz na myśli domyślną wartość parametru ze ścieżką?
Może nie wersja, po polsku to będzie bardziej tryb :) Wybacz.
Załączniki
normal.JPG
normal.JPG (62.05 KiB) Przejrzano 429 razy
bigthomas
Posty: 234
Rejestracja: pn sie 12, 2019 3:35 pm

klew pisze: pt gru 23, 2022 10:16 am To jest jakiś komunikat z tego polecenia, co odpalasz. Spróbuj go uruchomić z linii poleceń.
Wywołując z linii komend

Kod: Zaznacz cały

curl -XGET 'XXX.XXX.XXX.XXX/api/zap?sRef=1:0:1:9:1964:13E:820000:0:0:0:'
dostaję to:

Kod: Zaznacz cały

{
 "message": "Active service is now '1:0:1:9:1964:13E:820000:0:0:0:'",
 "result": true
}
Awatar użytkownika
lukfud
Posty: 2091
Rejestracja: czw lis 23, 2017 11:33 pm
Lokalizacja: Warszawa

bigthomas pisze: pt gru 23, 2022 9:01 am 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.
Chodzi Ci o to, żeby móc wyłączyć przekaźnik w inny sposób niż przez serwer Supli?
https://www.facebook.com/groups/supladiy/
Awatar użytkownika
klew
Posty: 8184
Rejestracja: czw cze 27, 2019 12:16 pm
Lokalizacja: Wrocław

przygod pisze: pt gru 23, 2022 11:18 am
klew pisze: pt gru 23, 2022 11:03 am Nie wiem co to "wersja normal". Masz na myśli domyślną wartość parametru ze ścieżką?
Może nie wersja, po polsku to będzie bardziej tryb :) Wybacz.
Ok, teraz rozumiem.
W pliku konfiguracyjnym yaml możesz określić bezwzględną ścieżkę - wystarczy że wpiszesz tam "/var..."
Widzimy się na Supla Offline Party vol. 2 :!:
bigthomas
Posty: 234
Rejestracja: pn sie 12, 2019 3:35 pm

lukfud pisze: pt gru 23, 2022 11:54 am
bigthomas pisze: pt gru 23, 2022 9:01 am 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.
Chodzi Ci o to, żeby móc wyłączyć przekaźnik w inny sposób niż przez serwer Supli?
Bardziej mi chodziło aby wykorzystać linię komend aby móc wyłączyć dany przekaźnik, ale automat schodowy rozwiązuje problem.
Bo tak na prawdę potrzebuję aby wysłać GET'a poprzez włączenie. A żeby móc jeszcze raz uruchomić tą akcję to przekaźnik musi być w pozycji OFF.
Awatar użytkownika
klew
Posty: 8184
Rejestracja: czw cze 27, 2019 12:16 pm
Lokalizacja: Wrocław

bigthomas pisze: pt gru 23, 2022 11:44 am Wywołując z linii komend

Kod: Zaznacz cały

curl -XGET 'XXX.XXX.XXX.XXX/api/zap?sRef=1:0:1:9:1964:13E:820000:0:0:0:'
dostaję to:

Kod: Zaznacz cały

{
 "message": "Active service is now '1:0:1:9:1964:13E:820000:0:0:0:'",
 "result": true
}
bigthomas pisze: pt gru 23, 2022 9:01 am

Kod: Zaznacz cały

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]
Te wszyskie rzeczy z: " % Total ..." wraz z "Failed writing body" pochodzą z tego curla, którego odpalasz.
Widzimy się na Supla Offline Party vol. 2 :!:
maciej38
Posty: 23
Rejestracja: wt wrz 11, 2018 8:07 pm

Cześć
Czy jest szansa aby supla-dev obsługiwała kanał nasłonecznienia/promieniowania lub długości/głębokości ?

Dotychczas korzystałem z SVD i nasłonecznienie miałem na kanale długości. Sprawdzało się.

Po przejściu na supla-dev zaimplementowałem to na kanale ThermometerParsed.
O ile w samej supli widzę wartości powyżej 2000 to w grafanie już nie. Jest dobrze gdzieś do ok 600
--
Każda dostatecznie zaawansowana technologia niczym nie różni się od magii.
Arthur C. Clarke
Awatar użytkownika
klew
Posty: 8184
Rejestracja: czw cze 27, 2019 12:16 pm
Lokalizacja: Wrocław

maciej38 pisze: śr sty 04, 2023 9:08 am Cześć
Czy jest szansa aby supla-dev obsługiwała kanał nasłonecznienia/promieniowania lub długości/głębokości ?

Dotychczas korzystałem z SVD i nasłonecznienie miałem na kanale długości. Sprawdzało się.

Po przejściu na supla-dev zaimplementowałem to na kanale ThermometerParsed.
O ile w samej supli widzę wartości powyżej 2000 to w grafanie już nie. Jest dobrze gdzieś do ok 600
Dodam taki kanał. Na razie wrzuciłem issue aby temat nie przepadł https://github.com/SUPLA/supla-device/issues/40
Widzimy się na Supla Offline Party vol. 2 :!:
admoskal
Posty: 28
Rejestracja: pn gru 25, 2017 11:32 am

Witajcie.

Mam pytanie - czy supla-device obsługuje wejścia sterowane z cmd?

Próbowałem wstawić do configa coś takiego:

- type: BinaryParsed
name: PB0
source:
type: Cmd
command: "if (( ($(sudo i2cget -y 1 0x20 0x13) & 0x01 ) == 0x01)); then echo 0; else echo 1; fi"
parser:
type: Simple
refresh_time_ms: 1000


lecz nie działa...

Chciałbym zrobić na expanderze MCP23017 osiem wyjść i osiem wejść z pull-up.
Wyjścia już ładnie działają, wejść jeszcze nie potrafię obrobić.

Pozdrawiam.
admoskal
Posty: 28
Rejestracja: pn gru 25, 2017 11:32 am

Pytanie.

Podłączyłem expander MCP23017 - wstawiłem CmdRelay, przekaźniki ładnie działają na expanderze.

Mój plik konfiguracyjny wygląda tak :

# Example supla-device config file for Linux device
# https://github.com/SUPLA/supla-device

name: RockPiS
log_level: debug
state_files_path: "/home/xxxx/supla-stan"
security_level: 2 # disable certyficate verification

supla:
server: svrx.supla.org
mail: xxxx@xxxx.xxx.pl

channels:

# CmdRelay with state kept in memory and stored in storage
- type: CmdRelay
name: GPA0
initial_state: restore
cmd_on: "sudo i2cset -y 1 0x20 0x14 $(( ($(sudo i2cget -y 1 0x20 0x14) | 0x01 )))"
cmd_off: "sudo i2cset -y 1 0x20 0x14 $(( ($(sudo i2cget -y 1 0x20 0x14) & 0xfe )))"

- type: CmdRelay
name: GPA1
initial_state: restore
cmd_on: "sudo i2cset -y 1 0x20 0x14 $(( ($(sudo i2cget -y 1 0x20 0x14) | 0x02 )))"
cmd_off: "sudo i2cset -y 1 0x20 0x14 $(( ($(sudo i2cget -y 1 0x20 0x14) & 0xfd )))"

- type: CmdRelay
name: GPA2
initial_state: restore
cmd_on: "sudo i2cset -y 1 0x20 0x14 $(( ($(sudo i2cget -y 1 0x20 0x14) | 0x04 )))"
cmd_off: "sudo i2cset -y 1 0x20 0x14 $(( ($(sudo i2cget -y 1 0x20 0x14) & 0xfb )))"

- type: CmdRelay
name: GPA3
initial_state: restore
cmd_on: "sudo i2cset -y 1 0x20 0x14 $(( ($(sudo i2cget -y 1 0x20 0x14) | 0x08 )))"
cmd_off: "sudo i2cset -y 1 0x20 0x14 $(( ($(sudo i2cget -y 1 0x20 0x14) & 0xf7 )))"

- type: CmdRelay
name: GPA4
initial_state: restore
cmd_on: "sudo i2cset -y 1 0x20 0x14 $(( ($(sudo i2cget -y 1 0x20 0x14) | 0x10 )))"
cmd_off: "sudo i2cset -y 1 0x20 0x14 $(( ($(sudo i2cget -y 1 0x20 0x14) & 0xef )))"

- type: CmdRelay
name: GPA5
initial_state: restore
cmd_on: "sudo i2cset -y 1 0x20 0x14 $(( ($(sudo i2cget -y 1 0x20 0x14) | 0x20 )))"
cmd_off: "sudo i2cset -y 1 0x20 0x14 $(( ($(sudo i2cget -y 1 0x20 0x14) & 0xdf )))"

- type: CmdRelay
name: GPA6
initial_state: restore
cmd_on: "sudo i2cset -y 1 0x20 0x14 $(( ($(sudo i2cget -y 1 0x20 0x14) | 0x40 )))"
cmd_off: "sudo i2cset -y 1 0x20 0x14 $(( ($(sudo i2cget -y 1 0x20 0x14) & 0xbf )))"

- type: CmdRelay
name: GPA7
initial_state: restore
cmd_on: "sudo i2cset -y 1 0x20 0x14 $(( ($(sudo i2cget -y 1 0x20 0x14) | 0x80 )))"
cmd_off: "sudo i2cset -y 1 0x20 0x14 $(( ($(sudo i2cget -y 1 0x20 0x14) & 0x7f )))"


Konsola cały czas wyrzuca błędy :
sh: 1: Syntax error: word unexpected (expecting ")")
sh: 1: Syntax error: word unexpected (expecting ")")
sh: 1: Syntax error: word unexpected (expecting ")")
sh: 1: Syntax error: word unexpected (expecting ")")
sh: 1: Syntax error: word unexpected (expecting ")")
sh: 1: Syntax error: word unexpected (expecting ")")
sh: 1: Syntax error: word unexpected (expecting ")")
sh: 1: Syntax error: word unexpected (expecting ")")
DEBUG[1673205626.527745] Send: [53 55 50 4C 41 10 48 00 00 00 28 00 00 00 10 00 00 00 7A 17 BB 63 00 00 00 00 1C 0D 08 00 00 00 00 00 ]
DEBUG[1673205626.528057] Send: [53 55 50 4C 41 ]
DEBUG[1673205626.700750] Recv: [53 55 50 4C 41 10 1D 00 00 00 32 00 00 00 10 00 00 00 7A 17 BB 63 00 00 00 00 9E 33 0A 00 00 00 00 00 53 55 50 4C 41 ]
sh: 1: Syntax error: word unexpected (expecting ")")
sh: 1: Syntax error: word unexpected (expecting ")")
sh: 1: Syntax error: word unexpected (expecting ")")
sh: 1: Syntax error: word unexpected (expecting ")")
sh: 1: Syntax error: word unexpected (expecting ")")
sh: 1: Syntax error: word unexpected (expecting ")")
sh: 1: Syntax error: word unexpected (expecting ")")
sh: 1: Syntax error: word unexpected (expecting ")")
sh: 1: Syntax error: word unexpected (expecting ")")


Macie pomysł - gdzie coś źle wpisałem ?

Dzięki za odpowiedź.
ODPOWIEDZ

Wróć do „supla-dev”