Aktualizacja SuplaDevice

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

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 .
User avatar
klew
Posts: 223
Joined: Thu Jun 27, 2019 12:16 pm

Sat Oct 26, 2019 10:38 pm

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.
cino111
Posts: 707
Joined: Mon May 07, 2018 8:00 pm

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

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: 223
Joined: Thu Jun 27, 2019 12:16 pm

Sun Oct 27, 2019 10:00 am

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.
User avatar
pzygmunt
Posts: 7076
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Contact:

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
cino111
Posts: 707
Joined: Mon May 07, 2018 8:00 pm

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?
User avatar
klew
Posts: 223
Joined: Thu Jun 27, 2019 12:16 pm

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.
cino111
Posts: 707
Joined: Mon May 07, 2018 8:00 pm

Sun Oct 27, 2019 5:33 pm

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: 7076
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Contact:

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
User avatar
klew
Posts: 223
Joined: Thu Jun 27, 2019 12:16 pm

Sun Oct 27, 2019 10:54 pm

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.
Post Reply