Inbetriebnahme des ESP32 NodeMCU D1 R32 WLAN Entwicklungsboards - AZ-Delivery

Hallo zusammen,

hier hat unser Blogger Gerhard Lechner bereits einen Artikel über die ESP32-Boards veröffentlicht. Heute möchte ich diesen Beitrag um eine kurze Inbetriebnahme des D1 R32 ergänzen. Das E-Book zum D1 R32 finden Sie außerdem hier.

Auch wenn sich das Board in UNO-Bauform befindet, ist dieser Controller, auch aufgrund des Prozessors, nicht gerade einsteigerfreundlich. 

In den E-Books zu den ESP32-Produkten findet sich die Anleitung zur Vorbereitung der Arduino IDE für die ESP32-Boards. (hier zum Dev Kit C)

Kurz zusammengefasst:

  • CH340-Treiber installieren
  • Arduino IDE installieren
  • Datei -> Voreinstellungen
  • BoardverwalterURL: https://dl.espressif.com/dl/package_esp32_index.json
  • Werkzeuge -> Board -> Boardverwalter
  • Suchleiste: "esp32"
  • esp32 by Espressif Systems installieren

Im Anschluss lässt sich das D1 R32 Board im Boardverwalter unter folgendem Eintrag finden:

 Die programmierbare LED (LED_BUILTIN) befindet sich an GPIO2, im Beispiel "Blink" muss also "LED_BUILTIN" durch "2" ersetzt werden.

Die Stromversorgung ist bei diesem Board solide umgesetzt:

  • Versorgung über DC-Buchse mit 5-12V (In)
  • Versorgung über USB-Buchse mit 5V (In)
  • Am Pin VIN liegt die Spannung der DC-Buchse an, das Modul kann über diesem Pin mit bis zu 12V versorgt werden (In/Out)
  • Am Pin 3.3V stehen dank AMS1117 über 500mA zur Nutzung zur Verfügung. (Out)
  • Der Pin 5V liefert über den MP1482 ebenfalls mehr als 500mA, die für Projekte verwendet werden können. (Out)

Aber Vorsicht! Die GPIOS des ESP32 sind nur mit maximal 3.3V belastbar!

 

Für analoge Sensoren können die Pins:

  • GPIO036 
  • GPIO039 

in der Arduino IDE genutzt werden, diese befinden sich im Bereich "Analog" des D1 R32 Boards. Möchten Sie diese Pins aus der Arduino IDE direkt ansprechen sollte im Arduino-Code "(36)" und "(39)" anstelle der sonst üblichen A0 und A1 verwendet werden.

I2C-Geräte lassen sich über die Pins SCL und SDA verbinden, ein I2C-Scanner gibt Auskunft über evtl. angeschlossene Geräte.
Diese Pins finden Sie in der Nähe der USB-Buchse beim Reset-Button.

Die seriellen Pins RX und TX befinden sich wie beim UNO R3 im Bereich "Digital". Bitte verbinden Sie diese Pins erst nach der Programmierung mit dem Code.

Über die mitgelieferten Beispiele der Arduino IDE lässt sich auch das WiFi Feature testen (Datei->Beispiele->WiFi->Wifi_Scan)

Mehr Informationen, das vollständige Pinout und Anwendungsbeispiele finden Sie wie gewohnt, demnächst in unserem E-Book.

Viel Spaß beim Experimentieren und bis zum nächsten Beitrag!

 

 

 

 

 

Produktvorstellungen

20 commentaires

Karin Willers

Karin Willers

Ich habe auch ein 3er Set D1 R32 Board gekauft, von denen aber leider keines eine Verbindung zum WLAN aufbauen kann, WiFi Scan funktioniert! An der Toolchain , denke ich, liegt es nicht, da der Effekt sowohl mit der Espressif Version 2.0.14, als auch mit der neuesten 3.0.0-alpha2 auftritt. Der geleiche Sketch kompliert für ein Board mit dem ESP8266 tut, was es soll. Das Board betreibe ich mit Spannungsversorgung über USB 3.0 vom Rechner. Ein USB-Hub mit Stromversorgung brachte leider keine Verbesserung.
Hat jemand noch die selben Probleme, und wie sieht eine mögliche Lösung aus?
Hat jemand einen aktuellen Schaltplan von dem Board?

Andreas Wolter

Andreas Wolter

