fbpx

Jak połączyć ESP8266 z WiFi

Opublikowane przez Jerzy Wickowski w dniu

Czymże byłoby IoT bez dostępu do sieci? Prawdopodobnie pozostało by tylko T, czyli nic szczególnego. Gdyż takie urządzenia elektroniczne, znamy od bardzo dawna. Właśnie dzięki połączeniu ich z globalną siecią otwierają się zupełnie nowe możliwości. Dostęp do sieci możemy uzyskać na wiele sposobów. Od najbardziej tradycyjnego, czyli połączenia przewodem, aż do łączności satelitarnej. Poniżej przedstawię jak połączyć do sieci poprzez najpopularniejszy standard, czyli WiFi, na przykładzie płytki Wemos D1 mini z wbudowanym modułem WiFi ESP8266, której wybór opisywałem tu.

Moduł ESP8266WiFiMulti

Do połączenia Wemosa z łajfajem użyłem modułu ESP. Pozwala on na dodanie kilku sieci. Następnie metoda Run sprawdza, która z sieci ma najlepszy sygnał. Po zebraniu tych informacji następuje próba połączenia. Metoda ta może zwrócić jeden z następujących statusów(źródło):

  • WL_CONNECTED = 3, połączono
  • WL_NO_SHIELD = 255, brak modułu WiFi
  • WL_IDLE_STATUS = 0, tymczasowy stan po wywołaniu metody Run, po pewnym czasie przejdzie w stan WL_CONNECT_FAILED lub WL_CONNECTED
  • WL_NO_SSID_AVAIL = 1, brak konkretnej sieci w zasiegu
  • WL_SCAN_COMPLETED =2, skanowanie sieci zakończone
  • WL_CONNECT_FAILED = 4, łączenie zakończone niepowodzeniem
  • WL_CONNECTION_LOST = 5, utracono połączenie z siecią
  • WL_DISCONNECTED = 6, rozłączono

Implementacja

W poniższym przykładzie zaimplementowałem prostą klasę, która posiada dwie publiczne metody. AddConnectionData do dodawania sieci, oraz Run, która metoda zwraca boola, jako informację, czy udało się ustalić połączenie, czy nie. Zwrócienie true oznacza, że udało się połączyć, oraz że zmienna WiFi została zaincjalizowana. Dzięki temu pozostałe moduły będą mogły to połączenie wykorzystywać.

ESP8266WiFiMulti.h

ESP8266WiFiMulti.cpp

Co dalej

Zatem skoro mamy połącznie z internetem to następnym krokiem powinno być wykonanie zapytania HTTP, ale o tym już następnym razem juz jest kolejny post.



Czy to był wartościowy artykuł? Bądź na bierząco. Zapisz się, a poinformuję Cię o nowych postach

Dodaj komentarz

Twój adres email nie zostanie opublikowany.

This site uses Akismet to reduce spam. Learn how your comment data is processed.


Zapisz się

Wyślę Ci dwa dokumenty mówiące o jakości kodu. Dodatkowo będę Cię informował o nowych postach i nowościach.