Aktualizacja SuplaDevice

cino111
Posts: 714
Joined: Mon May 07, 2018 8:00 pm

Post

Dla przekaźników chodzi wlasnie o stan. Jak to bedzie to już super. Kolejne to przycisk do przekaznika .
User avatar
klew
Posts: 13907
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

cino111 wrote: Sat Oct 26, 2019 11:15 am Dla przekaźników chodzi wlasnie o stan. Jak to bedzie to już super. Kolejne to przycisk do przekaznika .
Poprawiłem ten błąd z wysyłaniem złego stanu przekaźników po utracie połączenia. Stan ciągle nie jest zapisywany do trwałej pamięci, więc po resecie urządzenia stan nie będzie pamiętany, natomiast utrata połączenia z serwerem już działa ok.
Kod jest dostępny tutaj https://github.com/klew/arduino/tree/develop
Jest to na razie wersja bez licznika impulsów.
Jest też otwarty pull request do oficjalnego githuba na branch develop.
Najlepsze suple dla Twojego domu :mrgreen:
cino111
Posts: 714
Joined: Mon May 07, 2018 8:00 pm

Post

Super. Stan przekaźnika po zaniku zasilania nie jest potrzebny (no chyba że dla rolet/elektrozaworów).
Skompilowałem program z przykładów - sam przekaźnik, ale nie chce się połączyć z cloudem. Na routerze jest widoczny.
Poniżej logi.
Rozumiem, że biblioteki Ethernet już nie potrzebuję? To co potrzebne jest zainicjowane już w bibliotece SuplaDevice?
PS. Czujniki DS18B20 można wpinać tylko po jednym na GPIO?

Code: Select all

localIP: 192.168.1.30
subnetMask: 255.255.255.0
gatewayIP: 192.168.1.1
dnsServerIP: 192.168.1.1
Current status: SuplaDevice initialized
Current status: Not connected
Establishing connection with: 192.168.1.108 (port: 2015)
Connected
Current status: Register in progress
Sending: [53 55 50 4C 41 B 1 0 0 0 43 0 0 0 7F 1 0 0 1 0 0 0 30 30 63 66 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 D3 76 DB 54 71 2B ED 75 D2 D 28 F0 4B 9F B3 5F 41 52 44 55 49 4E 4F 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 2E 37 2E 30 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 31 39 32 2E 31 36 38 2E 31 2E 31 30 38 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 54 B 0 0 EF 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 54 B 0 0 EF 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
Sending: [53 55 50 4C 41 ]
Received: [53 55 50 4C 41 B 1 0 0 0 1E 0 0 0 2 0 0 0 1 A 53 55 50 4C 41 ]
Current status: Protocol version error
Current status: Not connected
Establishing connection with: 192.168.1.108 (port: 2015)
User avatar
klew
Posts: 13907
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

cino111 wrote: Sun Oct 27, 2019 8:14 am Super. Stan przekaźnika po zaniku zasilania nie jest potrzebny (no chyba że dla rolet/elektrozaworów).
Skompilowałem program z przykładów - sam przekaźnik, ale nie chce się połączyć z cloudem. Na routerze jest widoczny.
Poniżej logi.
Rozumiem, że biblioteki Ethernet już nie potrzebuję? To co potrzebne jest zainicjowane już w bibliotece SuplaDevice?
PS. Czujniki DS18B20 można wpinać tylko po jednym na GPIO?

Code: Select all

Current status: Protocol version error
Current status: Not connected
Establishing connection with: 192.168.1.108 (port: 2015)
Biblioteka ethernet jest potrzebna.
Dostałeś od serwera odpowiedź "protocol version error" - tutaj raczej nic nie było zmieniane. Spróbuj skompilować bibliotekę z oficjalnego źródła i zobacz czy problem zniknie. Albo sprawdź na oficjalnym serwerze.
Obsługi DS jeszcze nie zmieniałem, więc jest tylko podstawowa obsługa i samemu trzeba pisać jak czytać temperaturę. Docelowo będzie można wiele ds na jeden pin.
Najlepsze suple dla Twojego domu :mrgreen:
User avatar
pzygmunt
Posts: 20302
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Been thanked: 59 times

Post

Do SuplaDevice trzeba jeszcze dodać metodę umożliwiającą obniżenie wersji do niższej dlatego, że branch develop korzysta z wersji 11, a oficjalnie serwer z 10tki.

Coś na kształt
https://github.com/SUPLA/supla-espressi ... nn.c#L1274
https://github.com/SUPLA/supla-espressi ... dule.h#L22
SUPLA.... Nareszcie w domu.
cino111
Posts: 714
Joined: Mon May 07, 2018 8:00 pm

Post

pzygmunt wrote: Sun Oct 27, 2019 10:32 am Do SuplaDevice trzeba jeszcze dodać metodę umożliwiającą obniżenie wersji do niższej dlatego, że branch develop korzysta z wersji 11, a oficjalnie serwer z 10tki.

Coś na kształt
https://github.com/SUPLA/supla-espressi ... nn.c#L1274
https://github.com/SUPLA/supla-espressi ... dule.h#L22
@klew naniesiesz zmiany w bibliotece?
User avatar
klew
Posts: 13907
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

cino111 wrote: Sun Oct 27, 2019 1:10 pm
pzygmunt wrote: Sun Oct 27, 2019 10:32 am Do SuplaDevice trzeba jeszcze dodać metodę umożliwiającą obniżenie wersji do niższej dlatego, że branch develop korzysta z wersji 11, a oficjalnie serwer z 10tki.

Coś na kształt
https://github.com/SUPLA/supla-espressi ... nn.c#L1274
https://github.com/SUPLA/supla-espressi ... dule.h#L22
@klew naniesiesz zmiany w bibliotece?
Tak, tylko nie wiem o której dziś dotrę do domu ;)
A masz najnowszą wersję serwera? Bo u mnie na oficjalnym serwerze działało wczoraj bez problemu.
Najlepsze suple dla Twojego domu :mrgreen:
cino111
Posts: 714
Joined: Mon May 07, 2018 8:00 pm