@Woogel: es gibt eine Reihe an möglichen Fehlerquellen. Vielleicht hilft der Link hier weiter: https://forum.fhem.de/index.php?topic=117801.0
Dort sind einige Möglichkeiten verlinkt, wie man die Firmware flasht. Es könnte sein, dass eine falsche Firmware verwendet wurde. ESPEasy war ursprünglich für ESP8266 konzipiert. Eventuell liegt es daran. Das ist schwer zu sagen.

Grüße,
Andreas Wolter
AZ-Delivery Blog

Woogel

Woogel

Ich habe mit dem D1 R32 mächtige Probleme ESPEASY zum laufen zubekommen.
Installieren ok , aber dann ist ende im Gelände.
Wenn ich per 192.168.4.1 drauf gehe ist alles leer , gebe ich Wlan ein und Passwort
kann ich im Terminal sehen das er keine verbindung zum Router aufbaut .
Kann da jemand helfen
Danke

Michael

Michael

@Andreas Wolter – Vielen Dank! Ah, ich habs befürchtet, da war ich zu verwöhnt vom kleinen Dev Kit C, bei dem man die 5V direkt auf den Pin geben kann. Steckernetzteil geht nicht, mein Gehäuse ist zu eng. Dann brauche ich doch entweder ein 9V PCB-Netzteil für die Huckepack-Platine oder ich muss halt die Versorgung durch das 5V Netzteil pfuschig von unten an den VCC Pin der MicroUSB-Buchse anlöten.

Andreas Wolter

Andreas Wolter

@Michael: der Vin Pin ist normalerweise ein geregelter Spannungseingang. Es sollten mehr, als 5V anliegen, da der Regler die passenden 5V erzeugt. Ich würde immer min. 9V anlegen. Als Alternative könnte man ein Steckernetzteil von einem Smartphone mit passendem USB-Kabel verwenden. Dann wird der MC wieder über den USB-Port mit 5V versorgt.

Grüße,
Andreas Wolter
AZ-Delivery Blog

Michael

Michael

Hallo, ich habe Schwierigkeiten, dieses Board mit 5V einem Netzteil zu versorgen.

Es heißt zwar im Artikel:
- Versorgung über DC-Buchse mit 5-12V (In) (…)
- Am Pin VIN liegt die Spannung der DC-Buchse an, das Modul kann über diesem Pin mit bis zu 12V versorgt werden (In/Out)

Wenn ich auf Pin “VIN” 5V lege, läuft das Modul aber nicht. Mit Schluckauf erst ab 6 V, richtig aber erst ab 7V startet das Modul.

Kann ich stattdessen einfach 5V auf den Pin “5V” geben? Oder ist der Pin nur zum Abgreifen, nicht aber zur Stromversorgung gedacht und ich grille so zB den Step Down Konverter?

Wenn der Pin “5V” nicht verwendbar ist: Gibt es außer der USB-Buchse (der Stecker passt nicht in mein Gehäuse) tatsächlich keine Möglichkeit, das Board von außen über Pins mit 5 V zu versorgen?

Andreas Wolter

Andreas Wolter

Bernd Rehlinger: wenn Sie einen anderen Sketch aus den Beispielen auswählen kann es sein, dass die Baudrate anders angegeben wurde. Wenn nur kryptische Zeichen ausgegeben werden, ist das meistens dafür ein Hinweis. Zumindest wäre das der erste Anhaltspunkt. Wenn das passt, müsste man weitersehen.

Grüße,
Andreas Wolter
AZ-Delivery Blog

Bernd Rehlinger

Bernd Rehlinger

…also ich habe jetzt mal angefangen mit dem Teil herum zu experimentieren.
LED blinken lassen klappt auch noch. :-/
Doch jetzt hänge ich bereits am Beispiel “WIFI-Scan”.
Hochladen funktioniert fehlerfrei aber dann passiert gar nichts.

Findet die Ausgabe vielleicht irgendwo anders statt?
Im Serial-Monitor bekomme ich nur kryptische Zeichen.

Reiner

Reiner

Hier: https://github.com/espressif/arduino-esp32/issues/2144#issuecomment-657659077 wird exakt dieses Problem mit geringer WiFi Reichweite beschrieben. Die Modifikation mit einem 330R Widerstand zwischen 3,3V und GPIO00 hat bei mir perfekt funktioniert.

Andreas Wolter

Andreas Wolter

