Die neuen espressif ESP32 Chip Varianten im Vergleich

Früher war die Mikrocontroller-Welt für den Maker einfach: Es gab die Arduinos, vielleicht den STM32 und die Produkte von espressif: erst den ESP8266 und dann später den stärkeren ESP32.

Und es gab nur einen ESP32, mehr Auswahl gab es nicht. Naja, man hatte die Wahl zwischen dem WROOM-32 Modul und dem WROVER Modul. Aber allermeistens fand man das WROOM-32 Modul in seinem kleinen, flachen Metallquader auf den Entwickler-Boards. Der Wrover gab es noch in anderen Ausführungen mit mehr Flash-Speicher oder samt PSRAM, aber von den sonstigen Spezifikationen waren alle ESP32 gleich.

Mit dieser kleinen, überschaubaren Welt im Kopf stand ich dann April 2023 auf der embedded World auf dem Stand von espressif und staunte nicht schlecht; ja ich wurde geradezu erschlagen von der neuen Produktvielfalt, die espressif neuerdings zu bieten hatte.

Plötzlich gab es nicht mehr den einen ESP32, sondern ganze Familien, die ESP32-S, die ESP32-C, die ESP32-H und bald wird es auch eine ESP32-P-Familie geben. Und die sind auch noch mal unterteilt in Modelle. Wer soll sich das alles nur merken und auseinanderhalten?

Natürlich möchten professionelle Hersteller, die Geräte in Tausender-Stückzahlen produzieren genau den Chip einkaufen, der auf ihre Bedürfnisse passt und nichts extra oben drauf zahlen für Leistung, die sie nicht brauchen. Und dem kommt espressif mit seiner neuen Modellvielfalt nach.

Für den Maker wird es dadurch allerdings verwirrend. Für ihn kommt es auch nicht auf Tausender-Stückpreise an, sondern er kauf die Chips auf fertigen Boards, und das einzeln oder in geringen Stückzahlen.

Es gibt zwar einen Product Selector (1) von espressif, aber der zeigt noch mehr Untermodelle an und kann einen schon mal bei der ersten Benutzung ein wenig überfordern. Wenn man sich ein wenig mit ihm beschäftigt, kommt man aber schon damit klar.

Es nützt alles nichts, auch als Maker muss man sich mit den neuen Familien und Modellen auseinandersetzen, will man nicht ein falschen Modell kaufen, denn: Als weitere Nachteile, die aber nicht so schwer wiegen, gibt es Varianten mit weniger Taktfrequenz (also langsamer) oder weniger SRAM (also wenig Variablenspeicher). Für Standardanwendungen ist der Takt nicht so erheblich und auch SRAM ist beim diesbezüglich kleinsten Modell auch noch genügend vorhanden für 0815-PRogramme.

Es gibt aber auch ein paar neue Modelle mit besonderen Features wie etwa: Wobei die Begriffe "Vorteil" und "Nachteil" hier als "kommt darauf an" gewertet werden müssen. Fehlt ein Feature, dann sieht das auf den ersten Blick wie ein Nachteil aus. Der schwächere Chip ist aber billiger und ich spare Kosten, was dann eigentlich ein Vorteil für mich ist.

Aus "one fits all", also "Einer für alles" für den ESP32 classic wird jetzt "as you need", also "so, wie du es brauchst". Eigentlich eine tolle Sache, nur macht es die Auswahl für den Maker natürlich ein bisschen komplizierter. Deswegen vielleicht folgende Eselsbrücken: Vielleicht um uns weiter zu verwirren, hat espressif noch ein paar Aliase eingeführt, wohl als Zeichen dafür, dass es sich um einfache Varianten wie den "good old" ESP8266 handeln soll: Außerdem gibt es bei den Boards eine Kovention um anzugeben, wieiel Flash und wieviel PSRAM-Speicher verbaut ist.

Nur kurz zur Erinnerung zum Auseinanderhalten, welcher Speicher wofür ist: Die Konvention geht wie folgt: Kleines Beispiel gefällig? Ein Board mit der Bezeichnung "ESP32-C6 N4R2" ist ein ESP32-C6 mit 4 MB normalem Flash und 2 MB PSRAM.

Mit den Informationen über das Modell hat man die Feature des Chips und mit den Informationen zu H/N und R hat man den weiteren Speicherausbau, der auch außerhalb des Chips auf dem Board verbaut sein kann.

So weiß man ganz genau, was man kauft. Das heißt, wenn man jetzt noch genau wüsste, welche ESP32-Variante was leistet.

Die große Vergleichstabelle der ESP32-Varianten mit (fast) allen Specs

