ESP32 WiFi Beispiel


Als Vorbereitung für den Upload von Sketches an einen Microcontroller habe ich die ESP32-Boardinfromationen und einen USB to UART Bridge Treiber installiert, siehe: Vorbereitungen für das Programmieren eines ESP32.

Ist der ESP32 mit der ArduinoIDE verbunden, können die vorhandenen Beispiele angepasst und auf den ESP32 hochgeladen werden. Um das integrierte WiFi-Modul zu verwenden, kann sich der ESP32 wie folgt als Client in einem WLAN verbinden:

WiFi Client

Das WiFiClient-Beispiel verbindet den ESP32 mit dem angegebenen WLAN:

Nach Auswahl des Beispieles können die Variablen für das WLAN angegeben werden:
SSID: Variable "ssid" und Passwort "password" ist klar, doch was sind die folgenden Variablen: host, streamID und privateKey?

Ein Blick in den Sourcecode schafft Klarheit: Der Host ist ein Webserver mit dem der ESP nach dem Starten eine Verbindung aufbaut und die streamId, sowie der privateKey werden dabei an den Server übermittelt. Um nur die WLAN-Verbindung zu testen, können wir hier fürs Erste irgendwas reinschreiben:

Dann auf "Speichern",

"Verify and Upload"

Nachdem ich in der Arduino IDE die richtige Hardware und den richtigen COM-Port ausgewählt habe, hat der Upload funktioniert, siehe ESP32 programmieren, Arduino - Voraussetzungen installieren.

Dann noch ein Upload des Sketches und der ESP32 bootet und führt diesen aus: Der ESP verbindet sich mit dem WLAN und versucht den angegebenen Host zu kontaktieren und übermittelt dabei die angegebene "streamId" und den "privateKey" an den angegebenen Host. Als Host ist für den Verbindungsaufbau ein Server notwendig, der diesen entgegen nimmt. Nachdem ich dafür keinen Server vorbereitet habe, begnüge ich mich fürs Erste damit, dass ich die WLAN-Verbindung auf meinem Router sehen kann:

Ein Blick in den "Serial Monitor" zeigt mir die Textausgaben des Sketches:

Spiegelverkehrte Fragezeichen ⸮ im "Serial Monitor"

Wenn die Geschwindigkeit (Baud-Rate) des Sketches nicht mit der Baud-Rate des Serial Monitor übereinstimmt, wird nichts vernünftiges ausgegeben, in meinem Fall jede Menge: "⸮"

Stimmt die Geschwindigkeit, stimmt auch die Ausgabe:

Wie schon beschrieben, habe ich keinen Webserver als Gegenstelle für das Beispiel aufgebaut, entsprechend zeigt mir der Serial Monitor "connection failed"

Example HelloServer

Ein anders Beispiel um das WLAN zu testen ist ein simpler Webserver, das HelloServer-Beispiel. Für dieses Beispiel reicht es die SSID (ssid) und das WLAN-Passwort anzugeben (password):

Nach dem Upload und dem Bootvorgang ist es möglich, folgende Webseite im Browser vom ESP32 abzurufen:

 

positive Bewertung({{pro_count}})
Beitrag bewerten:
{{percentage}} % positiv
negative Bewertung({{con_count}})

DANKE für deine Bewertung!


Top-Artikel in diesem Bereich

ESP32 MQTT - Daten senden

ESP32 MQTT - Daten senden

erstellt: 24.01.2022 von Bernhard

Um Daten von einem ESP32 empfangen zu können, habe ich einen MQTT-Broker als Docker-Container vorbereitet. Der Container kann mittels Integration in Home-Assistant eingebunden werden und somit die Daten vom ESP32 über MQTT an Home-Assistant weiterleiten. Seitens ESP32 habe ich das Senden mit folgendem Sketch getestet und später die relevanten Teile in einen weiteren Sketch integriert. ... weiterlesen

ESP32 Flowmeter - RS485 Modbus

ESP32 Flowmeter - RS485 Modbus

erstellt: 27.01.2022 von Bernhard

Wie im ersten Artikel dieser Serie beschrieben, war mein erstes Ziel einen TUF-2000M Ultrasonic Flow Meter über einen ESP32 auszulesen. Dazu habe ich im Internet ein Beispiel zu einem ESP8266 gefunden: Reading a TUF-2000M Ultrasonic Flow Meter with an Arduino or ESP8266 und https://forum.arduino.cc/t/comunicacion-rs485/698786/2. Das Setup des TUF-2000M habe ich in folgendem Artikel beschrieben:  Erfahrungsbericht: Ultraschall Durchflussmesser TUF-2000M. Um den TUF-2000M mittels RS485 a... ... weiterlesen

DS18B20 Temperatursensoren ESP32, MQTT und WiFi - HowTo

DS18B20 Temperatursensoren ESP32, MQTT und WiFi - HowTo

erstellt: 14.02.2022 von Bernhard

Zusätzlich zur Anbindung eines Durchflussmessers über RS485 habe ich 5-Stück DS18B20-Temperatursensoren an den ESP32 angesteckt, damit deren Werte auch über MQTT an HomeAssistant übertragen werden. ... weiterlesen


Fragen / Kommentare