@Lutz Schulze: wir hatten das Problem unter uns Bloggern vor langer Zeit zum Thema gemacht. Ich habe dann unter der WiFi Antenne das Stück Platine herausgeschnitten, um zu sehen, ob sich was verbessert. Soweit ich mich erinnere, wurde es etwas besser. Aber meiner Meinung liegt es daran, dass die Leistung für das WiFi Band zu gering gehalten werden muss, damit es den gesetzlichen Richtlinien entspricht. Alles in allem gegenüber den kleinen ESP Boards ein Nachteil. Andere Möglichkeiten, die Reichweite zu erhöhen, fanden wir nicht. Ein Anschluss für eine externe Antenne wäre wünschenswert.

Grüße,
Andreas Wolter
AZ-Delivery Blog

Lutz Schulze

Lutz Schulze

Hallo,

im Vergleich zu anderen Boards (z.B. TTGO) ist die WLAN-Reichweite sehr gering (habe mehrere Boards getestet).
Lässt sich da z.B. an der Antenne oder an den WiFi-Einstellungen etwas verbessern?

Andreas Wolter

Andreas Wolter

@Fred: bei diesem Fehler wird es sicher aufwändiger, die Lösung zu finden. Da die verfügbaren SSIDs angezeigt werden, wird das WiFi Modul an sich funktionieren. Der Sketch bis dahin auch.
Wenn dann keine Verbindung mit dem WLAN möglich ist, könnte beim Austausch der Zugangsdaten etwas schieflaufen. Die Frage ist nun, ob das Hardware- oder Softwareprobleme sind.

Ich könnte nur empfehlen, ein anderes WLAN aufzuspannen ohne Verschlüsselung. Dann muss man auf die Zugangsdaten selbst achten. Eventuell gibts Probleme mit Sonderzeichen in der SSID oder im Passwort (dass bei diesem Versuch nicht notwendig ist).
So würde ich mich rantasten.

Dann ist noch auf die Firmware Version zu achten. Hier im Blogbeitrag wird noch die alter Version verwendet. Espressif stellt einen ausführlichen Guide zur Verfügung, um die aktuelle Firmware zu installieren:
https://espressif-docs.readthedocs-hosted.com/projects/arduino-esp32/en/latest/installing.html

Dann würde ich dann auch die Tipps aus den Kommentaren mit einbeziehen, was z.B. die Spannungsversorgung angeht.

Das wären die ersten Ansätze. Ich hoffe, das hilft weiter.

Grüße,
Andreas Wolter
AZ-Delivery Blog

Fred

Fred

Leider kann ich speziell mit diesem Board (AZ-Delivery D1 R32) keine WiFi Verbindung herstellen.
Der WiFi Scan funktioniert und zeigt mir die vorhandenen Netze an.
Allerdings kann sich das Bord mit dem WIFIClient und meiner korrekten SSID und Passwort nicht in das WLAN einloggen, der Verbindungsaufbau läuft in einer Endlosschleife.

Andreas Wolter

Andreas Wolter

@AR: welche Spannung an den einzelnen Modulen verwendet werden kann, ist i.d.R. im Datenblatt oder der Produktbeschreibung zu finden. Einige Komponenten kann man mit 3,3V UND 5V betreiben. Andere widerum nur jeweils mit 3.3V bzw. mit 5V.

Um das zu kompensieren, kann man einen Logic Level Converter verwenden:
https://www.az-delivery.de/products/logiklevel-wandler-3-3v-5v
Den schaltet man zwischen die Pins des Mikrocontrollers und des Sensormoduls.

Damit kann man 3.3V-Module an den Pins des UNOs, oder 5V-Module an den ESP Pins verwenden.

Grüße,
Andreas Wolter
AZ-Delivery Blog

AR

AR

“Aber Vorsicht! Die GPIOS des ESP32 sind nur mit maximal 3.3V belastbar!”

Was bedeutet das für einen Anfänger, der vom Uno kommt, in der Praxis?
Welche Arten von Sensoren, Aktoren und Displays usw. könnte ich also NICHT so wie beim Uno anschließen?
Bzw. mit welchen technischen Hilfsmitteln geht es doch?

Und welche Art von Peripherie kann ich an den GPIOs GENAUSO wie beim Uno anschließen?

Vielen Dank schon mal für die Antworten!

René

René

Was ich natürlich recht störend finde, ist die etwas nutzlose kontinuierlich rot leuchtende LED – erinnert mich an Rambo: “was ist das? blaues Licht? und was macht das? es leuchtet blau!”
Aber danke für den Tipp mit GPIO02! Trotz langer Suche habe ich keine schematic für dieses Board gefunden.

