Die ESP32 Familie
Espressif hat dieses ESP32-SoC (System on a Chip) 2016 als Nachfolger der ESP8266-Serie vorgestellt.
Der ESP32 ist ein sehr beliebter Mikrocontroller in der Welt der Elektronik und des IoT (Internet of Things), und das aus mehreren Gründen. Hier sind einige genaue technische Details und Erklärungen, warum der ESP32 so beliebt ist:
Leistungsstarkes Single oder Dual-Core-Design: Der ESP32 verfügt über leistungsstarke Xtensa LX6-Cores, die mit bis zu 240 MHz getaktet werden. Die Dual-Core-Architektur ermöglicht eine effiziente Aufgabenverteilung und unterstützt die Parallelverarbeitung.
Integriertes WLAN und Bluetooth: Der ESP32 bietet sowohl WLAN (802.11 b/g/n) als auch Bluetooth 4.2/Bluetooth Low Energy (BLE) Konnektivität. Dies macht ihn ideal für drahtlose Kommunikationsanwendungen und IoT-Projekte.
Umfangreiche Peripherie: Der ESP32 ist mit einer Vielzahl von Peripheriegeräten ausgestattet, darunter GPIO-Pins, UART, SPI, I2C, ADC und DAC. Dies erleichtert den Anschluss von Sensoren, Aktoren und anderen Geräten.
Umfangreiche Bibliotheken und Community Support: Es gibt eine große und aktive Entwicklergemeinde rund um das ESP32. Dies führt zu einer Fülle von Bibliotheken, Beispielen und Ressourcen, die Entwicklern zur Verfügung stehen.
Kostengünstig und weit verbreitet: Der ESP32 ist kostengünstig, was ihn sowohl für Hobbyisten als auch für professionelle Entwickler attraktiv macht. Außerdem wird er von vielen Herstellern in verschiedenen Formfaktoren angeboten.
Unterstützung der Energieeffizienz: Der ESP32 bietet verschiedene Schlafmodi und Stromsparfunktionen, wodurch er für batteriebetriebene IoT-Geräte geeignet ist.
Vielseitigkeit: Der ESP32 kann in einer Vielzahl von Anwendungen eingesetzt werden, von einfachen IoT-Geräten bis hin zu komplexen Projekten wie Smart-Home-Anwendungen, Wearables und industriellen Steuerungen.
Da es aber inzwischen eine so große Vielzahl an Varianten gibt, möchte ich hier mal Orientierungshilfe geben. Es gliedert sich in Chip, Modul und Board:

Kern der ganzen Sache ist der ESP32 – Chip. Ein intelligenter Mikroprozessor mit einer Taktung von bis derzeit 240MHz, den es sowohl in Single-Core- als auch in Dual-Core-Varianten gibt, wie zum Beispiel ESP32-D0WDQ6. Es gibt diese in zwei Bauformen SOIC und QFN (Details weiter unten)

PCB Bauform (Printed Circuit Board – Baugruppe auf einer Leiterplatine)
Auf einer PCB-Baugruppe erhält dieser ESP32-Chip auch einen Flash-Speicher, eine Antenne und andere Komponenten. Dies ermöglicht eine bessere WLAN- und Bluetooth-Konnektivität, was die Reichweite und Zuverlässigkeit der drahtlosen Verbindung verbessern kann.
Um diesen in kleinen Stückzahlen Programmieren zu können, gibt es schon diverse Adapter mit USB.
Zu beachten ist auch, das in dieser Bauform die Lochmaske zu klein ist, um auf einem Breadboard Steckplatine zu experimentieren.