Dafür habe ich mich durch den Product Selector (1) und Data-Sheets (2, 3, 4, 5) von espressif gequält, um für euch eine Tabelle zu erstellen, in der man den vollen Überblick hat.

Wie benutze ich die Tabelle?

Die Tabelle ist wegen der vielen Features sehr breit und nach rechts weiter scrollbar. Auf dem Tablet oder Smartphone einfach mit dem Finger swipen. Auf dem PC etwas markieren (Maustasten halten und nach rechts fahren). Ganz unten unter der Tabelle ist auch ein Slider, mit dem man scrollen kann.

Wenn ihr jetzt zum Beispiel ein ESP32-Modell sucht, dass auch ZigBee kann, dann schaut in der Spalte "sonst. Funk" für "sonstige Funkstandards" nach, welche Modelle das können. Spoiler: es sind der ESP32-H2 und der ESP32-C6 / ESP32-C61.

Oder anders herum: ihr seht gerade ein neues ESP32-Modell in einem Angebot und wisst nicht, was es kann? Sucht links in der Spalte nach dem Modell und schaut, was es so alles kann. Das vermeidet Überraschungen wie zum Beispiel, dass es kein Bluetooth gibt.

ModellJahrCoresTakt (MHz)SRAM (KB)Flash (MB)PSRAM (MB)WLANBlue-toothsonst. FunkGPIOADC (Channel)DACPWM (Ch.)RT ClockHardware-ProtokolleHardware sonst.CryptoBeispiel
ESP8266 (Modul 12F)2014180 - 160811nein2.4 GHz, max. 72 Mbit/s nein 161x 10 bitnein8xneinUART, SPI, I2C, I2S0neinBeispiel-Board
ESP32 (WROOM-32)20162160 - 2405204nein2.4 GHz*4.2, BLE 3416x 12 bit1x16xjaUART, SPI, I2C, I2S, CANCam Bus, Hall SensorAES, SHA2, RSA, ChipIDBeispiel-Board
ESP32 (WROVER)20182160 - 2405204, 164, 82.4 GHz*4.2, BLE 3416x 12 bit1x16xjaUART, SPI, I2C, I2S, CANCam Bus, Hall SensorAES, SHA2, RSA, ChipIDBeispiel-Board
ESP32-H220231963202, 4 (H)nein2.4 GHz*5.3, BLEZigBee, Thread, Matter195x 12 bitnein?jaUART, SPI, I2C, I2SRISC-V, Temp.-SensorCrypto1*
ESP32-C2 (aka ESP8684)202011202722, 4 (H)nein2.4 GHz*5, BLE 145x 12 bitnein?jaUART, SPI, I2C, I2SRISC-V, Temp.-SensorCrypto1*
ESP32-C3 (aka ESP8685 / ESP8686)202011604002,4 (H)nein2.4 GHz*5, BLE 15-226x 12 bitnein?jaUART, SPI, I2C, I2SRISC-V, Temp.-SensorCrypto1*
ESP32-C52024?12404000, 4 (H/N)?nein802.11 b/g/n/ax, WiFi-6 (2.4 und 5 GHz)5, BLE 205-7x 12 bit?nein?jaUART, SPI, I2C, I2SRISC-V, USB OTG, Temp.-SensorCrypto1*
ESP32-C612024?11603200, 4 (H/N)?0, 2 (R)?2.4 GHz, WiFi-65.3, BLEZigBee, Thread, Matter22?7x 12 bit?nein?jaUART, SPI, I2C, I2SRISC-V, USB OTG, Temp.-SensorCrypto1*
ESP32-C6202011605120, 4 (H/N)0, 2 (R)2.4 GHz, WiFi-65.3, BLEZigBee, Thread, Matter22-307x 12 bitnein?jaUART, SPI, I2C, I2SRISC-V, USB OTG, Temp.-SensorCrypto1*
ESP32-S220201240320nein2 (R)2.4 GHz*nein 4320 x 12 bit2x?jaUART, SPI, I2C, I2SUSB OTGCrypto1*
ESP32-S2F202312403202, 4 (H/N)2 (R)2.4 GHz*nein 4320 x 12 bit2x?jaUART, SPI, I2C, I2SUSB OTGCrypto1*
ESP32-S3202022405120, 4, 8, 162, 8 (R)2.4 GHz*5, BLE 4520 x 12 bitnein?jaUART, SPI, I2C, I2SUSB OTGCrypto1*
ESP32-S3-Pico202322403204, 82, 8 (R)2.4 GHz*5, BLE 4520 x 12 bitnein?jaUART, SPI, I2C, I2SUSB OTG, All-In-One-SoCCrypto1*
ESP32-P42024?24007684, 8?2, 4, 8 (R)?neinnein 50jaja??UART, SPI, I2C, I2S, TWAI (CAN)RISC-V, USB OTG, Video EncodingCrypto1*