Günther

Günther

Hallo,
Vielen Dank! Der Hinweis auf die Baud-Rate hat auch mir das Leben mit dem Delivery D1 R32 Board gerettet. Mit der voreingestellten Bud-Rate ging gar nichts.
Fehlermeldung wie bei Fred:
A fatal error occurred: Invalid head of packet (0×01)
A fatal error occurred: Invalid head of packet (0×01)

Harald

Harald

Leider kann ich speziell mit diesem Board (AZ-Delivery D1 R32) keine WiFi Verbindung herstellen.
Der WiFi Scan funktioniert und zeigt mir die vorhandenen Netze an.
Der anschliessende Aufruf von WiFi.Begin(meineSSID) zu einer offenen SSID führt nicht zum Erfolg.
Mit anderen Boards (z.B. ESP32 DEVKit,…) funktioniert das selbe Script tadellos.
Gibt es da vielleicht ein Problem mit der Spannungsversorgung über USB Port, und könnte das bei einer getrennten Spannungsversorgung besser funktionieren?

Hartmut

Hartmut

Ich habe ein 3-Set D1 R32 gekauft. Mit der USB-Stromversorgung funktionieren diese einwandfrei. Sowohl 5V als auch 3.3Volt sind korrekt. Das ESP 32 läuft super.
Mit der Stromversorgung über VIN ist ein Betrieb nur eingeschränkt möglich.
Bei 9-12 Volt VIN stellt das D1 R23 bei 5 Volt nur 4,2 Volt bereit.
Bei VIN 7.88 Volt kann ich bei 5V 4.6Volt erreichen und bei 3.3Volt 3,25. Bei höheren VIN fallen die Spannungen wieder. Alle Module zeigen das gleichartige verhalten.

Fred

Fred

Ich habe meine bisherige ESP32-Prozessoren (“Dev Module”, “D1 MINI ESP32” und “Pico Kit”) immer mit den Standardeinstellungen programmiert. Die sind so, wie in Ihrem Bild weiter oben im “Werkzeuge” – Menü erkennbar ist.

Beim D1 R32 Board hat allerdings der standardmäßige “Upload Speed” von 921600 Baud NICHT funktioniert. Mit 115200 hat es geklappt; ich habe die dazwischenliegende Werte noch nicht probiert.

Ergebnis mit der Standardeinstellung von 921600 Baud:

esptool.py v2.6
Serial port /dev/ttyUSB0
Connecting….
Chip is ESP32D0WDQ6 (revision 1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
MAC: 4c:11:ae:9b:e0:bc
Uploading stub…
Running stub…
Stub running…
Changing baud rate to 921600
Changed.
Configuring flash size…

A fatal error occurred: Invalid head of packet (0×01)
A fatal error occurred: Invalid head of packet (0×01)

Und mit 115200 Baud:

esptool.py v2.6
Serial port /dev/ttyUSB0
Connecting….
Chip is ESP32D0WDQ6 (revision 1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
MAC: 4c:11:ae:9b:e7:b0
Uploading stub…
Running stub…
Stub running…
Configuring flash size…
Auto-detected Flash size: 4MB
Compressed 8192 bytes to 47…
Wrote 8192 bytes (47 compressed) at 0×0000e000 in 0.0 seconds (effective 5541.2 kbit/s)…
Hash of data verified.
Compressed 15856 bytes to 10276…
Wrote 15856 bytes (10276 compressed) at 0×00001000 in 0.9 seconds (effective 137.2 kbit/s)…
Hash of data verified.
Compressed 247696 bytes to 125815…
Wrote 247696 bytes (125815 compressed) at 0×00010000 in 11.2 seconds (effective 176.1 kbit/s)…
Hash of data verified.
Compressed 3072 bytes to 128…
Wrote 3072 bytes (128 compressed) at 0×00008000 in 0.0 seconds (effective 1339.4 kbit/s)…
Hash of data verified.

Leaving…
Hard resetting via RTS pin…

Laisser un commentaire

Tous les commentaires sont modérés avant d'être publiés

Articles de blog recommandés

  1. ESP32 jetzt über den Boardverwalter installieren - AZ-Delivery
  2. Internet-Radio mit dem ESP32 - UPDATE - AZ-Delivery
  3. Arduino IDE - Programmieren für Einsteiger - Teil 1 - AZ-Delivery
  4. ESP32 - das Multitalent - AZ-Delivery