Post

klew wrote: Sun Oct 27, 2019 4:49 pm
cino111 wrote: Sun Oct 27, 2019 1:10 pm
pzygmunt wrote: Sun Oct 27, 2019 10:32 am Do SuplaDevice trzeba jeszcze dodać metodę umożliwiającą obniżenie wersji do niższej dlatego, że branch develop korzysta z wersji 11, a oficjalnie serwer z 10tki.

Coś na kształt
https://github.com/SUPLA/supla-espressi ... nn.c#L1274
https://github.com/SUPLA/supla-espressi ... dule.h#L22
@klew naniesiesz zmiany w bibliotece?
Tak, tylko nie wiem o której dziś dotrę do domu ;)
A masz najnowszą wersję serwera? Bo u mnie na oficjalnym serwerze działało wczoraj bez problemu.
Właśnie wpisałem oficjalny serwer i faktycznie się podpiął. Działa tak jak powinno. Świetna robota.
Co do mojej instancji to nie wiem dlaczego jest inaczej. Mam najnowszą dostępną wersję serwera. Da pewności zaktualizowałem swojego clouda, ale dalej to samo.
User avatar
pzygmunt
Posts: 20302
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Been thanked: 59 times

Post

cloud.supla.org chodzi na wersji nieoficjalnej z uwagi na to, że potrzebujemy na produkcji niektóre funkcjonalności realizowane przez protokół v11
SUPLA.... Nareszcie w domu.
User avatar
klew
Posts: 13907
Joined: Thu Jun 27, 2019 12:16 pm
Location: Wrocław
Has thanked: 134 times
Been thanked: 137 times

Post

pzygmunt wrote: Sun Oct 27, 2019 5:54 pm cloud.supla.org chodzi na wersji nieoficjalnej z uwagi na to, że potrzebujemy na produkcji niektóre funkcjonalności realizowane przez protokół v11
Przy okazji chciałbym zapytać o te wersje używane w protokole.
U cino111 wyszło, że urządzenie miało wyższą wersję niż serwer:

Code: Select all

Sending: [53 55 50 4C 41 *B* 1 0 0 .... ]
Sending: [53 55 50 4C 41 ]
Received: [53 55 50 4C 41 *B* 1 0 0 0 1E 0 0 0 2 0 0 0 1 A 53 55 50 4C 41 ]
Wersja leci w pierwszym bajcie po słowie "SUPLA". Tutaj polecaiło 0xB, czyli 11. Czemu serwer odpowiedział też 0xB, skoro wspiera maksymalnie wersję 10?

Drugie pytanie: zmieniłem tą wersję na 10. W odpowiedz serwera na rejestrację otrzymuję "OK", ale serwer podaje też "Version" i "min version". Obie te wartości wysyła 0xB, czyli 11:

Code: Select all

Received: [53 55 50 4C 41 A 1 0 0 0 46 0 0 0 7 0 0 0 3 0 0 0 78 *B* *B* 53 55 50 4C 41 ]
To jest jakiś błąd? Co te parametry mają oznaczać?
W odpowiedzi u cino111 widać, że serwer zwrócił "min version" = 1, a "Version" = 10, co wydaje mi się sensownym.
Najlepsze suple dla Twojego domu :mrgreen:

Return to “Arduino IDE”