*Crypto1 = AES, SHA2, RSA, RNG, ECC, Secure Boot, Flash Encryption
*USB-OTG max. 12 Mbit/s
*2.4 GHz = 802.11 b/g/n, max. 150 Mbit/s
*H/N = Kennzeichen für Flash, H = High Temperature, N = Normal Temperatur
*R = Kennzeichen für PSRAM

Meine Empfehlungen

Wenn ihr etwas mit den SmartHome-Funk-Standards ZigBee oder Matter (Thread) machen wollt, dann könnt ihr jetzt auch einen ESP32 benutzen. Aber besten einen ESP32-C6. Den gibt es mit 2, 4, oder 8 MB Flash on Board, zum Beispiel über amazon oder AliExpress - wie gewohnt über amazon schneller und teurer (ca. 15 €) als über AliExpress (ca. 6 €) (Preise Stand März 2024).
Außerdem hat das Board zwei USB-C-Anschlüsse: Einen für die Programmierung über den PC und einen als USB-OTG-Port, also als USB-Host, zum Beispiel, um Tastatur oder Maus darüber zu emulieren. Der USB-OTG Port ist allerdings nur maximal 12 Mbit/s schnell. Das sind max. 1.5 MB/s, für einen USB-Stick möchte ich das eher nicht benutzen.

Ansonsten könnt ihr natürlich immer noch die guten, alten ESP32 WROOM32-Boards benutzen. Die haben einen guten, universellen Ausbau und sind etabliert und ein gibt unzählige Boardvarianten. Einen Überblick über die unterschiedlichen ESP32-classic-Board-Varianten findet ihr hier.

Wer auf dem Niveau des ESP32-classic weitermachen will, für den dürfte der ESP32-S3 die richtige Wahl sein. Takt, Speicher, Flash: so ziemlich alles beim Alten. Außer vielleicht, dass es jetzt auch USB OTG und mehr Crypto-Funktionen gibt.
Preislich ist man auch auf dem gleichen Niveau wie bei einem ESP32-classic. Beide kostet derzeit aus Fernost um die 7-8 Euro. Es gibt den ESP-S3 auch in der Boardvariante N16R8, also mit 16 MB Flash und 8 MB PSRAM derzeit um diesen Preis via AliExpress aus China. Das ist dann schon wesentlich mehr, als ein ESP32-classic zu bieten hat. Außerdem hat das Board 2 USB-Ports, einen zum Programmieren und einen als USB-OTG-Port. Allerdings hat man keinen DAC. Hier ist der ESP32-S3 also die bessere Wahl in Hinsicht auf das Preis-Leistungs-Verhältnis. Es sei denn, man bekommt ein old school ESP32-Ausverkaufsexemplar, vielleicht noch mit Mikro-USB für 4 Euro.

Wer sparen will und nicht viel Leistung braucht, der könnte zu einem ESP-C2 oder ESP-C3 oder gar ESP-H2 greifen. Sie alle gibt es mit Flash, WLAN und Bluetooth. Man muss aber mit weniger GPIO-Pins leben.
Das kann aber auch ein Vorteil sein, wenn man es klein will. Das ESP32-C3-Super-Mini kostet nur um 3 € aus China und ist wirklich klein: nur 22.5 x 18 mm. Die Höhe bestimmt der USB-C-Port. Trotzdem sind 4MB Flash on board. Mit 400 KB SRAM und 160 MHz Takt kann man wohl leben. Allerdings muss man sich mit den 13 GPIO-Pins begnügen. Dazu gibt es noch 3.3 und 5 Volt an den Pin-Headern. Außerdem befindet sich eine LED und 2 Buttons auf der Platine.

Und selbst der in die Tage gekommene ESP8266 hat noch seine Daseinsberechtigung. Das D1-Mini-Board zum Beispiel ist klein, reicht für die meisten WLAN-Anwendungen aus und ist günstig zu bekommen. Ich gebrauche es nach wie vor sehr gerne für meine Projekte und werde mir noch ein paar sichern, wenn ich sie irgendwo billig im Abverkauf sehe.

Der ESP-P4 ist noch gar nicht als Board herausgekommen. Aber das wird noch einmal ein spannender Kandidat. Bleibt abzuwarten, wie es sich dann tatsächlich schlägt und was er kann.

Quellen, Literaturverweise und weiterführende Links