ESP32-C5: Dual-Band (2.4 & 5GHz) Wi-Fi 6 für IoT-Projekte
Mit dem ESP32-C5 bringt Espressif erstmals ein Mitglied der ESP32-Familie auf den Markt, das neben 2,4 GHz auch das 5 GHz-Band für WLAN unterstützt – ein entscheidender Vorteil für Anwendungen, die auf höhere Datenraten, geringere Latenz und ein weniger überlastetes Frequenzspektrum angewiesen sind.
Ich hatte das Privileg, das Vorserien-ESP32-C5-DevKitC-1 Development Board direkt von Espressif zu erhalten. Die Massenproduktion sollte aber in kürze starten. Dieser Artikel bietet einen Überblick über die technischen Eigenschaften des Chips, das Entwicklungsboard und die ersten Erfahrungen mit der Wi-Fi-Performance unter realen Bedingungen.
Was ist neu beim ESP32-C5?
Der ESP32-C5 bringt mehrere bedeutende Neuerungen in die ESP32-Familie – sowohl auf Funk-, Architektur- als auch Systemebene. Die auffälligste Neuerung ist die Unterstützung für Dualband-WLAN: Der ESP32-C5 ist der erste ESP32-Chip, der sowohl im 2,4 GHz- als auch im 5 GHz-Band funken kann. Architektonisch basiert der ESP32-C5 wie der C6 auf einem RISC-V Dual-Core-Design, bestehend aus einem leistungsstarken Hauptkern und einem stromsparenden Low-Power-Core, der unabhängig Aufgaben übernehmen kann – etwa im Deep Sleep oder für RTC-Funktionalität. Die Taktfrequenz wurde beim HP-Core von 160 MHz auf 240 MHz bzw. beim Low-Power-Core von 20 MHz auf 40 MHz erhöht. Zusätzliche wurde auch die Pipeline-Tiefe von 4 auf 5 Stufen erweitert. Ein weiteres neues Feature ist der Bit-Scrambler Controller. Er dient der flexiblen Datenstromverarbeitung im DMA-Pfad. Er kann für Endianness-Konvertierungen, Datenformatierung, Kurvenkorrektur bei ADC-Werten, das Generieren von komplexen Wellenformen oder das gezielte Einfügen/Entfernen von Bits verwendet werden. Dazu verfügt er über eine kleine Befehlsengine und eine 2048-Byte Lookup-Tabelle pro Kanal (TX/RX). Zusätzlich integriert der C5 neue Krypto- und Systemfunktionen wie:
- Key Management Controller (KMC) zur sicheren Schlüsselverwaltung in Hardware,
- APM (Access Permission Management) zur feingranularen Zugriffskontrolle auf Speicherbereiche,
- Trusted Execution Environment (TEE) zur Trennung sicherheitskritischer Codebereiche.
Das Blockdiagramm aus dem vorläufigen Datenblatt gibt einen Überblick über sämtliche Komponenten, die der ESP32-C5 integriert hat:
Wie sich der ESP32-C5 im Vergleich zu anderen Mitgliedern der ESP32-Familie positioniert, zeigt die nachstehende Tabelle. Obwohl der C5 der jüngste Neuzugang ist, bedeutet dies keineswegs, dass frühere Modelle obsolet sind. Tatsächlich bieten etablierte ESP32-Varianten teilweise eine umfangreichere Peripherieausstattung und behalten damit ihre spezifischen Stärken. Ein Beispiel hierfür ist der ESP32-S3: Er bleibt (abgesehen vom High-End ESP32-P4) der einzige ESP32, der die direkte Ansteuerung paralleler LCD-Displays unterstützt.
Merkmal | ESP32 | ESP32-S3 | ESP32-C6 | ESP32-C5 |
---|---|---|---|---|
Release | 2016 | 2021 | 2023 | 2024 (Early Access) |
CPU-Kerne | 2 × Xtensa LX6 | 2 × Xtensa LX7 | 1× RISC-V HP | 1× RISC-V HP |
Taktfrequenz | bis 240 MHz | bis 240 MHz | bis 160 MHz | bis 240 MHz |
Pipeline-Tiefe | 7 | 5 | 4 | 5 |
LP-Core | ULP (proprietär) | ULP (proprietär) | RISC-V LP 20 MHz | RISC-V LP 40 MHz |
SRAM | 520 KB + 16 KB RTC | 512 KB + 16 KB RTC | 512 KB + 16 KB RTC | 512 KB + 16 KB RTC |
Wi-Fi | 2.4 GHz b/g/n | 2.4 GHz b/g/n | 2.4 GHz b/g/n/ax | 2.4/5 GHz a/b/g/n/ax |
Bluetooth | BT + BLE 4.2 | BLE 5.0 | BLE 5.3 | BLE 5.0 |
802.15.4 (Zigbee/Thread) |
✘ | ✘ | ✔ | ✔ |
GPIOs (max) | 34 | 45 | 30 (QFN40) 22 (QFN32) |
27 (QFN48) 19 (QFN40) |
ADC (Kanäle) | 2×12-bit, 18 channels | 2×12-bit, 20 channels | 1×12-bit, 7 channels | 1×12-bit, 6 channels |
DAC | 2× 8-bit | ✘ | ✘ | ✘ |
PWM (Kanäle) | max 16 | max 8 | max 6 | max 6 |
RTC-Unterstützung | ✔ | ✔ | ✔ (eigener LP-Core) | ✔ (eigener LP-Core) |
Peripherie | 4×SPI, 2×I2C, 2×I2S, 3×UART, CAN, RMT | 4×SPI, 2×I2C, 2×I2S, 3×UART, CAN, RMT, USB OTG, LCD, DVP | SPI, I2C, (LP) I2C, I2S, 2×UART, (LP) UART, CAN, RMT, USB OTG | SPI, I2C, (LP) I2C, I2S, 2×UART, (LP) UART, CAN, RMT, USB OTG |
Crypto-HW | AES, SHA, RSA, ECC, RNG | AES, SHA, RSA, RNG, HMAC |
AES, SHA, RSA, RNG,, HMAC, ECC, APM | AES, SHA, RSA, HMAC, ECC, ECDSA, APM |
5 GHz-Band für WLAN
Das Highlight des ESP32-C5 ist natürlich die Unterstützung des 5 GHz-Bands für WLAN. Damit erweitert Espressif erstmals die bisher ausschließlich auf 2,4 GHz beschränkte Funktechnik seiner Mikrocontroller. Die Nutzung des 5 GHz-Bandes bringt gleich mehrere Vorteile mit sich: höhere mögliche Datenraten, geringere Latenzen und vor allem ein wesentlich weniger überlastetes Frequenzspektrum – besonders in dicht besiedelten WLAN-Umgebungen oder bei parallelem Einsatz vieler Geräte.
Zwar verwendet der ESP32-C5 eine einfache 1×1-Konfiguration (1T1R) mit maximal 20 MHz Kanalbandbreite im Client-Modus, dennoch bietet der Chip eine moderne Wi-Fi-Implementierung: Er ist vollständig IEEE 802.11ax- (Wi-Fi 6) und 802.11ac-konform und unterstützt damit Technologien wie Downlink MU-MIMO, Beamforming (als Beamformee), OFDMA sowie Target Wake Time (TWT) zur Energieeinsparung. In idealen Konstellationen sind Bruttodatenraten von bis zu 150 Mbit/s möglich, etwa bei 40 MHz im 2,4 GHz-Band (802.11n), oder rund 143 Mbit/s bei 20 MHz im 5 GHz-Band (802.11ac/ax). Die praxisnahe Netto-Datenrate liegt typischerweise zwischen 30 und 70 Mbit/s – abhängig von Umgebung, Access Point und Protokoll-Overhead.
Um diese theoretischen Möglichkeiten und Vorteile praktisch zu evaluieren, habe ich Messungen mit dem Netzwerk-Performance-Tool iPerf durchgeführt. Als Access Point und Gegenstelle für den ESP32-C5 kam dabei ein FRITZ!Repeater 1200 AX zum Einsatz, da mein Router noch kein Wi-Fi 6 unterstützt. Neben dem C5 habe auch einige andere ESP32 Varianten getestet, um die Ergebnisse besser einordnen zu können. Der Access Point war bei den Messungen etwa zwei Meter entfernt.
TCP Mbits/sec | UDP Mbits/sec | |
---|---|---|
ESP32 | 45.3 | 74.1 |
ESP32-S3 | 46.2 | 75.3 |
ESP32-C6 | 25.2 | 41.3 |
ESP32-C5 2.4 GHz | 47.5 | 62.5 |
ESP32-C5 5 GHz | 47.3 | 65.6 |
Da mir Espressif gleich zwei ESP32-C5 DevKits zugeschickt hat, habe ich zusätzlich die Kommunikation zwischen den beiden Mikrocontrollern getestet:
TCP Mbits/sec | UDP Mbits/sec | |
---|---|---|
2.4 GHz | 26.9 | 22.4 |
5 GHz | 36.7 | 29.1 |
Die Ergebnisse zeigen, dass der Hauptgewinn des ESP32-C5 weniger in den Spitzendatenraten liegt, sondern klar in der Option, das weniger frequentierte 5 GHz-Band zu nutzen. Bei den Messungen gab es aber sehr große Schwankungen und ich hatte schon in der Vergangenheit den Eindruck, dass der ESP32 mit der FritzBox nicht ganz harmoniert. Daher sind diese Ergebnisse mit etwas Vorsicht zu genießen.
ESP32-C5-DevKitC-1
Das ESP32-C5-DevKitC-1 kam in einer - für einen Mikrocontroller - recht edlen Verpackung. Neben den üblichen Boot- und Reset-Tasten ist das Board mit einer RGB-LED sowie einem nativen und einem UART-USB-Anschluss ausgestattet. Zusätzlich gibt es einen Jumper direkt in der Stromversorgung des ESP32-C5, der es ermöglicht, den Stromverbrauch des SoC isoliert zu messen – also ohne den Einfluss von Spannungsregler, LED und anderen Board-Komponenten.
Das Board bietet 8 MByte externen Flash und 4 MByte PSRAM, was auch für komplexere Anwendungen ausreichen sollte. Das folgende Diagramm von Espressif zeigt die Pinbelegung des Boards.
Das Entwickeln mit dem ESP32-C5-DevKitC-1 ist seit der Version 5.4 des ESP-IDF Frameworks möglich, auch wenn es sich noch um eine Preview handelt. Offiziell wird der ESP32-C5 dann in der Version 5.5 unterstützt, die laut Roadmap Mitte des Jahres erscheinen wird. Ein offizieller Programming Guide ist aber jetzt schon verfügbar.
Normalerweise verwende ich für die ESP32 Entwicklung Visual Studio Code mit dem PlatformIO Plugin. Allerdings war das Compilieren des iPerf Tools damit nicht möglich, obwohl die aktuelle Version 6.10.0 des Plugins das ESP-IDF 5.4 unterstützt. Daher habe ich für die Tests den ESP-IDF Plugin von Espressif verwendet. Mit diesem Plugin und der aktuellen Version 5.4.1 des ESP-IDF Frameworks traten keinerlei Fehler auf.
Fazit
Zunächst möchte ich mich bei der Firma Espressif für die Bereitstellung der Vorserien-Boards bedanken. Die wichtigste Neuerung des ESP32-C5 ist ohne Frage die Unterstützung für Dualband-WLAN. Doch auch die gesteigerte CPU-Performance macht ihn für mich derzeit zum vielseitigsten Mikrocontroller der ESP32 Familie. Es würde mich nicht überraschen, wenn in Zukunft mehr Geräte wie Staubsaugerroboter oder 3D-Drucker, die bisher nur das 2,4 GHz WLAN beherrschen, auch Dualband-WLAN unterstützen. Eventuell wird der ESP32-C5 künftig auch den ESP32-C6 als Funk-Koprozessor auf den ESP32-P4 Development-Boards ablösen. Ich werde jedenfalls bei meinen nächsten Projekten den ESP32-C5 verwenden.
Update 30.04.2025: Heute hat Espressif den Start der Massenproduktion bekanntgegeben. Auf AliExpress kann das Board für knapp 16 Euro bestellt werden. Allerdings nur ein Board pro Kunde.