ESP8266 - multi tcp connections

djack2017
Posts: 784
Joined: Mon Nov 27, 2017 7:36 am
Been thanked: 1 time

Post

Czy ktoś testował jednoczesne podłączenie ESP8266 do więcej niż jednego serwera IP?
Przy próbie podłączenia do drugiego serwera poprzez supla_espconn_connect(&devconn2->ESPConn),
zwraca mi rezultat:
-15 : ESPCONN_ISCONN - Already connected
Oczywiście połączenia nie ma.
Jacek
__________________________________________________________
Specjalizowane oprogramowanie do sterowników Sonoff, Gosund, Blitzwolf, Shelly i innych:
https://djack.com.pl/modules.php?name=Downloads&d_op=viewdownload&cid=54
User avatar
pzygmunt
Posts: 20302
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Been thanked: 59 times

Post

Porównywałeś wskaźniki ?
SUPLA.... Nareszcie w domu.
djack2017
Posts: 784
Joined: Mon Nov 27, 2017 7:36 am
Been thanked: 1 time

Post

Każde połączenie ma swoją strukturę devconn_params, oczywiście łączę sie na inny serwer i inny port.
Co ciekawe, jak nie podłączę się do pierwszego serwera (supla) to drugie połączenie wykonuje się poprawnie.
Jacek
__________________________________________________________
Specjalizowane oprogramowanie do sterowników Sonoff, Gosund, Blitzwolf, Shelly i innych:
https://djack.com.pl/modules.php?name=Downloads&d_op=viewdownload&cid=54
User avatar
pzygmunt
Posts: 20302
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Been thanked: 59 times

Post

Aaaa dobra... teraz doczytałem, że piszesz o supla_espconn_connect, a nie o espconn_connect.
Klient nie był projektowany do połączeń więcej niż z jednym serwerem jednocześnie.
SUPLA.... Nareszcie w domu.
djack2017
Posts: 784
Joined: Mon Nov 27, 2017 7:36 am
Been thanked: 1 time

Post

A co mu w tym przeszkadza?
Każde połaczenie ma własną obsługę (oddzielne funkcje).
Jacek
__________________________________________________________
Specjalizowane oprogramowanie do sterowników Sonoff, Gosund, Blitzwolf, Shelly i innych:
https://djack.com.pl/modules.php?name=Downloads&d_op=viewdownload&cid=54
User avatar
pzygmunt
Posts: 20302
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Been thanked: 59 times

Post

Obecnie ustalasz parametry połączenia tylko dla pojedynczego klienta.
Musiałbyś utworzyć dwóch klientów. Wtedy będzie działać.
https://github.com/SUPLA/supla-espressi ... nn.c#L1105

https://github.com/SUPLA/supla-espressi ... conn.c#L71
zmień na:

void *srpc1;
void *srpc2;

Następnie musisz cały kod odpowiednio zmodyfikować
SUPLA.... Nareszcie w domu.
djack2017
Posts: 784
Joined: Mon Nov 27, 2017 7:36 am
Been thanked: 1 time

Post

OK, poradziłem sobie. Natomiast mam następny problem:
po połączeniu TCP do mojego serwera pojawia się "client handshake start"
i oczywiście połaczenie zostaje przerwane (devconn_disconnect_cb).
Jak wyłączyć ten handshake?
Jacek
__________________________________________________________
Specjalizowane oprogramowanie do sterowników Sonoff, Gosund, Blitzwolf, Shelly i innych:
https://djack.com.pl/modules.php?name=Downloads&d_op=viewdownload&cid=54
User avatar
pzygmunt
Posts: 20302
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Been thanked: 59 times

Post

Nie wyłączysz tego przy SSL-u chyba, że chcesz wyłączyć szyfrowanie.
Sprawdź logi supla-server może masz wyłączony SSLv2
SUPLA.... Nareszcie w domu.
djack2017
Posts: 784
Joined: Mon Nov 27, 2017 7:36 am
Been thanked: 1 time

Post

OK. czyli ten "client handshake" wynika z połączenia SSL.
Rozumiem, że np z serwerem Supla mogę mieć połaczenie szyfrowane,
a z innym serwerem bez szyfrowania?
__________________________________________________________
Specjalizowane oprogramowanie do sterowników Sonoff, Gosund, Blitzwolf, Shelly i innych:
https://djack.com.pl/modules.php?name=Downloads&d_op=viewdownload&cid=54
User avatar
pzygmunt
Posts: 20302
Joined: Tue Jan 19, 2016 9:26 am
Location: Paczków
Been thanked: 59 times

Post

djack2017 wrote: Tue Jan 09, 2018 7:09 pm OK. czyli ten "client handshake" wynika z połączenia SSL.
Rozumiem, że np z serwerem Supla mogę mieć połaczenie szyfrowane,
a z innym serwerem bez szyfrowania?
Tak
SUPLA.... Nareszcie w domu.

Return to “Pomoc”