Opis protokołu Supla
-
Duch__
- Posts: 2199
- Joined: Wed Aug 24, 2016 7:26 pm
- Location: Opole
- Been thanked: 6 times
Czy jest dostępny gdzieś opis protokołu łączności Arduino / ESP8266 z serwerem Supla? Dostępne źródła powodują u mnie ból głowy przy próbie ich analizy
Przyjemniej by się przeczytało obszerny opis słowny. Pytam gdyż podobno ma być to otwarty protokół, a opisu zero.
-
pzygmunt
- Posts: 20302
- Joined: Tue Jan 19, 2016 9:26 am
- Location: Paczków
- Been thanked: 59 times
Dokumentacji protokołu jeszcze nie ma. Za jakiś czas pewnie powstanie.
Dla zainteresowanych to tutaj są opisane struktury:
https://github.com/SUPLA/supla-core/blo ... on/proto.h
A tutaj funkcje wykorzystywane do komunikacji (srpc_dcs_async_*):
https://github.com/SUPLA/supla-core/blo ... mon/srpc.h
Dla zainteresowanych to tutaj są opisane struktury:
https://github.com/SUPLA/supla-core/blo ... on/proto.h
A tutaj funkcje wykorzystywane do komunikacji (srpc_dcs_async_*):
https://github.com/SUPLA/supla-core/blo ... mon/srpc.h
SUPLA.... Nareszcie w domu.
-
Duch__
- Posts: 2199
- Joined: Wed Aug 24, 2016 7:26 pm
- Location: Opole
- Been thanked: 6 times
Za jakiś czas to znaczy za ile? Chcecie by projekt się rozwijał to dajcie ludziom protokół, bo na razie to cały system opiera się na 2-3 istniejących płytkach i tylko garstce ludzi którzy wiedzą jak on działa.
-
misiekg
- Posts: 1
- Joined: Mon Mar 06, 2017 9:51 pm
Witajcie, jakieś nowości w temacie opisu protokołu? Też byłbym zainteresowany.
-
jacekl
- Posts: 12
- Joined: Wed Apr 28, 2021 2:05 pm
Już coś w kwestii dokumentacji protokołu wiadomo?
-
klew
- Posts: 13908
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 134 times
- Been thanked: 137 times
Jest jeden "stary" opis:
https://github.com/SUPLA/supla-core/blo ... l-works.md
Da to ogólny pogląd na to co się dzieje.
W SuplaDevice są też domyślnie włączone logi zawierające całą komunikację (jako ciąg bajtów reprezentowanych przez hexy).
Na podstawie tych danych można próbować ogarnąć protokół.
Opis wszystkich typów wiadomości oraz przesyłanych struktur jest w proto.h, do którego wcześniej pzygmunt dał link.
https://github.com/SUPLA/supla-core/blo ... l-works.md
Da to ogólny pogląd na to co się dzieje.
W SuplaDevice są też domyślnie włączone logi zawierające całą komunikację (jako ciąg bajtów reprezentowanych przez hexy).
Na podstawie tych danych można próbować ogarnąć protokół.
Opis wszystkich typów wiadomości oraz przesyłanych struktur jest w proto.h, do którego wcześniej pzygmunt dał link.
Najlepsze suple dla Twojego domu 
-
jacekl
- Posts: 12
- Joined: Wed Apr 28, 2021 2:05 pm
To "how protocol works" znalazłem prędzej, ale trzeba mieć sporo poczucia humoru, żeby to nazwać dokumentacją.
No ale lepsze to niż nic.
No ale lepsze to niż nic.
Co masz na myśli pisząc SuplaDevice? Jestem w tym świecie nowy, dostałem zlecenie zobaczyć czy się da protokół supli ogarnąć i szukam wszelkich informacji.W SuplaDevice są też domyślnie
-
klew
- Posts: 13908
- Joined: Thu Jun 27, 2019 12:16 pm
- Location: Wrocław
- Has thanked: 134 times
- Been thanked: 137 times
SuplaDevice to biblioteka dla urządzeń wykonawczych w Arduino IDE. Możesz ją zainstalować bezpośrednio z managera bibliotek w Arduino IDE. Jest tam klika przykładów aplikacji na Arduino Mega, ESP82xx, ESP32 (większość przykładów działa na każdej z tych platform).jacekl wrote: Wed May 05, 2021 9:29 am Co masz na myśli pisząc SuplaDevice? Jestem w tym świecie nowy, dostałem zlecenie zobaczyć czy się da protokół supli ogarnąć i szukam wszelkich informacji.
Jak wgrasz i odpalisz przykład, to w logach na serialu będzie widać wszystkie wymieniane wiadomości.
Z grubsza jest to:
1. Rejestracja urządzenia na serwerze + potwierdzenie rejestracji przez serwer
2. Ustawienie "activity timeout" + odpowiedź
3. Następnie urządzenie wysyła aktualizację stanu kanałów (cyklicznie lub po ich zmianie)
4. W tym samym czasie urządzenie może dostawać wiadomości z serwera modyfikujące np. stan przekaźnika
5. Poza tym co ~30 s lecą wewnętrzne pingi.
Najlepsze suple dla Twojego domu 
-
jacekl
- Posts: 12
- Joined: Wed Apr 28, 2021 2:05 pm
Mów mi jeszcze 
Nie mam bladego pojęcia o Arduino, nigdy nie widziałem ich IDE, nie jestem elektronikiem ani embedded developerem...
Jestem programistą od strony serwera, chciałbym umieć przyjąć połączenie TCP/IP od urządzenia działającego z firmwarem supli i z nim pogadać.
Czyli bardziej interesuje mnie strona serwera a nie klienta, choć protokół obejmuje obie strony, dlatego pytam o protokół.
Nie mam bladego pojęcia o Arduino, nigdy nie widziałem ich IDE, nie jestem elektronikiem ani embedded developerem...
Jestem programistą od strony serwera, chciałbym umieć przyjąć połączenie TCP/IP od urządzenia działającego z firmwarem supli i z nim pogadać.
Czyli bardziej interesuje mnie strona serwera a nie klienta, choć protokół obejmuje obie strony, dlatego pytam o protokół.