Unterschiedliche Varianten der PCB ESP32 Module
Die WLAN und Bluetooth 4.2 fähigen Module gibt es von unterschiedliche Hersteller wie zB. von Espressif, Ai-Thinker, U-Blox, DFRobot… und tragen Bezeichnungen wie Solo, WROOM oder WROVER.
Und auch diese Typen, gibt es wiederum in den unterschiedlichsten Varianten.
Wer eine umfangreiche Liste sichten möchte, kann sich bei ESP32.net oder hier auf Wikipedia informieren.
ESP32 Entwicklungsboards
Um aber auch für den Bastler ein komfortables Produkt anzubieten, gibt es diese zahlreichen ESP32 Entwicklungsboards mit unterrichtlichen Erweiterungen, wie USB-Schnittstelle, Stromwandler, Taster, mehrfarbigen LED, usw. bis hin zum bereits vorhandenen Kamera Modul.

Hier eine eher grobe Beschreibung der Unterschiede, die dennoch schon eine Orientierungshilfe sein kann, wenn die notwendige Flash-Speicher Größe ausreichend groß plus Reserve gewählt wurde:
- Einsteiger:
Die Solo Module ESP32-S0WD sind die günstigsten, da hier lediglich ein Single-Core-ESP32-Chip verbaut wurde. Ansonsten ausgestattet wie ein WROOM Modul.
Prozessor: Der ESP32-S0WD ist ein Single-Core-Chip, der einen Xtensa LX6-Prozessor mit einer Taktfrequenz von bis zu 240 MHz verwendet.
WLAN: Er unterstützt 2,4-GHz-WLAN nach dem 802.11b/g/n-Standard.
Bluetooth: Er bietet Bluetooth 4.2 und Bluetooth Low Energy (BLE) Unterstützung.
Speicher: Die Speicherkapazität kann variieren, aber typischerweise verfügt er über 2 MB Flash-Speicher und 448 kB SRAM.
GPIO-Pins: Der ESP32-S0WD hat je nach Ausführung eine Vielzahl von GPIO-Pins für die Anbindung von Peripheriegeräten. - Standard:
Das Standard-Modul WROOM ESP32(D) mit dem Dual-Core-Chip hat 2 Kerne und bringt mit den oben beschriebenen zusätzlichen Funktionen, alles mit, um die meisten Projekte zum laufen zu bringen.
Prozessor: Dual-Core Xtensa LX6-Prozessor mit einer Taktfrequenz von bis zu 240 MHz.
WLAN: Er unterstützt 2,4-GHz-WLAN nach dem 802.11b/g/n-Standard.
Bluetooth: Er bietet Bluetooth 4.2 und Bluetooth Low Energy (BLE) Unterstützung.
Speicher: Empfehlung interner Flashspeicher: 4 MB ( z.B das Modul auf dem Entwicklungs-Kit C V4)
GPIO-Pins: Der ESP32-S0WD hat je nach Ausführung eine Vielzahl von GPIO-Pins für die Anbindung von Peripheriegeräten. - Erweitert:
Die Variante WROVER ist für aufwendigere Projekte mit Luft nach oben.
Auch mit einem Dual-Core-Chip daher kommend, hat dieser noch zusätzliche Erweiterungen, wie zum Beispiel PSRAM (Pseudo Static Random-Access Memory)
Beim WROVER-B, -IB mit 133 MHz (3,3V) oder
beim WROVER PCB, IPEX mit 144 MHz (1,8V) Taktrate.
Dieser statische Zusatzspeicher ist zwar nicht so schnell wie der Flash-Speicher (da er über SPI adressiert wird), erweitert aber die Möglichkeiten um nicht weniger als 4 MB bis 8 MB. Wird dieser verwendet, können 1 bis 2 Pins für die serielle Datenübertragung belegt werden. Zum Beispiel Pin 16 und 17.
Antennen Arten

Sollte die auf den Board verbaute Antenne Art (MIFA, PIFA, IFA oder Ceramic) nicht ausreichend Funkstrecke bieten, gibt es auch die Baureihe U. Beispiel: ESP32 WROOM 32U
Diese ist mit einer Buche für externe Antennen (U.FL-kompatiblen Anschluss) ausgestattet.
Espressif Zerocode:
Zudem hat sich gezeigt, das die Automatisierungslösungen von Espressif wie bei Zerocode erst ab bestimmten Herstellungsversionen erweiterte Funktionalitäten anbieten.
Somit auch darauf achten, das zum Beispiel wie bei diesem ESP32 Wroom Entwicklungsboard mindestens eine Chip Revision Version 3 erwartet wird:

