Jak podłączyć Arduino z Wi -Fi
Streszczenie:
Dodanie modułu ESP8266 do Arduino Uno da ci możliwość podłączenia go do sieci Wi -Fi, umożliwiając zdalne sterowanie i dostęp do Arduino. W tym przewodniku podamy instrukcje krok po kroku, jak podłączyć Arduino z Wi-Fi za pomocą modułu ESP8266.
Kluczowe punkty:
1. Arduino można podłączyć do Wi -Fi za pomocą modułu ESP8266. ESP8266 zawiera procesor i układ Wi -Fi, umożliwiający jego zaprogramowanie i dostęp do jego możliwości Wi -Fi z tego samego urządzenia.
2. Aby podłączyć Arduino z Wi -Fi, musisz zainstalować bibliotekę ESP8266 w Arduino IDE. Ta biblioteka zawiera niezbędne funkcje i narzędzia do programowania i kontrolowania modułu ESP8266.
3. Po zainstalowaniu biblioteki możesz podłączyć ESP8266 z Arduino za pomocą kabla USB lub przewodów skoczków. Upewnij się, że ustanowić bezpieczne połączenie i upewnij się, że piny są prawidłowo wyrównane.
4. Skonfiguruj połączenie Wi -Fi ESP8266 i podłącz je do Internetu. Będziesz musiał wprowadzić nazwę sieci i hasło, aby nawiązać połączenie z routerem.
5. Zaprogramuj swój kod w ESP8266 i prześlij go do Arduino. Kod będzie zależeć od twojego projektu i tego, co chcesz osiągnąć dzięki połączeniu Wi -Fi. Arduino IDE zapewnia interfejs do pisania i przesyłania kodu do ESP8266.
6. Uruchom kod i połącz się z siecią WiFi. Po pomyślnym przesłaniu kodu, Arduino powinien być podłączony do sieci Wi -Fi, umożliwiając kontrolowanie go zdalnie.
7. Po podłączeniu Arduino z Wi -Fi możesz wykonywać różne zadania. Możesz kontrolować go zdalnie z dowolnego komputera lub smartfona za pomocą połączenia internetowego, wysyłać i odbierać dane oraz pobierać informacje z Internetu.
8. Komponenty i materiały potrzebne do połączenia Arduino z Wi -Fi mogą się różnić w zależności od projektu. Przynajmniej będziesz potrzebować tablicy Arduino (e.G., Uno, Mega), moduł ESP8266 (e.G., Nodemcu), kabel USB lub przewody skoczkowe, połączenie internetowe i Arduino IDE zainstalowane na komputerze.
9. Po podłączeniu ESP8266 z Arduino i przesłaniem kodu, możesz go przetestować, aby upewnić się, że działa poprawnie. Użyj monitora szeregowego lub urządzenia wykrywania, aby sprawdzić połączenie i transmisję danych.
10. Jeśli wszystko działa poprawnie, możesz zbudować stały obwód dla swojego Arduino i ESP8266. Upewnij się, że wszystkie połączenia są bezpieczne przed włączeniem obwodu.
Pytania i odpowiedzi:
1. Jaki jest najczęstszy sposób podłączenia Arduino z siecią Wi -Fi?
Najczęstszym sposobem podłączenia Arduino z siecią Wi -Fi jest użycie modułu ESP8266. Ten moduł zawiera zarówno procesor, jak i układ Wi -Fi, umożliwiający go zaprogramowanie i dostęp do jego możliwości Wi -Fi z tego samego urządzenia.
2. Co musisz zrobić przed podłączeniem ESP8266 z Arduino?
Przed podłączeniem ESP8266 z Arduino musisz zainstalować bibliotekę ESP8266 w Arduino IDE. Ta biblioteka zawiera niezbędne funkcje i narzędzia do programowania i kontrolowania modułu ESP8266.
3. Jakie kroki są zaangażowane w łączenie Arduino z Wi -Fi?
Kroki związane z podłączeniem Arduino z Wi -Fi obejmują instalację biblioteki ESP8266, podłączenie ESP8266 z Arduino, konfigurowanie połączenia Wi -Fi, programowanie i przesłanie kodu oraz uruchomienie kodu w celu ustalenia połączenia.
4. Jak mogę zdalnie kontrolować moje Arduino po podłączeniu go z Wi -Fi?
Po podłączeniu Arduino do Wi -Fi możesz kontrolować go zdalnie z dowolnego komputera lub smartfona za pomocą połączenia internetowego. Możesz używać aplikacji internetowych lub dedykowanego oprogramowania do wysyłania poleceń i odbierania danych z Arduino.
5. Co mogę zrobić z Arduino podłączonym do Wi -Fi?
Z Arduino podłączonym do Wi -Fi, możesz wykonywać różne zadania. Możesz kontrolować swoje Arduino zdalnie, wysyłać i odbierać dane, pobierać informacje z Internetu, zintegrować z innymi usługami internetowymi i wiele więcej. Możliwości są prawie nieograniczone.
6. Czy są jakieś konkretne komponenty i materiały potrzebne do podłączenia Arduino z Wi -Fi?
Komponenty i materiały potrzebne do połączenia Arduino z Wi -Fi mogą się różnić w zależności od projektu. Przynajmniej będziesz potrzebować tablicy Arduino (e.G., Uno, Mega), moduł ESP8266 (e.G., Nodemcu), kabel USB lub przewody skoczkowe, połączenie internetowe i Arduino IDE zainstalowane na komputerze.
7. Jak mogę sprawdzić, czy mój Arduino jest odpowiednio podłączony do Wi -Fi?
Po przesłaniu kodu do Arduino możesz przetestować połączenie za pomocą monitora szeregowego lub urządzenia wykrywania. Umożliwi to sprawdzenie, czy Arduino jest podłączone do sieci Wi -Fi i czy prawidłowo wysyła i odbiera dane.
8. Czy mogę zbudować stały obwód dla mojego Arduino i ESP8266?
Tak, po przetestowaniu i upewnieniu się, że kod działa poprawnie, możesz zbudować stały obwód dla Arduino i ESP8266. Obejmuje to połączenie zasilania i innych niezbędnych elementów dla konkretnego projektu. Pamiętaj, aby podwójnie sprawdzić wszystkie połączenia przed włączeniem obwodu.
9. Czy mogę podłączyć wiele arduinos z tą samą siecią WiFi?
Tak, możesz podłączyć wiele arduinos z tą samą siecią Wi -Fi. Każdy Arduino będzie potrzebował własnego modułu ESP8266 do łączności Wi -Fi. Możesz niezależnie programować i kontrolować każdy Arduino, umożliwiając jednoczesne operacje.
10. Jak bezpieczne jest połączenie Wi -Fi między Arduino a siecią?
Bezpieczeństwo połączenia Wi -Fi między Arduino a siecią zależy od środków bezpieczeństwa zaimplementowanych przez samą sieć. Ważne jest, aby sieć ma silne protokoły szyfrowania i uwierzytelniania, aby zapobiec nieautoryzowanemu dostępowi do Arduino i jego danych.
Jak podłączyć Arduino z Wi -Fi
Dodanie tego modułu do Arduino Uno otworzy Cię na coraz więcej ekscytujących projektów.
Czy moje Arduino ma Wi -Fi?
Оjed
Ыы зарегистрир John. С помощю этой страницы ыы сожем оRipееделить, что запросы оRтравляете имено ыы, а не роvert. Почем это могло пRроизойиS?
Эта страница отображается тех слччаях, когда автоматическими системамgz которые наршают усовия исполззования. Страница перестанеura. До этого момента для исползования слжжж Google неоtoś.
Источником запросов может слжить ведоносное по, подкbarów. ыылку заRzy. Еarag ы исползеете общий доступ и интернет, проблема может ыть с компюююеyn с таким жж жж жесом, кк у комszczeюююе000. Обратитеunks к соем системном адинистратору. Подроlit.
Проверка по слову может также появаятьenia, еaсли ы водите сложные ззапры, оind обычно enia оиизи инenia оtoś еами, или же водите заlektora.
Jak podłączyć Arduino z Wi -Fi?
W tym kompleksowym przewodniku przeprowadzimy Cię przez kroki łączenia Arduino z siecią WiFi. To świetny sposób na kontrolowanie Arduino z dowolnego miejsca na świecie, bez konieczności bycia w pobliżu.
Odpowiemy na kilka typowych pytań dotyczących łączenia Arduinos z Wi -Fi, i podaj kilka przydatnych wskazówek, które ułatwią ci proces. Pozwalać’S zacznij!
Jak podłączyć Arduino z Wi -Fi?
Najczęstszym sposobem podłączenia Arduino z siecią Wi -Fi jest użycie modułu ESP8266.
Moduł ESP8266 zawiera zarówno procesor, jak i układ Wi -Fi, umożliwiający jego zaprogramowanie i dostęp do jego możliwości Wi -Fi z tego samego urządzenia.
- Zainstaluj bibliotekę ESP8266 w swoim Arduino IDE.
- Podłącz ESP8266 do swojego Arduino za pomocą kabla USB lub przewodów skoczków.
- Skonfiguruj połączenie Wi -Fi ESP8266 i podłącz je do Internetu.
- Zaprogramuj swój kod w ESP8266 i prześlij go do Arduino.
- Uruchom kod i połącz się z Wi -Fi!
Po podłączeniu Arduino do sieci Wi -Fi, Jest wiele rzeczy, które możesz zrobić. Możesz kontrolować go zdalnie z dowolnego komputera lub smartfona za pomocą połączenia internetowego. Możesz go również użyć do odsyłania danych i naprzód między usługami, pobieraj dane z Internetu i nie tylko.
Potrzebne komponenty i zapasy
- Tablica Arduino (e.G. Uno, Mega itp.)
- Moduł ESP8266 (e.G. Nodemcu)
- Kabel USB lub przewody skoczkowe
- Połączenie internetowe
- Arduino IDE zainstalowane na komputerze
- Twój kod napisany w Arduino IDE
Komponenty i materiały, których potrzebujesz różnią się w zależności od projektu. Na przykład, jeśli używasz modułu Bluetooth zamiast ESP8266, musisz kupić kompatybilny moduł Bluetooth. [1]
Jaki jest proces?
Prześlij szkic do Arduino
Po podłączeniu ESP8266 do Arduino możesz przesyłać do niego kod za pomocą Arduino IDE. Przesyłany kod będzie zależeć w swoim projekcie i tym, co chcesz zrobić z połączeniem Wi -Fi.
Ogólnie jednak, Będzie to wymagało konfiguracji Wi -Fi ESP8266 Połączenie i podłączenie go do Internetu. Po napisaniu kodu w Arduino IDE możesz kliknąć przycisk, aby przesłać go na płytę Arduino.
Przetestuj swój kod
Po przesłaniu kodu na płytę Arduino możesz go przetestować. Można to zrobić za pomocą Monitor szeregowy lub urządzenie wykrywające, aby sprawdzić, czy Arduino jest podłączone do sieci Wi -Fi i że prawidłowo wysyła i odbiera dane. [1]
Obwód zbudowany
Po przetestowaniu kodu i prawidłowej pracy możesz zbudować obwód, aby na stałe zainstalować ESP8266. Obejmuje to połączenie zasilania i inne elementy niezbędne do twojego projektu.
Pamiętaj, aby sprawdzić wszystkie połączenia przed włączeniem obwodu!
Ustaw połączenie
Po zbudowaniu obwodu i jego zasilania możesz skonfigurować połączenie sieciowe WiFi. Obejmuje to wprowadzenie nazwy sieci i hasła do ESP8266, aby mógł połączyć się z routerem. Następnie powinieneś mieć dostęp do Arduino z dowolnego komputera lub smartfon z połączeniem internetowym.
Porozmawiaj z tobą Arduino Uno za pośrednictwem smartfona
Ostatnim krokiem jest przetestowanie połączenia. Możesz to zrobić, pobierając aplikację, która pozwala porozmawiać z Arduino Uno za pomocą smartfona lub tabletu. To pozwoli ci łatwo uzyskać dostęp, Kontroluj i monitoruj swoje Arduino z dowolnego miejsca na świecie.
O obwodzie
Istnieje kilka różnych sposobów połączenia Arduino z siecią WiFi. Wybrana metoda będzie zależeć od twojego projektu. Ogólnie rzecz biorąc, musisz podłączyć moduł ESP8266 do zasilania i innych komponentów. Upewnij się, że wszystkie połączenia są prawidłowe przed zasilaniem obwodu.
Postępując zgodnie z tymi krokami, będziesz mógł łatwo podłączyć Arduino z siecią WiFi. Dzięki temu połączeniu możesz uzyskać dostęp i zdalnie steruj swoje Arduino z dowolnego komputera lub smartfona za pomocą połączenia internetowego.
Możesz także użyć Wysyłanie danych między usługami, pobieranie danych z Internetu i wiele więcej!
O kodzie
Istnieje kilka sposobów kodowania projektu Arduino. Jeśli nie masz’T mieć wszelkie wrażenia z kodowania, możesz użyć istniejącego kodu, który znajdziesz online lub w książce. Ale jeśli masz jakieś doświadczenie w programowaniu, możesz napisać własny kod.
Ważne jest, aby poprawnie napisać kod Arduino. Obejmuje to upewnienie się, że wszystkie połączenia są prawidłowe i że nie ma literówek ani innych błędów. Po przetestowaniu i debugowaniu kod, możesz przesłać go na swoją płytę Arduino za pomocą Arduino IDE.
FAQ
Czy możesz podłączyć Arduino z Wi -Fi?
Tak, możesz podłączyć Arduino do Wi -Fi za pomocą modułu ESP8266. Będziesz musiał napisać kod w Arduino IDE i prześlij go na płytę przed podłączeniem urządzenia do sieci bezprzewodowej.
Jak korzystać z mojego smartfona z Arduino?
Możesz użyć smartfona z Arduino, pobierając aplikację, która pozwala komunikować się z planszą. To pozwoli Ci uzyskać dostęp, Kontroluj i monitoruj swoje Arduino z dowolnego miejsca na świecie.
Jakiego rodzaju zasilacz potrzebuję, aby podłączyć Arduino z Wi -Fi?
Zasilanie, których potrzebujesz, zależy od projektu i tego, ile zasilania wymaga obwód. Ogólnie rzecz biorąc, większość projektów wymaga źródła 5 V.
To może być albo kabel USB lub zewnętrzna bateria. Przed zasilaniem obwodu sprawdź wymagania zasilania projektu!
Czy mogę podłączyć Arduino Uno z Internetem?
Tak, możesz podłączyć Arduino Uno z Internetem za pomocą modułu ESP8266. Ten moduł pozwoli ci się połączyć Twoja płyta do sieci bezprzewodowej i dostępu do danych z sieci lub innych usług. Jednakże, To’jest ważne, aby upewnić się że twój kod jest pisany poprawnie przed przesłaniem go na planszę. Jeśli kod jest nieprawidłowy, może uszkodzić twoją płytę Arduino lub moduł ESP8266.
Jak połączyć się z Uno Wi -Fi?
Aby podłączyć UNO Wi -Fi, musisz napisać kod w Arduino IDE i przesłać go na planszę. Ten kod poinformuje moduł ESP8266, który sieć dołączyć i jak komunikować się z innymi urządzeniami. Po zakończeniu możesz uzyskać dostęp płyta z dowolnego komputera lub smartfona, która ma połączenie internetowe.
Jak połączyć Arduino Uno z ESP8266 WiFi?
Aby podłączyć Arduino Uno z Wi -Fi ESP8266, musisz napisać kod w Arduino IDE i przesłać go na planszę. Ten kod poinformuje moduł ESP8266, który sieć dołączyć i jak komunikować się z innymi urządzeniami.
Po zakończeniu można uzyskać dostęp do płyty z dowolnego komputera lub smartfona, który ma połączenie internetowe. Dodatkowo musisz się połączyć Moduł ESP8266 do Arduino Uno z odpowiednimi kablami i upewnij się, że wszystkie połączenia są prawidłowe przed włączeniem obwodu.
Postępując zgodnie z tymi krokami, będziesz mógł z powodzeniem podłączyć swoje Arduino UNO do sieci Wi -Fi w celu zdalnego dostępu i sterowania z dowolnego komputera lub smartfona.
Dzięki temu połączeniu możesz uzyskać dostęp i kontrolować Twoje Arduino zdalnie z dowolnego komputera lub smartfona z połączeniem internetowym. Możesz również użyć go do wysyłania danych między usługami, pobierania danych z Internetu i wielu więcej!
Czy Arduino może działać bez komputera?
Tak, Arduino może działać bez komputera. Możesz użyć zewnętrznego zasilania, aby przesyłać kod na płytę za pomocą kabla USB. Dodatkowo możesz użyć modułu ESP8266 do podłączenia Arduino do Wi -Fi i dostęp do niego zdalnie z dowolnego komputera lub smartfona z połączeniem internetowym.
Jaki jest zakres wifi Arduino?
Zakres Arduino Wi -Fi będzie zależeć od siły anteny i środowiska, w którym pracujesz.
Jeśli masz dobrą antenę i jesteś w dobrym miejscu, wtedy powinieneś być w stanie dostać się do 300 stóp. Ale może to nie być prawdą we wszystkich przypadkach, ponieważ inne rzeczy, takie jak ściany lub inne urządzenia bezprzewodowe, mogą wpływać na sygnał.
Jak działa Arduino Wi -Fi?
Arduino Wi -Fi pozwala płytce Arduino połączyć się z siecią bezprzewodową. W ten sposób możesz użyć Internetu do wysyłania i odbierania danych z innych urządzeń. Dodatkowo możesz zdalnie sterować i monitorować swój projekt z dowolnego komputera lub smartfona za pomocą połączenia internetowego.
Czy Arduino może wysłać wideo przez wifi?
Tak, Arduino może wysłać wideo przez wifi. Odbywa się to za pomocą modułu ESP8266 i kamera IP. Moduł ESP8266 pozwala Arduino połączyć się z siecią bezprzewodową, abyś mógł uzyskać do niego dostęp z dowolnego miejsca na świecie za pomocą połączenia internetowego. Następnie aparat wysyła dane wideo Przez to połączenie, które możesz wyświetlić na podłączonym urządzeniu.
Czy możesz przesłać kod do Arduino bezprzewodowo?
Tak, możesz przesłać kod do Arduino bezprzewodowo. Odbywa się to za pomocą modułu ESP8266 i podłączając go do płyty Arduino. Moduł ESP8266 pozwoli na połączenie Arduino do sieci bezprzewodowej, co oznacza, że możesz uzyskać do niego dostęp z dowolnego miejsca na świecie, o ile masz połączenie internetowe.
Po podłączeniu upewnij się, że podwójnie sprawdź kod pod kątem błędów przed przesłaniem go na planszę.
Czy możemy bezprzewodowo podłączyć Arduino za pomocą laptopa?
Tak, możesz bezprzewodowo podłączyć Arduino za pomocą laptopa. Odbywa się to za pomocą modułu ESP8266 i podłączając go do płyty Arduino. Moduł ESP8266 pozwoli na połączenie Arduino do sieci bezprzewodowej, co oznacza, że możesz uzyskać do niego dostęp z dowolnego miejsca na świecie, o ile masz połączenie internetowe.
Po połączeniu możesz użyć Arduino IDE do przesłania kodu z laptopa i zdalnie sterowania płytą.
Co jest lepsze: Raspberry Pi lub Arduino?
To zależy od projektu. Raspberry Pi jest lepszy w przypadku projektów, które wymagają dużej mocy obliczeniowej, takich jak uruchamianie serwera internetowego lub przesyłania strumieniowego wideo. Arduino jest lepsze do prostych zadań, Jak kontrolowanie silników i czujników światła. Wszystko sprowadza się do tego, czego potrzebuje Twój projekt.
Czy Arduino jest używane w telefonie komórkowym?
Tak, Arduino jest używane w urządzeniach mobilnych. Jest często używany do sterowania czujnikami i innymi komponentami sprzętowymi, takimi jak akcelerometry lub żyroskopy. Dodatkowo można go użyć do podłączenia urządzenia do Internetu i wysyłaj dane między usługami. To sprawia, że jest to świetne narzędzie do projektów automatyzacji domowej, aplikacji IoT i innych.
Który model Arduino jest najlepszy?
Arduino Mega i Arduino Yún to różne rodzaje Arduinos. Mają różne funkcje, które mogą być lepsze dla twojego projektu. Wszystko zależy od tego, czego potrzebujesz dla twojego projektu i tego, co chcesz.
Przydatne wideo: Jak podłączyć Arduino UNO z siecią Wi -Fi: ESP8266 – AT AT
Wniosek
W tym samouczku my’Pokazał, jak podłączyć swoją płytę Arduino z siecią Wi -Fi. Umożliwi to kontrolowanie Arduino za pomocą przeglądarki internetowej lub aplikacji na smartfony, bez konieczności podłączenia do tej samej sieci co Arduino.
Dodatkowo możesz użyć modułu ESP8266 do przesyłania kodu bezprzewodowego, a nawet wysłać wideo przez Wi -Fi. Wreszcie my’Omówił różne typy Arduinos i które mogą być najlepsze w twoim projekcie.
Mamy nadzieję, że ten przewodnik był pomocny w rozpoczęciu pracy z Arduino Wi -Fi! Dziękuje za przeczytanie!
- https: // Utwórz.Arduino.CC/ProjectHub/Imjeffdaredes/Add-Wifi-to-ardino-uno-663b9e
Dodaj wifi do arduino uno
Podłącz swój mikrokontroler do Internetu, dodając moduł Wi -Fi ESP8266!
Informacje o projekcie
Szacowany czas: 1 godzina
Przedmioty używane w tym projekcie
Komponenty sprzętowe
![]() | Tiny Breadboard | x 1 |
![]() | WIFI ESP kliknij | x 1 |
![]() | Orygino Uno Rev3 | x 1 |
Aplikacje oprogramowania i usługi online
![]() | Arduino Ide |
Fabuła
Podłącz swoje Arduino do Internetu, dodając moduł Wi -Fi ESP8266!
Moduł Wi-Fi ESP8266 to kompletna sieć Wi-Fi, w której można łatwo połączyć się jako adapter Wi-Fi, bezprzewodowy interfejs dostępu do dowolnego projektu opartego na mikrokontrolerze na jego prostej łączności poprzez komunikację szeregową lub interfejs UART.
Dodanie tego modułu do Arduino Uno otworzy Cię na coraz więcej ekscytujących projektów.
Jaki jest proces?
Istnieje wiele sposobów wykorzystania ESP866 do komunikacji. Niektórzy mogą go użyć do wysyłania / odbierania danych online lub regularnego przesyłania danych. Do tego samouczka Pokażę ci tylko, jak możemy komunikować się z Arduino bezprzewodowo za pomocą telefonu (Android lub iPhone) . Zostanie to wykonane w trybie offline, więc nie trzeba mieć połączenia internetowego.
Nasz ESP8266 będzie służyć jako punkt dostępu (tryb AP), co oznacza, że zapewni dostęp do sieci Wi-Fi do innych urządzeń (stacji) i połączy je dalej z siecią przewodową
Proces jest dość prosty. Użyj telefonu, aby wysłać dowolne polecenie do Arduino. Z pomocą ESP8266 wszystko będzie działać bezprzewodowo.
Obwód zbudowany
Podłącz szpilki bardziej opisane na tej tabeli PIN
Wykonaj następujące kroki.
- Podłącz czerwony drut do VIN (3.3v) do +3.Moc 3V z mikrokontrolera.
- Podłącz czarny przewód do ziemi.
- Podłącz zielony drut do TX modułu Wi -Fi i mikrokontrolera
- Podłącz żółty Wite z RX modułu Wi -Fi i mikrokontrolera
O obwodzie
ESP8266 jest ściśle zasilany tylko do 3.3 v. Więcej, co zniszczy moduł.
Ważne nie używaj napięć więcej niż 3.3v!C
Podłącz VIN do 3.3v do zasilania, a także włączanie pin, aby włączyć moduł.
TX jest podłączony do RX, co oznacza, że wszystko, co chcemy przesyłać w ESP8266, odbędzie się przez Arduino Uno. I imadło versa za RX do TX. Po budowaniu tego obwodu, teraz jesteśmy gotowi do uruchomienia Wi -Fi z Arduino Uno.
Porozmawiaj z modułem
Komunikacja z ESP8266 jest przez polecenie uwagi lub polecenia.
Sprawdź tabelę poleceń AT dołączona do przeglądu kodów.
Ustawienie płyty
Gdy wszystko zostanie skonfigurowane, zauważysz, że Twój Wi -Fi ESP8266 będzie dostępny w zakresie telefonu.
1 . Prześlij próbkę szkicu przymocowaną tutaj do Arduino Uno.
2 . Pobierz klient TCP na Android
Możesz obniżyć dowolnego klienta TCP dostępnego w sklepie play, ale użyłem klienta TCP przez Sollae Systems
3 . Z telefonu połącz się z wifirem ESP8266
Jeśli Twój Wi -Fi ESP8266 nie jest wyświetlany z dostępnych sieci Wi -Fi, upewnij się, że Arduino działa i wszystko jest poprawnie podłączone. Zwykle rozpoczyna się nazwa Wi -Fi / SSID Esp Po nazwie wersji moje jest Esp11.
4 . Po podłączeniu, uzyskaj statyczny adres IP, możesz sprawdzić IP, przechodząc do ustawień Wi -Fi telefonu i klikając informacje o sieci.
Domyślny adres IP w trybie AP to 192.168.4.1 . Możesz zmienić statyczny adres IP, śledząc ten Wi -Fi.config () odniesienie.
5 . Otwórz pobrane wcześniej klient TCP.
6 . Utwórz połączenie, klikając Connect, dodaj IP i port 80.
80 to port, którego użyłem na naszym serwerze ESP, ale możesz go zmienić, zastępując 80 do dowolnego numeru portu, który chcesz z naszego kodu Linia 23
7. Poczekaj, aż konsola TCP powie „połączone”.
Po podłączeniu żądania wyślij, wpisując następujący kod do klienta TCP:
Lub włącz wbudowaną diodę LED za pomocą polecenia
Lub wyłącz wbudowaną diodę LED za pomocą polecenia
Możesz zmienić odpowiedź z tego, co wysyłasz w zależności od logiki umieszczonej w kodzie.
O kodzie
Istnieją różne rodzaje ESP8266. Zmień szybkość transmisji w załączonym kodzie w wierszu 16 w oparciu o to, czego używa Twój ESP8266.
Wszystkie nasze żądanie zostanie odczytane i analizowane w funkcji Loop ()
if (wifiserial.Dostępne ()> 0) String Message = ReadWiFiRialMessage (); if (znajdź (wiadomość, „esp8266:”)) String Result = sendTowifi (wiadomość.podłoże (8, wiadomość.długość ()), reakcja, debug); if (znajdź (wynik, „ok”)) senddata („n”+wynik); w przeciwnym razie senddata („nerrread”); // AT kod błędu polecenia dla nieudanej instrukcji wykonywania > inaczej if (znajdź (wiadomość, „hello”))< //receives HELLO from wifi senddata ("\ nhi!"); // Arduino mówi cześć > else if (znajdź (wiadomość, „LEDON”)) DigitalWrite (13, High); > else if (znajdź (wiadomość, „Ledoff”)) DigitalWrite (13, niski); > w przeciwnym razie senddata („nerrread”); // Kod błędu poleceń, który nie może odczytać > >
Możesz zobaczyć z góry, że użyłem mojej funkcji znajdować( , ) zinterpretować wiadomość i powiedzieć Arduino, który kod zadzwonić.
Jeśli chcesz komunikować się z Arduino Uno lub poproś o coś, po prostu dodaj swój stan. Na przykład :
if (znajdź (wiadomość, „mój kod”)) // Znalazłem „mój kod” od otrzymanej wiadomości // Zróbmy coś tutaj > if (znajdź (wiadomość, „a”)) // Znalazłem „A” od otrzymanej wiadomości // Zróbmy coś tutaj >
Dodałem trochę funkcji, aby komunikować się z ESP8266.
/* * Nazwa: senddata * Opis: Funkcja używana do wysyłania ciągu do klienta TCP za pomocą CIPSEND * PARAMS: * Powraca: void */ void senddata (string str) String len = ""; len+= str.długość(); sendtowifi („at+cipsend = 0,”+len, reagation, debug); opóźnienie (100); sendtowifi (STR, Responsetime, Debug); opóźnienie (100); sendtowifi („AT+CIPCLOSE = 5”, ResponseTime, Debug); > /* * Imię: Znajdź * Opis: Funkcja używana do dopasowania dwóch ciągów * PARAMS: * Powraca: true, jeśli dopasuj else i false */ Boolean Find (ciąg ciąg, wartość ciągu) if (ciąg.indexof (wartość)> = 0) zwrócić true; zwrócić fałsz; > /* * Nazwa: ReadSerialMessage * Opis: Funkcja używana do odczytu danych z Arduino Serial. * PARAMS: * Zwraca: Odpowiedź Arduino (jeśli istnieje odpowiedź) */ String ReadSerialMessage () wartość char [100]; int index_count = 0; When (serial.Dostępne ()> 0) wartość [index_count] = serial.Czytać(); index_count ++; Wartość [index_count] = '
ESP32 Przydatne funkcje biblioteki Wi-Fi (Arduino IDE)
Ten artykuł jest kompilacją przydatnych funkcji Wi-Fi dla ESP32. My’LL obejmuje następujące tematy: Skanuj sieci Wi-Fi, połącz się z siecią Wi-Fi, uzyskaj siłę połączenia Wi-Fi, sprawdź status połączenia, ponownie połącz się z siecią po zgubieniu połączenia, status Wi-Fi, tryby Wi-Fi, Uzyskaj adres IP ESP32, ustaw stały adres IP i więcej.
To nie jest nowość. Istnieje wiele przykładów radzenia sobie z Wi-Fi z ESP32. Myśleliśmy jednak, że przydatne byłoby skompilowanie niektórych z najbardziej używanych i praktycznych funkcji Wi-Fi dla ESP32.
Spis treści
Tutaj’S Lista tego, co zostanie omówione w tym samouczku (możesz kliknąć linki, aby przejść do odpowiedniej sekcji):
- Tryby Wi-Fi: stacja, punkt dostępu i oba (stacja + punkt dostępu);
- Scan Wi-Fi Networks;
- Połącz się z siecią Wi-Fi;
- Uzyskaj status połączenia Wi-Fi;
- Sprawdź siłę połączenia Wi-Fi;
- Uzyskaj adres IP ESP32;
- Ustaw statyczny adres IP ESP32;
- Odłączyć Wi-Fi;
- Ponowne połączenie się z Wi-Fi po utracie połączenia;
- ESP32 Wydarzenia Wi-Fi;
- Ponowne połączenie z siecią Wi-Fi po zgubieniu połączenia (zdarzenia Wi-Fi);
- ESP32 Wifimulti
- Zmień nazwę hosta ESP32.
W tym biblioteka Wi-Fi
Pierwszą rzeczą, którą musisz zrobić, aby użyć funkcji Wi-Fi ESP32, jest włączenie Wi-Fi.Biblioteka H w twoim kodzie, w następujący sposób:
#włączać
Ta biblioteka jest automatycznie “zainstalowane” Po zainstalowaniu dodatku ESP32 w Arduino IDE. Jeśli nie masz’t Zainstalowano ESP32, możesz śledzić następny samouczek:
Jeśli wolisz używać VS Code + Paltformio, wystarczy założyć nowy projekt z płytą ESP32, aby móc korzystać z Wi -Fi.Biblioteka H i jej funkcje.
Tryby ESP32 Wi-Fi
Rada ESP32 może działać jako stacja Wi-Fi, punkt dostępu lub jedno i drugie. Aby ustawić tryb Wi-Fi, użyj WiFi.tryb () i ustaw żądany tryb jako argument:
Wifi.tryb (wifi_sta) | Tryb stacji: ESP32 łączy się z punktem dostępu |
Wifi.tryb (wifi_ap) | Tryb punktu dostępu: Stacje mogą łączyć się z ESP32 |
Wifi.tryb (wifi_ap_sta) | punkt dostępu i stacja podłączona do innego punktu dostępu |
Stacja Wi-Fi
Gdy ESP32 jest ustawiony jako stacja Wi-Fi, może łączyć się z innymi sieciami (jak router). W tym scenariuszu router przypisuje unikalny adres IP do swojej płyty ESP. Możesz komunikować się z ESP za pomocą innych urządzeń (stacji), które są również podłączone do tej samej sieci, odnosząc się do unikalnego adresu IP ESP.
Router jest podłączony do Internetu, dzięki czemu możemy żądać informacji z Internetu za pomocą płyty ESP32, takich jak dane z API (na przykład dane pogodowe), publikować dane na platformach internetowych, używać ikon i obrazów z Internetu lub uwzględnić biblioteki JavaScript do tworzenia stron serwerów internetowych.
Ustaw ESP32 jako stację i połącz się z siecią Wi-Fi
Iść do “Połącz się z siecią Wi-Fi” Aby dowiedzieć się, jak ustawić ESP32 jako stację i podłączyć go do sieci.
W niektórych przypadkach może to nie być najlepsza konfiguracja – kiedy nie ma’T mieć w pobliżu sieć i chcesz, aby nadal chcesz połączyć się z ESP, aby ją kontrolować. W tym scenariuszu musisz ustawić swoją płytę ESP jako punkt dostępu.
Punkt dostępu
Po ustawieniu płyty ESP32 jako punktu dostępu możesz być podłączony przy użyciu dowolnego urządzenia z możliwościami Wi-Fi bez podłączania się do routera. Po ustawieniu ESP32 jako punktu dostępu tworzysz własną sieć Wi-Fi, a pobliskie urządzenia Wi-Fi (stacje) mogą się z nim połączyć, takie jak smartfon lub komputer. Więc nie’T musi być podłączone do routera, aby go kontrolować.
Może to być również przydatne, jeśli chcesz mieć kilka urządzeń ESP32 rozmawiających ze sobą bez potrzeby routera.
Ponieważ ESP32 nie’T połącz się dalej z przewodową siecią, taką jak router, nazywa się Soft-AP (Soft Access Point). Oznacza to, że jeśli spróbujesz załadować biblioteki lub korzystać z oprogramowania z Internetu, nie zadziała. To też nie’T Pracuj, jeśli składasz żądania HTTP do usług w Internecie, aby publikować odczyty czujników w chmurze lub korzystać z usług w Internecie (na przykład wysyłanie wiadomości e -mail).
Ustaw ESP32 jako punkt dostępu
Aby ustawić ESP32 jako punkt dostępu, ustaw tryb Wi-Fi na punkt dostępu:
Wifi.tryb (wifi_ap)
A następnie użyj metody softap () w następujący sposób:
Wifi.softap (ssid, hasło);
SSID to nazwa, którą chcesz nadać punktowi dostępu ESP32, a zmienna hasła jest hasłem dla punktu dostępu. Jeśli nie masz’t, chcesz ustawić hasło, ustaw je na null .
Istnieją również inne opcjonalne parametry, które można przekazać do metody softap (). Oto wszystkie parametry:
Wifi.softap (const char* ssid, const char* hasło, int kanał, int ssid_hidden, int max_connection)
- SSID: Nazwa punktu dostępu – maksymalnie 63 znaków;
- hasło : Minimum 8 znaków; Ustaw na NULL, jeśli chcesz, aby punkt dostępu był otwarty;
- Kanał: numer kanału Wi-Fi (1-13)
- ssid_hidden: (0 = transmisja ssid, 1 = ukryj ssid)
- Max_Connection: maksymalne jednoczesne połączone klienci (1-4)
Mamy pełny samouczek wyjaśniający, jak skonfigurować ESP32 jako punkt dostępu:
Stacja Wi-Fi + punkt dostępu
ESP32 może być ustawiony jako stacja Wi-Fi i punkt dostępu jednocześnie. Ustaw swój tryb na wifi_ap_sta .
Wifi.tryb (wifi_ap_sta);
Scan Wi-Fi Networks
ESP32 może skanować pobliskie sieci Wi-Fi w swoim zakresie Wi-Fi. W swoim Arduino Ide idź do Plik > Przykłady > Wifi > Wifiscan. To załaduje szkic, który skanuje sieci Wi-Fi w zakresie tablicy ESP32.
Może to być przydatne, aby sprawdzić, czy sieć Wi-Fi Ciebie’próba połączenia się znajduje się w zakresie Twojej płyty lub innych aplikacji. Twój projekt Wi-Fi może często działać, ponieważ może nie być w stanie połączyć się z routerem z powodu niewystarczającej siły Wi-Fi.
Tutaj’S Przykład:
/* Przykład z Wi -Fi> Wifiscan Pełne szczegóły na stronie https: // losowoNoriorials.com/ esp32 użytkownika wi-fi-fi-functions-arduino/ */ #include "wifi.H "void setup () < Serial.begin(115200); // Set WiFi to station mode and disconnect from an AP if it was previously connected WiFi.mode(WIFI_STA); WiFi.disconnect(); delay(100); Serial.println("Setup done"); >Void Loop () < Serial.println("scan start"); // WiFi.scanNetworks will return the number of networks found int n = WiFi.scanNetworks(); Serial.println("scan done"); if (n == 0) < Serial.println("no networks found"); >w przeciwnym razie < Serial.print(n); Serial.println(" networks found"); for (int i = 0; i < n; ++i) < // Print SSID and RSSI for each network found Serial.print(i + 1); Serial.print(": "); Serial.print(WiFi.SSID(i)); Serial.print(" ("); Serial.print(WiFi.RSSI(i)); Serial.print(")"); Serial.println((WiFi.encryptionType(i) == WIFI_AUTH_OPEN)?" ":"*"); delay(10); >> Serial.println („”); // poczekaj trochę przed skanowaniem opóźnienia (5000); >
Możesz przesłać go na swoją planszę i sprawdzić dostępne sieci, a także RSSI (wskaźnik siły sygnału otrzymanego).
Wifi.ScannetWorks () zwraca liczbę znalezionych sieci.
int n = wifi.ScannetWorks ();
Po skanowaniu możesz uzyskać dostęp do parametrów dotyczących każdej sieci.
Wifi.SSID () drukuje SSID dla określonej sieci:
Seryjny.Drukuj (Wi -Fi.Ssid (i));
Wifi.RSSI () zwraca RSSI tej sieci. RSSI oznacza Renevived SIgnal SDługość Indicator. Szacunkowa miara poziomu mocy, którą urządzenie klienckie RF odbiera z punktu dostępu lub routera.
Seryjny.Drukuj (Wi -Fi.Rssi (i));
Wreszcie Wifi.EncryptionType () Zwraca typ szyfrowania sieci. Ten konkretny przykład stawia * w przypadku otwartych sieci. Jednak funkcja ta może zwrócić jedną z następujących opcji (nie tylko otwarte sieci):
- Wifi_auth_open
- Wifi_auth_wep
- Wifi_auth_wpa_psk
- Wifi_auth_wpa2_psk
- Wifi_auth_wpa_wpa2_pk
- Wifi_auth_wpa2_enterprise
Połącz się z siecią Wi-Fi
Aby podłączyć ESP32 z określoną siecią Wi-Fi, musisz znać jego SSID i hasło. Ponadto sieć ta musi znajdować się w zakresie ESP32 Wi-Fi (aby to sprawdzić, możesz użyć poprzedniego przykładu do skanowania sieci Wi-Fi).
Możesz użyć następującej funkcji, aby podłączyć ESP32 z siecią Wi-Fi initwifi ():
void initwifi () < WiFi.mode(WIFI_STA); WiFi.begin(ssid, password); Serial.print("Connecting to WiFi .."); while (WiFi.status() != WL_CONNECTED) < Serial.print('.'); delay(1000); >Seryjny.println (wifi.localIP ()); >
Zmienne SSID i hasło przechowują SSID i hasło sieci, z którą chcesz się połączyć.
// Zastąp swoje poświadczenia sieciowe const char* ssid = "zastąpienie_with_your_ssid"; const char* hasło = "zamiennik_with_your_password";
Następnie musisz po prostu wywołać funkcję initwifi () w konfiguracji () .
Jak to działa?
Pozwalać’S Spójrz szybko, jak działa ta funkcja.
Najpierw ustaw tryb Wi-Fi. Jeśli ESP32 będzie podłączony do innej sieci (punkt dostępu/hotspot), musi być w trybie stacji.
Wifi.tryb (wifi_sta);
Następnie użyj WiFi.początek (), aby połączyć się z siecią. Musisz przejść jako argumenty SSID Network i jej hasło:
Wifi.początek (SSID, hasło);
Łączenie się z siecią Wi-Fi może potrwać trochę czasu, więc zwykle dodajemy pętlę, która wciąż sprawdza, czy połączenie zostało już ustalone za pomocą Wi-Fi.status() . Po pomyślnym ustaleniu połączenia zwraca WL_Connected .
While (WiFi.status() != Wl_connected)
Uzyskaj status połączenia Wi-Fi
Aby uzyskać status połączenia Wi-Fi, możesz użyć WiFi.status() . Zwraca to jedną z następujących wartości, które odpowiadają stałym w tabeli:
Wartość | Stały | Oznaczający |
0 | Wl_idle_status | Tymczasowy status przypisany podczas Wi -Fi.początek () jest nazywany |
1 | WL_NO_SSID_AVAIL | Kiedy nie są dostępne SSID |
2 | Wl_scan_completed | Scan Networks są zakończone |
3 | Wl_connected | Po połączeniu z siecią WiFi |
4 | Wl_connect_failed | Kiedy połączenie nie powiedzie się wszystkich prób |
5 | Wl_connection_lost | Kiedy połączenie zostanie utracone |
6 | Wl_disconnected | Po odłączeniu się od sieci |
Uzyskaj siłę połączenia Wi -Fi
Aby uzyskać siłę połączenia Wi -Fi, możesz po prostu zadzwonić.RSSI () po połączeniu Wi -Fi.
Tutaj’S Przykład:
/* Pełne szczegóły na https: // RandomnerdTutorials.com/ esp32 użytkownika Wi-Fi-functions-arduino/ */ #include // Zastąp swoje poświadczenia sieciowe (stacja) const char * ssid = "zastąpienie_with_your_ssid"; const char* hasło = "zamiennik_with_your_password"; void initwifi () < WiFi.mode(WIFI_STA); WiFi.begin(ssid, password); Serial.print("Connecting to WiFi .."); while (WiFi.status() != WL_CONNECTED) < Serial.print('.'); delay(1000); >Seryjny.println (wifi.localIP ()); > void setup () < Serial.begin(115200); initWiFi(); Serial.print("RRSI: "); Serial.println(WiFi.RSSI()); >Void Loop () < // put your main code here, to run repeatedly: >
Włóż poświadczenia sieciowe i prześlij kod.
Otwórz monitor szeregowy i naciśnij przycisk ESP32 na pokładzie RST. Połączy się z twoją siecią i wydrukuje RSSI (wskaźnik wytrzymałości sygnału otrzymanego).
Niższa wartość bezwzględna oznacza najsilniejsze połączenie Wi-Fi.
Uzyskaj adres IP ESP32
Gdy ESP32 jest ustawiony jako stacja Wi-Fi, może łączyć się z innymi sieciami (jak router). W tym scenariuszu router przypisuje unikalny adres IP na planszy ESP32. Aby zdobyć swoją planszę’S adres IP, musisz zadzwonić do Wi -Fi.LocalIP () Po nawiązaniu połączenia z siecią.
Seryjny.println (wifi.localIP ());
Ustaw statyczny adres IP ESP32
Zamiast otrzymywać losowo przypisany adres IP, możesz ustawić dostępny adres IP swojej preferencji na ESP32 za pomocą Wi -Fi.config () .
Poza funkcjami Setup () i Loop () zdefiniuj następujące zmienne z własnym statycznym adresem IP i odpowiednim adresem IP bramy. Domyślnie następujący kod przypisuje adres IP 192.168.1.184, który działa w bramie 192.168.1.1.
// Ustaw statyczny adres IP iPaddress Local_IP (192, 168, 1, 184); // Ustaw adres IP Gateway iPaddress Gateway (192, 168, 1, 1); Podsieć ipaddress (255, 255, 0, 0); IPaddress PrimaryDns (8, 8, 8, 8); // Opcjonalne iPaddress SecondaryDns (8, 8, 4, 4); // opcjonalny
Następnie w Setup () musisz zadzwonić do Wi -Fi.Metoda config () do przypisania konfiguracji do ESP32.
// konfiguruje statyczny adres IP, jeśli (!Wifi.config (local_ip, brama, podsieć, podstawowa
Parametry PrimaryDN i SecondaryDns są opcjonalne i można je usunąć.
Zalecamy przeczytanie następującego samouczka, aby dowiedzieć się, jak ustawić statyczny adres IP:
Odłącz od sieci Wi-Fi
Aby odłączyć się od wcześniej podłączonej sieci Wi-Fi, użyj WiFi.rozłączyć się() :
Wifi.rozłączyć się()
Ponowne połączenie się z siecią Wi-Fi po zgubionym połączeniu
Aby ponownie połączyć się z Wi-Fi po utracie połączenia, możesz użyć Wi-Fi.RECONNEct (), aby spróbować ponownie połączyć się z wcześniej podłączonym punktem dostępu:
Wifi.na nowo połączyć()
Lub możesz zadzwonić do Wi -Fi.odłącz (), a następnie WiFi.Rozpocznij (SSID, hasło) .
Wifi.rozłączyć się(); Wifi.początek (SSID, hasło);
Alternatywnie możesz również spróbować ponownie uruchomić ESP32 za pomocą ESP.restart (), gdy połączenie zostanie utracone.
Możesz dodać coś takiego jak fragment poniżej do pętli (), który sprawdza raz na jakiś czas, jeśli płyta jest podłączona.
niepodpisany długi prąd prądowy = millis (); // Jeśli Wi -Fi jest w dół, spróbuj ponownie połączyć się if (wifi.status() != Wl_connected) && (currentMillis - poprzednimillis> = interwał))
Przywdziewać’nie zapomnij zadeklarować poprzednich zmiennych Millis i Interwałowych. Interwał odpowiada okresowi między każdą kontrolą w milisekundach (na przykład 30 sekund):
niepodpisany długi poprzedni Millis = 0; Niepodpisany długi przedział = 30000;
Tutaj’s pełny przykład.
/* Rui Santos Pełne szczegóły projektu na https: // landomnerdtuorials.COM/ SOCED-RECONNEct-ESP32-to-WIFI/ Zezwolenie jest niniejszym, bezpłatnie, dla każdej osoby, która otrzymuje kopię tego oprogramowania i powiązane pliki dokumentacji. Powyższe zawiadomienie o prawach autorskich i niniejsze zawiadomienie o zezwoleniu powinny być zawarte we wszystkich kopiach lub znacznych częściach oprogramowania. */ #include // Zastąp swoje poświadczenia sieciowe (stacja) const char* ssid = "zamiennik_with_your_ssid"; const char* hasło = "zamiennik_with_your_password"; niepodpisany długi poprzedni Millis = 0; Niepodpisany długi przedział = 30000; void initwifi () < WiFi.mode(WIFI_STA); WiFi.begin(ssid, password); Serial.print("Connecting to WiFi .."); while (WiFi.status() != WL_CONNECTED) < Serial.print('.'); delay(1000); >Seryjny.println (wifi.localIP ()); > void setup () < Serial.begin(115200); initWiFi(); Serial.print("RSSI: "); Serial.println(WiFi.RSSI()); >Void Loop () < unsigned long currentMillis = millis(); // if WiFi is down, try reconnecting every CHECK_WIFI_TIME seconds if ((WiFi.status() != WL_CONNECTED) && (currentMillis - previousMillis >= interwał)) < Serial.print(millis()); Serial.println("Reconnecting to WiFi. "); WiFi.disconnect(); WiFi.reconnect(); previousMillis = currentMillis; >>
Ten przykład pokazuje, jak połączyć się z siecią i sprawdza co 30 sekund, jeśli jest nadal podłączony. Jeśli to nie’t, odłącza się i próbuje ponownie połączyć się.
Alternatywnie możesz również użyć zdarzeń Wi -Fi, aby wykryć, że połączenie zostało utracone i wywołać funkcję, aby obsłużyć, co zrobić, kiedy to się stanie (patrz następna sekcja).
ESP32 Wydarzenia Wi-Fi
ESP32 może obsłużyć wszystkie następujące zdarzenia Wi-Fi (sprawdź kod źródłowy):
0 | Arduino_event_wifi_ready | ESP32 Wi-Fi gotowy |
1 | Arduino_event_wifi_scan_done | ESP32 kończy skanowanie AP |
2 | Arduino_event_wifi_sta_start | Start stacji ESP32 |
3 | Arduino_event_wifi_sta_stop | Zatrzymanie stacji ESP32 |
4 | Arduino_event_wifi_sta_connected | Stacja ESP32 podłączona do AP |
5 | Arduino_event_wifi_sta_disconnected | Stacja ESP32 odłączona od AP |
6 | Arduino_event_wifi_sta_authmode_change | Tryb autoryzacji AP podłączony przez stację ESP32 zmienił się |
7 | Arduino_event_wifi_sta_got_ip | Stacja ESP32 otrzymała IP od podłączonego AP |
8 | Arduino_event_wifi_sta_lost_ip | Stacja ESP32 utracona IP, a IP jest resetowany do 0 |
9 | Arduino_event_wps_er_success | Stacja ESP32 WPS odnosi sukcesy w trybie rejestracyjnym |
10 | Arduino_event_wps_er_failed | Stacja ESP32 WPS nie powiada się w trybie rejestracyjnym |
11 | Arduino_event_wps_er_timeout | ESP32 stacja stacji limit czasu WPS w trybie rejestracyjnym |
12 | Arduino_event_wps_er_pin | ESP32 STACJA KOD PIN WPS w trybie rejestracyjnym |
13 | Arduino_event_wifi_ap_start | ESP32 Soft-AP start |
14 | Arduino_event_wifi_ap_stop | ESP32 Soft-AP stop |
15 | Arduino_event_wifi_ap_staconnected | stacja podłączona do esp32 soft-ap |
16 | Arduino_event_wifi_ap_stadisconnected | stacja odłączona od esp32 soft-ap |
17 | Arduino_event_wifi_ap_staipassigned | ESP32 Soft-AP przypisz IP do podłączonej stacji |
18 | Arduino_event_wifi_ap_probereqrecved | Odbierz pakiet żądania sondy w interfejsie Soft-AP |
19 | Arduino_event_wifi_ap_got_ip6 | Preferowany jest punkt dostępu ESP32 V6IP |
19 | Arduino_event_wifi_sta_got_ip6 | Preferowany jest stacja ESP32 V6IP |
19 | Arduino_event_eth_got_ip6 | Ethernet IPv6 jest preferowany |
20 | Arduino_event_eth_start | ESP32 Ethernet Start |
21 | Arduino_event_eth_stop | ESP32 Ethernet Stop |
22 | Arduino_event_eth_connected | ESP32 Ethernet PHY Link |
23 | Arduino_event_eth_disconnected | ESP32 Ethernet PHY Link |
24 | Arduino_event_eth_got_ip | ESPE32 Ethernet dostał IP od podłączonego AP |
25 | Arduino_event_max |
Aby uzyskać pełny przykład, jak korzystać z tych wydarzeń, w Arduino IDE, przejdź do Plik > Przykłady > Wifi > Wificlientevents.
/* Ten szkic pokazuje użycie zdarzenia Wi -Fi - przykład z Wi -Fi> wififilientevents Pełne szczegóły na https: // losowoNorDtuorials.com/ esp32 użytkownika Wi-Fi-Fi-Functions-arduino/ *// * * WIFI Zdarzenia 0 arduino_event_wifi_ready < ESP32 WiFi ready 1 ARDUINO_EVENT_WIFI_SCAN_DONE < ESP32 finish scanning AP 2 ARDUINO_EVENT_WIFI_STA_START < ESP32 station start 3 ARDUINO_EVENT_WIFI_STA_STOP < ESP32 station stop 4 ARDUINO_EVENT_WIFI_STA_CONNECTED < ESP32 station connected to AP 5 ARDUINO_EVENT_WIFI_STA_DISCONNECTED < ESP32 station disconnected from AP 6 ARDUINO_EVENT_WIFI_STA_AUTHMODE_CHANGE < the auth mode of AP connected by ESP32 station changed 7 ARDUINO_EVENT_WIFI_STA_GOT_IP < ESP32 station got IP from connected AP 8 ARDUINO_EVENT_WIFI_STA_LOST_IP < ESP32 station lost IP and the IP is reset to 0 9 ARDUINO_EVENT_WPS_ER_SUCCESS < ESP32 station wps succeeds in enrollee mode 10 ARDUINO_EVENT_WPS_ER_FAILED < ESP32 station wps fails in enrollee mode 11 ARDUINO_EVENT_WPS_ER_TIMEOUT < ESP32 station wps timeout in enrollee mode 12 ARDUINO_EVENT_WPS_ER_PIN < ESP32 station wps pin code in enrollee mode 13 ARDUINO_EVENT_WIFI_AP_START < ESP32 soft-AP start 14 ARDUINO_EVENT_WIFI_AP_STOP < ESP32 soft-AP stop 15 ARDUINO_EVENT_WIFI_AP_STACONNECTED < a station connected to ESP32 soft-AP 16 ARDUINO_EVENT_WIFI_AP_STADISCONNECTED < a station disconnected from ESP32 soft-AP 17 ARDUINO_EVENT_WIFI_AP_STAIPASSIGNED < ESP32 soft-AP assign an IP to a connected station 18 ARDUINO_EVENT_WIFI_AP_PROBEREQRECVED < Receive probe request packet in soft-AP interface 19 ARDUINO_EVENT_WIFI_AP_GOT_IP6 < ESP32 ap interface v6IP addr is preferred 19 ARDUINO_EVENT_WIFI_STA_GOT_IP6 < ESP32 station interface v6IP addr is preferred 20 ARDUINO_EVENT_ETH_START < ESP32 ethernet start 21 ARDUINO_EVENT_ETH_STOP < ESP32 ethernet stop 22 ARDUINO_EVENT_ETH_CONNECTED < ESP32 ethernet phy link up 23 ARDUINO_EVENT_ETH_DISCONNECTED < ESP32 ethernet phy link down 24 ARDUINO_EVENT_ETH_GOT_IP < ESP32 ethernet got IP from connected AP 19 ARDUINO_EVENT_ETH_GOT_IP6 < ESP32 ethernet interface v6IP addr is preferred 25 ARDUINO_EVENT_MAX */ #include const char* ssid = "REPLACE_WITH_YOUR_SSID"; const char* password = "REPLACE_WITH_YOUR_PASSWORD"; void WiFiEvent(WiFiEvent_t event)< Serial.printf("[WiFi-event] event: %d\n", event); switch (event) < case ARDUINO_EVENT_WIFI_READY: Serial.println("WiFi interface ready"); break; case ARDUINO_EVENT_WIFI_SCAN_DONE: Serial.println("Completed scan for access points"); break; case ARDUINO_EVENT_WIFI_STA_START: Serial.println("WiFi client started"); break; case ARDUINO_EVENT_WIFI_STA_STOP: Serial.println("WiFi clients stopped"); break; case ARDUINO_EVENT_WIFI_STA_CONNECTED: Serial.println("Connected to access point"); break; case ARDUINO_EVENT_WIFI_STA_DISCONNECTED: Serial.println("Disconnected from WiFi access point"); break; case ARDUINO_EVENT_WIFI_STA_AUTHMODE_CHANGE: Serial.println("Authentication mode of access point has changed"); break; case ARDUINO_EVENT_WIFI_STA_GOT_IP: Serial.print("Obtained IP address: "); Serial.println(WiFi.localIP()); break; case ARDUINO_EVENT_WIFI_STA_LOST_IP: Serial.println("Lost IP address and IP address is reset to 0"); break; case ARDUINO_EVENT_WPS_ER_SUCCESS: Serial.println("WiFi Protected Setup (WPS): succeeded in enrollee mode"); break; case ARDUINO_EVENT_WPS_ER_FAILED: Serial.println("WiFi Protected Setup (WPS): failed in enrollee mode"); break; case ARDUINO_EVENT_WPS_ER_TIMEOUT: Serial.println("WiFi Protected Setup (WPS): timeout in enrollee mode"); break; case ARDUINO_EVENT_WPS_ER_PIN: Serial.println("WiFi Protected Setup (WPS): pin code in enrollee mode"); break; case ARDUINO_EVENT_WIFI_AP_START: Serial.println("WiFi access point started"); break; case ARDUINO_EVENT_WIFI_AP_STOP: Serial.println("WiFi access point stopped"); break; case ARDUINO_EVENT_WIFI_AP_STACONNECTED: Serial.println("Client connected"); break; case ARDUINO_EVENT_WIFI_AP_STADISCONNECTED: Serial.println("Client disconnected"); break; case ARDUINO_EVENT_WIFI_AP_STAIPASSIGNED: Serial.println("Assigned IP address to client"); break; case ARDUINO_EVENT_WIFI_AP_PROBEREQRECVED: Serial.println("Received probe request"); break; case ARDUINO_EVENT_WIFI_AP_GOT_IP6: Serial.println("AP IPv6 is preferred"); break; case ARDUINO_EVENT_WIFI_STA_GOT_IP6: Serial.println("STA IPv6 is preferred"); break; case ARDUINO_EVENT_ETH_GOT_IP6: Serial.println("Ethernet IPv6 is preferred"); break; case ARDUINO_EVENT_ETH_START: Serial.println("Ethernet started"); break; case ARDUINO_EVENT_ETH_STOP: Serial.println("Ethernet stopped"); break; case ARDUINO_EVENT_ETH_CONNECTED: Serial.println("Ethernet connected"); break; case ARDUINO_EVENT_ETH_DISCONNECTED: Serial.println("Ethernet disconnected"); break; case ARDUINO_EVENT_ETH_GOT_IP: Serial.println("Obtained IP address"); break; default: break; >> void wifigootip (zdarzenie wifievent_t, wifieventinfo_t info) < Serial.println("WiFi connected"); Serial.println("IP address: "); Serial.println(IPAddress(info.got_ip.ip_info.ip.addr)); >void Setup ()< Serial.begin(115200); // delete old config WiFi.disconnect(true); delay(1000); // Examples of different ways to register wifi events WiFi.onEvent(WiFiEvent); WiFi.onEvent(WiFiGotIP, WiFiEvent_t::ARDUINO_EVENT_WIFI_STA_GOT_IP); WiFiEventId_t eventID = WiFi.onEvent([](WiFiEvent_t event, WiFiEventInfo_t info)< Serial.print("WiFi lost connection. Reason: "); Serial.println(info.wifi_sta_disconnected.reason); >, Wifievent_t :: arduino_event_wifi_sta_disconnected); // Usuń szereg seryjny zdarzeń Wi -Fi.print („ID zdarzenia Wi -Fi:”); Seryjny.println (eventId); // wifi.removevent (eventId); Wifi.początek (SSID, hasło); Seryjny.println (); Seryjny.println (); Seryjny.println („Poczekaj na Wi -Fi. ");> void Loop ()
Z wydarzeniami Wi-Fi, nie’Trzeba stale sprawdzać stan Wi-Fi. Kiedy nastąpi pewne zdarzenie, automatycznie wywołuje odpowiednią funkcję obsługi.
Ponowne połączenie się z siecią Wi-Fi po utratę połączenia (zdarzenia Wi-Fi)
Zdarzenia Wi-Fi mogą być przydatne do wykrycia, że połączenie zostało utracone i spróbować ponownie połączyć się zaraz po (użyj zdarzenia System_Event_AP_Stadisconnected). Tutaj’S Przykładowy kod:
/* Rui Santos Pełne szczegóły projektu na https: // landomnerdtuorials.COM/ SOCED-RECONNEct-ESP32-to-WIFI/ Zezwolenie jest niniejszym, bezpłatnie, dla każdej osoby, która otrzymuje kopię tego oprogramowania i powiązane pliki dokumentacji. Powyższe zawiadomienie o prawach autorskich i niniejsze zawiadomienie o zezwoleniu powinny być zawarte we wszystkich kopiach lub znacznych częściach oprogramowania. */ #include const char* ssid = "zastąpienie_with_your_ssid"; const char* hasło = "zamiennik_with_your_password"; void wifistationConnected (zdarzenie wifievent_t, wifieventinfo_t Info) < Serial.println("Connected to AP successfully!"); >void wifigootip (zdarzenie wifievent_t, wifieventinfo_t Info) < Serial.println("WiFi connected"); Serial.println("IP address: "); Serial.println(WiFi.localIP()); >void wifistationdisconnected (zdarzenie wifievent_t, wifieventinfo_t info) < Serial.println("Disconnected from WiFi access point"); Serial.print("WiFi lost connection. Reason: "); Serial.println(info.wifi_sta_disconnected.reason); Serial.println("Trying to Reconnect"); WiFi.begin(ssid, password); >void Setup () < Serial.begin(115200); // delete old config WiFi.disconnect(true); delay(1000); WiFi.onEvent(WiFiStationConnected, WiFiEvent_t::ARDUINO_EVENT_WIFI_STA_CONNECTED); WiFi.onEvent(WiFiGotIP, WiFiEvent_t::ARDUINO_EVENT_WIFI_STA_GOT_IP); WiFi.onEvent(WiFiStationDisconnected, WiFiEvent_t::ARDUINO_EVENT_WIFI_STA_DISCONNECTED); /* Remove WiFi event Serial.print("WiFi Event ID: "); Serial.println(eventID); WiFi.removeEvent(eventID);*/ WiFi.begin(ssid, password); Serial.println(); Serial.println(); Serial.println("Wait for WiFi. "); >Void Loop ()
Jak to działa?
W tym przykładzie my’VE dodano trzy zdarzenia Wi-Fi: Gdy ESP32 łączy się, gdy otrzymuje adres IP, a gdy się rozłącza: arduino_event_wifi_sta_connected, arduino_event_wifi_sta_goot_ip, arduino_event_wifi_sta_disonnected .
Gdy stacja ESP32 łączy się z punktem dostępu (zdarzenie Arduino_Event_wifi_sta_connected), funkcja WifistationConnected () zostanie wywołana:
Wifi.Onevent (wifistationConnected, wifievent_t :: arduino_event_wifi_sta_connected);
Funkcja wifistationConnected () po prostu drukuje, że ESP32 podłączył się do punktu dostępu (na przykład router). Możesz jednak zmodyfikować funkcję, aby wykonać dowolne inne zadanie (takie jak oświetlenie LED, aby wskazać, że jest ona pomyślnie podłączona do sieci).
void wifistationConnected (zdarzenie wifievent_t, wifieventinfo_t Info)
Gdy ESP32 otrzyma swój adres IP, funkcja WiFigotip () działa.
Wifi.Onevent (wifigootip, wifievent_t :: arduino_event_wifi_sta_got_ip);
Ta funkcja po prostu drukuje adres IP na monitorze szeregowym.
void wifigootip (zdarzenie wifievent_t, wifieventinfo_t Info)
Gdy ESP32 traci połączenie z punktem dostępu (arduino_event_wifi_sta_disconnected), funkcja wifistationDisConnected () jest wywoływana.
Wifi.Onevent (wifistationdisconnected, wifievent_t :: arduino_event_wifi_sta_disconnected);
Ta funkcja drukuje komunikat wskazujący, że połączenie zostało utracone i próbuje ponownie połączyć:
void wifistationdisconnected (zdarzenie wifievent_t, wifieventinfo_t info)
ESP32 Wifimulti
ESP32 Wifimulti umożliwia rejestrację wielu sieci (kombinacje SSID/hasło). ESP32 połączy się z siecią Wi-Fi z najsilniejszym sygnałem (RSSI). Jeśli połączenie zostanie utracone, połączy się z następną siecią na liście. Wymaga to uwzględnienia wifimulti.Biblioteka H (ty don’T musi go zainstalować, jest domyślnie w pakiecie ESP32).
Aby dowiedzieć się, jak korzystać z WifiMulti, przeczytaj następujący samouczek:
Zmień nazwę hosta ESP32
Aby ustawić niestandardową nazwę hosta na planszy, zadzwoń do Wi -Fi.sethostname (your_new_hostname); Przed wifi.zaczynać();
Domyślna nazwa hosta ESP32 to espressif .
Istnieje metoda dostarczona przez WiFi.Biblioteka H, która pozwala ustawić niestandardową nazwę hosta.
Najpierw zacznij od zdefiniowania nowej nazwy hosta. Na przykład:
String hostName = "esp32 Temperatura węzła";
Następnie zadzwoń do Wi -Fi.funkcja sethostname () przed wywołaniem Wi -Fi.zaczynać() . Musisz także zadzwonić do Wi -Fi.config (), jak pokazano poniżej:
Wifi.config (inaddr_none, inaddr_none, inaddr_none, inaddr_none); Wifi.Sethostname (nazwa hosta.c_str ()); // Zdefiniuj nazwę hosta
Możesz skopiować pełny przykład poniżej:
/* Rui Santos Pełne szczegóły projektu na https: // landomnerdtuorials.COM/ ESP32-SET-Custom-Hostname-Aduino/ Zezwolenie jest niniejszym, bezpłatnie, dla każdej osoby, która otrzymuje kopię tego oprogramowania i powiązane pliki dokumentacji. Powyższe zawiadomienie o prawach autorskich i niniejsze zawiadomienie o zezwoleniu powinny być zawarte we wszystkich kopiach lub znacznych częściach oprogramowania. */ #include // Zastąp swoje poświadczenia sieciowe (stacja) const char* ssid = "zamiennik_with_your_ssid"; const char* hasło = "zamiennik_with_your_password"; String hostName = "esp32 Temperatura węzła"; void initwifi () < WiFi.mode(WIFI_STA); WiFi.config(INADDR_NONE, INADDR_NONE, INADDR_NONE, INADDR_NONE); WiFi.setHostname(hostname.c_str()); //define hostname //wifi_station_set_hostname( hostname.c_str() ); WiFi.begin(ssid, password); Serial.print("Connecting to WiFi .."); while (WiFi.status() != WL_CONNECTED) < Serial.print('.'); delay(1000); >Seryjny.println (wifi.localIP ()); > void setup () < Serial.begin(115200); initWiFi(); Serial.print("RRSI: "); Serial.println(WiFi.RSSI()); >Void Loop () < // put your main code here, to run repeatedly: >
Możesz użyć tego poprzedniego fragmentu kodu w swoich projektach, aby ustawić niestandardową nazwę hosta dla ESP32.
Ważny: Może być konieczne ponowne uruchomienie routera, aby zmiany w obowiązywaniu.
Po tym, jeśli przejdziesz do ustawień routera, ty’Zobacz ESP32 z niestandardową nazwą hosta.
Owinięcie
Ten artykuł był kompilacją niektórych z najbardziej używanych i przydatnych funkcji Wi-Fi ESP32. Chociaż istnieje wiele przykładów korzystania z możliwości Wi-Fi ESP32, niewiele jest dokumentacji wyjaśniającej, jak korzystać z funkcji Wi-Fi za pomocą ESP32 za pomocą Arduino IDE. Więc my’VE postanowił złożyć ten przewodnik, aby ułatwić korzystanie z funkcji ESP32 Wi-Fi w twoich projektach.
Jeśli masz inne sugestie, możesz je udostępnić w sekcji komentarzy.
Mamy nadzieję, że ty’ve uznało ten samouczek przydatny.
Dowiedz się więcej o ESP32 z naszymi zasobami:
- Naucz się ESP32 z Arduino Ide
- Zbuduj serwery internetowe z ESP32 i ESP8266
- Więcej projektów i samouczków ESP32…
[ebook] buduj serwery internetowe z ESP32 i ESP8266 (wydanie 2
Buduj projekty serwerów internetowych z płytkami ESP32 i ESP8266, aby kontrolować wyjścia i zdalnie monitorować czujniki. Naucz protokoły komunikacji HTML, CSS, JavaScript i Client-Server POBIERAĆ »
Buduj projekty serwerów internetowych z płytkami ESP32 i ESP8266, aby kontrolować wyjścia i zdalnie monitorować czujniki. Naucz protokoły komunikacji HTML, CSS, JavaScript i Client-Server POBIERAĆ »
Zalecane zasoby
Zbuduj od zera system automatyzacji domu » Z Raspberry Pi, ESP8266, Arduino i węzłami.
Automatyzacja domu za pomocą ebooka i kursu esp8266 » Buduj projekty AOT i Home Automation.
Projekty Arduino krok po kroku » Zbuduj 25 projektów Arduino z naszym kursem, nawet bez wcześniejszego doświadczenia!
Co dalej czytać…
ESP8266 Nodemcu z czujnikiem barometrycznym/wysokościomierza BMP388 (Arduino IDE)
Aktualizacje ESP32 OTA (Over-the-Air)-Asyncelegantota (vs Code + Platformio)
ESP32 LORA Monitoring z serwerem WWW (komunikacja dalekiego zasięgu)
Podobał mi się ten projekt? Bądź na bieżąco, subskrybując nasz biuletyn!
84 Myśli o “ESP32 Przydatne funkcje biblioteki Wi-Fi (Arduino IDE)”
Cześć
Twój blog jest bardzo przerażający i bardzo pomaga, ale tęsknię za informacjami, aby zmienić nazwę hosta ESP32. Czy można zmienić nazwę jednostki espressif na nazwę określoną przez projekt.
Wiem, że mogę zmienić nazwę w routerze WLAN, ale nazwa urządzenia nadal jest espressif
Jose Luiz Sanchez Lorenzo
Cześć,
Możesz zmienić nazwę hosta ESP32 za pomocą takich poleceń: String MA02_ID = “MA02_09”;
Wifi.Sethostname (MA02_ID.c_str ()); // Zdefiniuj odpowiedź hosta
Cześć Werner, spróbuj tego, powinno to załatwić sprawę �� wifi.tryb (wifi_mode_sta);
Wifi.config (inaddr_none, inaddr_none, inaddr_none, inaddr_none);
Wifi.sethostname (twoja_hostname);
Wifi.początek (twój_wifi_ssid, twój_wifi_pass);
Odpowiedź
Sandy Riaoch
Cześć,
Niestety nie’t pracuj dla mnie - wypróbowałem to na 2 różnych płytkach i o różnych nazwach hosta. Małe nazwy hostów po prostu pokazują ExpressIF w skanie sieciowym, a większa nazwa hosta po prostu daje puste �� Pozdrawiam, Sandy Odpowiedz
Przykro mi to słyszeć…
Działa idealnie po mojej stronie!
Nawet z dość długą nazwą z przestrzeniami. Spróbuj odświeżyć listę klientów DHCP w router. Odpowiedź
Sandy Riaoch
Cześć,
Przepraszam za opóźnienie.
Ponownie uruchomiłem mój router i lo i oto pojawiły się zmienione nazwy hostów - dziękuję ��
Piaszczysty
Chciałem opublikować zdjęcie, aby zilustrować mój punkt widzenia w moim ostatnim komentarzu, ale to nie’t. Możesz to zobaczyć, klikając link. Odpowiedź
Framework Arduino-ESP32 został właśnie zaktualizowany do wersji 1.0.5. Niektóre z poprawek obejmują: AD4CF146 przerób Sethostname dla Wi -Fi Sta
5DE03A39 Napraw konfigurację wifi STA do inaddr_none w 255.255.255.255 Sprawdź, czy to rozwiązuje twój problem? Odpowiedź
Jim Allison
Czy istnieje sposób, aby szybko zrobić skanowanie Wi -Fi dla określonego SSID, a kiedy wykrywa, że Wi -Fi jest dostępny (lub nie), robi coś z tymi informacjami w szkicu? Odpowiedź
Cześć Jim, coś takiego? #włączać
#Include const char* specyficzne_ssid = „mynetwork”;
const char* entype [] = „Otwórz”,
„WEP”,
„WPA_PSK”,
„WPA2_PSK”,
„WPA_WPA2_PSK”,
„WPA2_Enterprise”,
„Max”
>; stwierdzono, że BOOL WIFIINFO;
INT32_T Channel;
int32_t rssi;
wifi_auth_mode_t auth_mode;
> wifi_info; void Findwifi (const char *ssid, wifiinfo *info) info-> found = false;
int16_t n = wifi.ScannetWorks ();
dla (uint8_t i = 0; i
info-> kanał = wifi.kanał (i);
Info-> rssi = wifi.RSSI (i);
info-> auth_mode = wifi.Szyfrowanie (i);
powrót;
>
>
> Void Setup () szeregowy.rozpocząć (115200);
findwifi (specyficzne_ssid i wifi_info);
Seryjny.printf (wifi_info.znaleziony
? „SSID: %S, kanał: %I, RSSI: %I DBM, szyfrowanie: %s \ n”
: "Ssid: %s . nie można było znaleźć \ n ”,
Specyficzne_ssid,
wifi_info.kanał,
wifi_info.RSSI,
Enc_type [wifi_info.auth_mode]);
> void Loop () <>
Odpowiedź
Przepraszam… formatowanie z Markdown Didn’t działaj prawidłowo:-/
Ale powinieneś być w stanie sformatować kod w swoim ulubionym edytorze. Odpowiedź
Naprawiłem to, publikując kod na github gist �� Odpowiedz
Sara Santos
Cześć Stéphane,
Dzięki za udostępnienie tego.
Pozdrowienia,
SARA Odpowiedz
Cześć Sara, mam pytanie: czy ESP32 może działać jak punkt dostępu i klienta MQTT w tym samym czasie?
dzięki odpowiedz
Sara Santos
Cześć.
NIE. Musi być w tej samej sieci, co broker MQTTT lub mieć dostęp do Internetu, aby połączyć się z brokerem w chmurze.
Pozdrowienia,
Sara
Jim Allison
To działało idealnie. Dziękuję! Zastanawiam się, czy istnieje szybszy sposób na zdobycie SSID bez konieczności skanowania dla wszystkich sieci, a następnie izolowanie sieci I’M Wyszukiwanie. Czy jest to sposób na zrobienie tego? Odpowiedź
Rafael Lopez
Cześć, mam nadzieję, że ktoś pomoże mi w tym problemie, ponieważ mam tygodnie pracuję nad nim i nic nie wygląda na pracę….. Mam ESP32 z moim podstawowym kodem tylko do połączenia z moim Wi -Fi, nie ma znaczenia, co robię, nie łączy się, zawsze pokazuje mi błąd odłączony od AP (zdarzenie 5)…. Czy masz pojęcie, co to się dzieje? dzięki odpowiedz
Aby użyć jako odniesienia Wi -Fi, jest kilka rzeczy, które chciałbym’lubiłem widzieć w tym; I.mi., polecenia manipulowania adresem MAC płyty i przykładu za pomocą trybów soft_ap i sta razem. Jak zauważył Werner, jeśli istnieje sposób na przedefiniowanie identyfikatora, byłoby to również wspaniale wiedzieć! To powiedziawszy, wciąż jest to świetny artykuł i chciałbym zobaczyć, jak rozszerzył się go o więcej przykładów bardziej niejasnych poleceń’ odpowiedzi. Być może tabela do pobrania polecenia/metody/zdarzenia, użyj formatu, możliwych odpowiedzi i wszelkich komentarzy (takich jak “Ważne tylko w trybie STA” Lub link do przykładu. Większość z nich jest już w artykule, po prostu nie podsumowana, tak trudna do zlokalizowania. Dzięki! Odpowiedź
Dennis Cloutier
+1 Dla przykładu działania kombinacji wifi_ap_sta. Dzięki,
Odpowiedź Dennis
Świetny samouczek!
Dzięki za twoją pracę.
Znalazłem funkcję automatycznego ponownego połączenia po odłączeniu karty bardzo interesującej. Wydaje się jednak rozumieć, że to nie’T zawsze działa. Zwłaszcza podczas korzystania z Blynk. Czy ktoś miał w tym zakresie jakiekolwiek doświadczenie?
Pozdrowienia. Mikrofon. Odpowiedź
Świetny artykuł. Woyld lubił korzystać z obu trybów, aby stworzyć przedłużenie Wi -Fi na ESP32. Ta jest mało informacji na ten temat w Internecie, chociaż wiem, że jest to możliwe. Odpowiedź
Tak, potrzebuję odpowiedzi WIFI Extender
Sprawdź te zdania PLS: “Lub możesz zadzwonić do Wi -Fi.diconnect (), a następnie WiFi.Rozpocznij (SSID, hasło)”. Musi wifi.Odłącz odpowiedź
Sara Santos
Cześć.
Dzięki. Masz rację.
To’S ustalony teraz!
Pozdrowienia,
SARA Odpowiedz
Peter Stauffert
Czy teraz możliwe jest uruchomienie esp-now razem z Wi-Fi w trybie STA?
Moim ostatnim stanem było: ESP-Now i Wi-Fi muszą udostępnić ten sam kanał, a numer kanału musi wynosić 1. Nawet gdy router rozpoczyna połączenie w kanale 1 w trybie STA, jeśli router zmienia kanał, aby uniknąć zderzeń ruchu, połączenie ESP-now pęka. Odpowiedź
Sandy Riaoch
Cześć, naprawdę dobrze - dzięki! Powtórzyłbym Dave’s prośba o przykład za pomocą trybów soft_ap i sta razem. Sandy Odpowiedz
Sara Santos
Dzieki za sugestie.
I’Dodaj to do mojej listy.
Pozdrowienia,
SARA Odpowiedz
Świetny samouczek!
Mam problemy z połączeniem się z moim lokalnym Wi -Fi i ja’Jestem pewien, że te informacje pomogą mi zrozumieć, co się dzieje. Czy masz coś podobnego dla ESP8266? Odpowiedź
Uważam, że najbardziej przydatny byłby przykładowy kod, który: próbował połączenia z przechowywanym identyfikatorem sieci i poświadczeń
Jeśli ten nie powiódł się w trybie AP, aby użytkownik mógł się połączyć, zalogować się do WebUI, zapisać nowe szczegóły sieci, a następnie ponownie uruchomić / próbować ponownie połączyć się. Nikt nie chce ponownie skompilować kodu, po prostu urządzenie może zmienić sieci. Odpowiedź
Sara Santos
Cześć.
Dzieki za sugestie.
W rzeczywistości mamy taki projekt w naszym najnowszym eBooku: https: // landomnerdtuorials.com/build-web-servers-esp32-esp8266-ebook/
I’Prawdopodobnie wydam ten projekt lub uproszczona bezpłatna wersja tego projektu.
Pozdrowienia,
SARA Odpowiedz
Bardzo pomocny dzieł. Dziękuję bardzo odpowiedzieć
To’Szkoda, że pominąłeś Wi -Fi.Komenda (). Myślę, że ta funkcja jest jedną z najważniejszych podczas korzystania z Wi -Fi i dosłownie nikt o tym nie wie. Krótko mówiąc: ta funkcja jest prawdziwa w przypadku domyślnych i przyczyn, że za każdym razem (przy każdym ponownym uruchomieniu) podczas wywoływania Wi -Fi.Rozpocznij SSID+PASS są zapisane w lampy błyskowej. To jest zabójca flash podczas korzystania z Wi -Fi i Deepsleep razem. Odpowiedź
Sara Santos
Dzięki za udostępnienie tego.
I’Dodaj go do samouczka w następnej aktualizacji.
Pozdrowienia,
SARA Odpowiedz
Cześć,
Dziękujemy za opublikowanie artykułu.
Jeśli chodzi o ponowne połączenie z siecią Wi-Fi po utraconej kodzie połączenia
Potrzebuję zmodyfikowania pętli while, aby sprawdzała na przykład dwa warunki
(Wi -Fi.status() != Wl_connected) lub (wifi.status() != Wl_no_ssid_avail) Czy możesz mi doradzić o najlepszym podejściu
Amin Shahsavar
Odkryłem, że ustawienie statycznego adresu IP w trybie stacji czasami działa, a czasem nie. Wydaje mi się, że zależy to od routera i wielu zaawansowanych rzeczy sieciowych, których nie rozumiem. Niemniej: oznacza to dla użytkownika, który chce uzyskać dostęp do strony WebServer ESP32, musi znać adres IP. Jak to rozwiązać, gdy ten użytkownik nie ma dostępu do druku szeregowego ani wyświetlacza ESP-Attachoszt? Statyczny adres IP byłby świetnym rozwiązaniem, ale po prostu nie jest wystarczająco niezawodny. Próbowałem również z MDN, a także było to niewiarygodne (pracował na iPhonie, ale nie na Androida). Jest to przypadek użycia, w którym dałbym projekt jako prezent komuś, kto nie zna Arduino i może’t oczekuj, że odczytą monitor seryjny lub coś w tym rodzaju. I Haven’t znalazłem prawdziwe rozwiązanie tego problemu w dowolnym miejscu. Jak to rozwiązać? Odpowiedź
Cześć Amin,
Zwykle serwer DHCP w router dostarcza adresy IP do klientów z listy dozwolonych adresów. Jeśli ustawisz statyczny adres IP w trybie stacji, adres ten musi zostać wykluczony z listy adresów, router może dostarczyć, w przeciwnym razie dwa same adresy. Spójrz na konfigurację routera, wyszukaj wpis DHCP i wyklucz swój statyczny adres IP. Wtedy statyczne adresy IP są naprawdę niezawodne. Odpowiedź
Amin Shahsavar
Dziękuję za odpowiedź Peter. To całkowicie sprawiłoby, że statyczne adresy IP działały. Ale moim przypadkiem użycia jest wtedy, gdy daję projekt jako prezent, który można użyć w ich sieci domowej. Mogę’T Oczekuj ich (pomyśl, że twoja matka haha) wejdzie i zadzieram w konfiguracji routera. Szukam solidnego i prostego rozwiązania, które nie wymaga odczytania monitora szeregowego ani dołączania ekranu (jednorazowe użycie tylko po to, aby znaleźć adres IP!) ani zmiana ustawień routera. Większość ludzi może’T ZROBIĆ to i chcę coś zbudować dla większości ludzi. Odpowiedź
Cześć Amin,
W twoim przypadku nie możesz iść ze statycznym adresem IP. Znasz adres Mac (fizyczny) swojej płyty ESP32 lub możesz ustawić adres MAC ESP32 na swój własny adres (patrz Rui’Szczegółowe informacje). Następnie musisz zidentyfikować dynamiczny adres IP odpowiadający adresowi MAC w aplikacji klienta. Odbywa się to przez protokół odwrócenia RARP. W systemie Windows lub Linux Użyj “ARP -A” który tworzy listę wszystkich adresów MAC i odpowiednie adresy IP w Twojej sieci. Zobacz https: // www.pcwdld.COM/FIND-EVICE-OR-IP-ADDRESS-USING-MAC-ADDRESS.
Odpowiedź Piotra
Jeśli nie masz’T chcesz dołączyć ekran LCD lub TFT do swojego urządzenia, możesz błysnąć prostą LED, aby ujawnić ostatni bajt adresu IP, przeglądając 3 cyfry dziesiętne, które na przykład to wymyślają… Zakładając, że osoba zna klasę adresu swojej sieci prywatnej (którą mogą zobaczyć na dowolnym z ich podłączonych urządzeń) �� Odpowiedz
Cześć
Dziękujemy za opublikowanie artykułu. Jeśli chodzi o pętlę While, muszę zmodyfikować pętlę While, więc na przykład sprawdza dwa warunki
(Wi -Fi.status() != Wl_connected) lub (wifi.status() != Wl_no_ssid_avail) Czy możesz mi doradzić o najlepszym podejściu
Czy jest sposób, aby pokazać moją wdzięczność, Rui i Sara? Książki i samouczki, które produkujesz. To’jest radością z pracy nad projektem, który zawiera twoją pracę, wiedząc, że opublikowałeś informacje i kod, które są dokładne i kompletne. Wy dwoje wywiera ogromny wpływ na świat Internetu Rzeczy i sieci danych, które rozwiną technologię, a także rozwinąć wiedzę tysięcy nerdów amerykańskich! Dziękuję za to, co robisz dla świata każdego dnia! Odpowiedź
Sara Santos
cześć Bob.
Dziękuję bardzo za miłe słowa.
I’Cieszę się, że lubisz nasze samouczki i ebooki.
Istnieje kilka sposobów wspierania naszej pracy. Zobacz tutaj: https: // landomnerdtuorials.com/około/.
Pozdrowienia,
SARA Odpowiedz
Szukałem tego samego rodzaju treści. Dzięki za przeprowadzenie dla nas ulepszonych badań. Spróbuję i ponownie przekazam moją opinię. Odpowiedź