Aktualizacja SuplaDevice

cino111
Posty: 712
Rejestracja: pn maja 07, 2018 8:00 pm

sob paź 26, 2019 11:15 am

Dla przekaźników chodzi wlasnie o stan. Jak to bedzie to już super. Kolejne to przycisk do przekaznika .
Awatar użytkownika
klew
Posty: 1558
Rejestracja: czw cze 27, 2019 12:16 pm

sob paź 26, 2019 10:38 pm

cino111 pisze:
sob paź 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
Posty: 712
Rejestracja: pn maja 07, 2018 8:00 pm

ndz paź 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?

Kod: Zaznacz cały

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)
Awatar użytkownika
klew
Posty: 1558
Rejestracja: czw cze 27, 2019 12:16 pm

ndz paź 27, 2019 10:00 am

cino111 pisze:
ndz paź 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?

Kod: Zaznacz cały

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.
Awatar użytkownika
pzygmunt
Posty: 9645
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontaktowanie:

ndz paź 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
Posty: 712
Rejestracja: pn maja 07, 2018 8:00 pm

ndz paź 27, 2019 1:10 pm

pzygmunt pisze:
ndz paź 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?
Awatar użytkownika
klew
Posty: 1558
Rejestracja: czw cze 27, 2019 12:16 pm

ndz paź 27, 2019 4:49 pm

cino111 pisze:
ndz paź 27, 2019 1:10 pm
pzygmunt pisze:
ndz paź 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
Posty: 712
Rejestracja: pn maja 07, 2018 8:00 pm

ndz paź 27, 2019 5:33 pm

klew pisze:
ndz paź 27, 2019 4:49 pm
cino111 pisze:
ndz paź 27, 2019 1:10 pm
pzygmunt pisze:
ndz paź 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.
Awatar użytkownika
pzygmunt
Posty: 9645
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontaktowanie:

ndz paź 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
Awatar użytkownika
klew
Posty: 1558
Rejestracja: czw cze 27, 2019 12:16 pm

ndz paź 27, 2019 10:54 pm

pzygmunt pisze:
ndz paź 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:

Kod: Zaznacz cały

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:

Kod: Zaznacz cały

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.
ODPOWIEDZ

Wróć do „Arduino IDE”