Bauform QFN (Quad Flat No leads)
Zu erwähnen sei auch noch das SP32-PICO-D4 Modul.
Im Gegensatz zur oben erwähnten günstigeren PCB Leiterplatinen-Lösungen, wird dieses Modul kompakt in einer kleineren QFN Chipgehäusebauform angeboten. Die Pins sind auf der Unterseite des Gehäuses angeordnet.
Das SiP-Modul kombiniert ESP32-Dual-Core-Chip, Quarzoszillator, 4MB Flash-Speicher, Filterkondensatoren und HF-Matching-Links in einem einzigen 7×7 mm² Gehäuse.

Es wird zum Beispiel wie hier zu sehen, auf dem Entwicklungsboard ESP32-PICO-KIT Version4 ohne Shield von Espressif verbaut.

Bauform SOIC
Zum Vergleich die bereits erwähnte Modulvariante ESP32-D0WDQ6, in der SOIC Bauform (Small Outline Integrated Circuit) Die Pins sind an den Seiten des Gehäuses angeordnet.
Mit einer Gehäusegröße von 6×6 mm², hat er zwar einen Dual-Core-Chip, kommt aber ohne Flashspeicher daher. Dies muss ihm dann auf zB. der Entwicklerplatine angeboten werden.

ESP32-D0WDQ6 in Bauform SOIC
Liste mit unterstützenden Arduino Bibliotheken:
Quelle: Espressif Docs
Peripheriegerät | ESP32 | ESP32-S2 | ESP32-C3 | ESP32-S3 |
---|---|---|---|---|
ADC | Ja | Ja | Ja | Ja |
Bluetooth | Ja | Nicht unterstützt | Nicht unterstützt | Nicht unterstützt |
BLE | Ja | Nicht unterstützt | Ja | Ja |
DAC | Ja | Ja | Nicht unterstützt | Nicht unterstützt |
Ethernet | Ja | Nicht unterstützt | Nicht unterstützt | Nicht unterstützt |
GPIO | Ja | Ja | Ja | Ja |
Hall-Sensor | Ja | Nicht unterstützt | Nicht unterstützt | Nicht unterstützt |
I2C | Ja | Ja | Ja | Ja |
I2S | Ja | Ja | Ja | Ja |
LEDC | Ja | Ja | Ja | Ja |
Motor-PWM | Nein | Nicht unterstützt | Nicht unterstützt | Nicht unterstützt |
Pulszähler | Nein | Nein | Nein | Nein |
RMT | Ja | Ja | Ja | Ja |
SDIO | Nein | Nein | Nein | Nein |
SDMMC | Ja | Nicht unterstützt | Nicht unterstützt | Ja |
Timer | Ja | Ja | Ja | Ja |
Temperatursensor | Nicht unterstützt | Ja | Ja | Ja |
Touch | Ja | Ja | Nicht unterstützt | Ja |
TWAI | Nein | Nein | Nein | Nein |
UART | Ja | Ja | Ja | Ja |
USB | Nicht unterstützt | Ja | Ja | Ja |
W-LAN | Ja | Ja | Ja | Ja |
- ESP32-S2: Geringer Stromverbrauch, verbesserte Sicherheitsmerkmale, geeignet als Ersatz für ESP32 in Anwendungen ohne Dual-Core-Anforderungen.
- ESP32-S3: Für Artificial Intelligence of Things (AIoT) Produkte optimiert, Dual-Core Prozessor, AI-Beschleunigung, Unterstützung für Sprach- und Bilderkennung.
- ESP32-C3: Sicherheitsverbesserungen, BLE 5 Unterstützung, geringer Stromverbrauch, ideal für Smart Home oder Smart Office Produkte.
Aktuell noch nicht unterstützt, aber vollständigkeitshalber:
- ESP32-C6:
Der ESP32-C6 ist der erste Wi-Fi 6-SoC von Espressif, der 2,4 GHz Wi-Fi 6, Bluetooth 5 (LE) und das 802.15.4-Protokoll integriert. Der ESP32-C6 erreicht eine branchenführende HF-Leistung mit zuverlässigen Sicherheitsfunktionen und mehreren Speicherressourcen für IoT-Produkte. Er besteht aus einem leistungsstarken (HP) 32-Bit-RISC-V-Prozessor, der mit bis zu 160 MHz getaktet werden kann, und einem stromsparenden (LP) 32-Bit-RISC-V-Prozessor, der mit bis zu 20 MHz getaktet werden kann. Es verfügt über ein 320-KB-ROM, einen 512-KB-SRAM und funktioniert mit externem Flash. Es wird mit 30 (QFN40) oder 22 (QFN32) programmierbaren GPIOs geliefert, mit Unterstützung für SPI, UART, I2C, I2S, RMT, TWAI, PWM, SDIO, Motor Control PWM. Es enthält auch einen 12-Bit Analog-Digital-Wandler und einen Temperatursensor. - ESP32-H2:
Kombiniert IEEE 802.15.4-WPAN-Konnektivität mit Bluetooth 5 (LE), Thread und Zigbee. Der SoC wird von einem Single-Core-32-Bit-RISC-V-Mikrocontroller angetrieben, der mit bis zu 96 MHz getaktet werden kann. Der ESP32-H2 wurde entwickelt, um einen geringen Stromverbrauch und Sicherheit für angeschlossene Geräte zu gewährleisten. Der ESP32-H2 verfügt über 320 KB SRAM mit 16 KB Cache, 128 KB ROM, 4 KB LP Speicher und einen integrierten 2 MB oder 4 MB SiP-Flash. Er verfügt über 19 programmierbare GPIOs mit Unterstützung für ADC, SPI, UART, I2C, I2S, RMT, GDMA und LED-PWM. Interessant für künftige Matter IOT Lösungen.
Weitere Details zu den ESP-Mikroprozessoren:
ESP32-D0WD-V3
ESP32-D0WDR2-V3
ESP32-U4WDH
ESP32-S0WD
ESP32-D0WD
ESP32-D0WDQ6
ESP32-D0WDQ6-V3
ESP32-S2
ESP32-S2FH2
ESP32-S2FH4
ESP32-S2FN4R2
ESP32-S2R2
ESP32-C3
ESP32-C3FN4
ESP32-C3FH4
ESP32-C3FH4AZ
ESP32-S3
ESP32-S3FN8
ESP32-S3R2
ESP32-S3R8
ESP32-S3R8V
ESP32-S3FH4R2
ESP32-C6
ESP32-H2
Quelle: https://www.espressif.com/en/support/documents/technical-documents
Empfehlung:
Liste der Reservierten, teilbelegten und zu bevorzugenden GPIO-Pin´s:
Video:
In diesem Video werden einige Unterschiede der ESP32 Chip/Module näher betrachtet. Ein ESP32-WROVER Kit mit OV2460 Kamera wird als Alternative zur ESP32-Cam vorgestellt und es gibt einen ersten Einblick in die finale Entwicklungsumgebung Arduino IDE 2.
Gezeigte Hardware:
Freenove Starter Kit
ESP32-Cam plus Shield
AZ-Delivery ESP32-Wroom Board
ESP32 WROOM Modul
PCB-Adapter mit USB-C
Software, Sketche und Library:
Espressif Hersteller Seite für Arduino Entwicklungsumgebung
Entwicklungsumgebung Arduino IDE 2
Freenove Tutorials
ESP32 in Arduino IDE hinzufügen: