Strona 1 z 1
ESP8266 - pierwsze starcie
: niedziela 28 sty 2018, 12:09
autor: Marcin
Mam problem z uruchomieniem esp8266. Do testów użyłem esp12e, z komputerem połączony poprzez ft232rl. Połączenie skrosowane, a więc linia txd w esp połączona z linią rxd w ft232rl, linia rxd w esp połączona z linią txd w fr232rl.
Po otwarciu portu w terminalu wyświetla krzaczki, próbowałem na różnych prędkościach ale bez zmian.
Przechwytywanie.PNG
Ma ktoś jakiś pomysł co jest nie tak ?
Re: ESP8266 - pierwsze starcie
: niedziela 28 sty 2018, 13:08
autor: squeez
na początku jest bootowanie i wypluwane są informacje o tym procesie z tym że to jest na dość dziwnej prędkości potem uruchmiany jest soft jaki jeest tam wgrany i konfigurowana predkość docelowa. zależy jaki masz wgrany soft ale zazwyczja jesy to 1115200 albo 9600
jeśli nie widzisz po bootowaniu normalnych info o wersji firmware itp, to pewnie nie uruchamia się soft. jak masz gpio podłączone GPIO0 i GPIO2 pin RST i CHE
Re: ESP8266 - pierwsze starcie
: niedziela 28 sty 2018, 19:08
autor: Marcin
Ok, poszło ale na na innym module (esp07) Teraz mam dwa moduły pracujące w trybie klient, oba podłączone do mojej domowej wifi.
Teraz męczę się z wysłaniem danych z jednego do drugiego esp. Ustanowiłem połączenie między dwoma esp. Niestety komenda AT+CIPSEND zwraca mi błąd.
Ktoś może podać jakieś wskazówki ?
Re: ESP8266 - pierwsze starcie
: niedziela 28 sty 2018, 22:25
autor: Marcin
Udało mi się nawiązać komunikację miedzy dwoma esp8266 i przesłać parę bajtów.
Póki co temat można uznać za zamknięty.
Dla potomnych tak w skrócie:
Uruchomienie serwera na pierwszym ESP.
Ustawiamy obsługę wielu połaczeń wysyłając do naszego pierwszego esp komendę AT+CIPMUX=1
Uruchamiamy serwer (u mnie na porcie 80) wysyłając do pierwszego esp komendę AT+CIPSERVER=1,80
Drugi ESP
W najprostszej konfiguracji gdzie jest obsługa jednego połączenia (CIPMUX=0) na kliencie
Nawiązujemy połączenie z pierwszym esp pracującym jako serwer wysyłając komendę AT+CIPSTART="TCP","ip",port (oczywiście ip i port podajemy wg własnego aktualnego stanu) Ważne, TCP oraz IP muszą być w nawiasach.
Zaczynamy transmisję danych wysyłając do esp komendę AT+CIPSEND=x gdzie x to ilość bajtów jakie będą wysłane.
Następnie wysyłamy naszą daną składającą się z x bajtów.
Po zakończeniu transmisji można można zamknąć połaczenie wysyłając do esp AT+CIPCLOSE
Po nawiązaniu połączenia istnieje możliwość wysyłania danych nie tylko z klienta do serwera, ale również odwrotnie. W związku z tym że serwer pracuje w trybie wielu połączeń komendy AT+CIPSEND oraz AT+CIPCLOSE należy uzupełnić o numer sesji, AT+CIPSEND=NrSesji,x oraz AT+CIPCLOSE=NrSesji.
Po stronie serwera widzimy odebrane dane poprzedzone nagłówkiem +IPD,0,7:TESTPOL gdzie 0 to numer kanału a 7 to długość odebranej danej, następnie za dwókropkiem to dana wysłana od klienta.
Może jak ukończę swój projekt to napiszę coś więcej.