Espressif Systems has now released an alpha version of ESP32 Arduino Core 3.0.0 enabling the new ESP32-C6 and ESP32-H2 targets to be programmed with the Arduino IDE, and including a number of new features made possible by the ESP-IDF 5.1 SDK.
Announced in 2021, the ESP32-C6 WiFi 6, Bluetooth 5 LE, and 802.15.4 wireless MCU became available in modules and devkits at the beginning of this year, but so far they could only be programmed with the latest version (5.1) of the ESP-IDF framework, and so was the new ESP32-H2 Bluetooth 5.2 and 802.15.4 (Zigbee/Thread) MCU. But fans of Arduino programming can now rejoice as an alpha version of ESP32 Arduino Core 3.0.0 brings support for the new microcontroller, and a stable release is planned for December 2023.
But as you can probably imagine ESP32 Arduino Core 3.0.0 will also bring lots of other changes since the ESP32 Arduino Core 2.0.0 release in September 2021, notably:
- A Peripheral Manager was added to warn users about incorrect peripheral configuration in order to avoid issues such as having the same GPIO being used on two peripherals at the same time, and it also prints a report (see example) after the initialization to show all peripherals that are being used.
- SPI Ethernet Support through the ESP-IDF SPI library and Arduino SPI with support for W5500, DM9051, and KSZ8851SNL Ethernet ICs.
- New I2S Library based on the ESP-IDF API.
- Wake Word and Command Recognition (ESP32-S3 only) relying on the ESP-SR framework
- TensorFlowLite Micro support with examples
- Improved APIs for ADC
- Removal of the Hall Sensor
- New boards were added from Adafruit, Arduino, M5Stack, LILYGO, and others.
What’s less nice is that new APIs break quite of lot of features, namely ADC, BLE, Hall Sensor (not supported), I2S, LEDC, RMT, SigmaDelta, Timer, and UART (HardwareSerial). But there’s a migration guide to help developers know functions are been removed or modified and to help them port their application to the latest version of the ESP32 Arduino Core.
If you want to try the development version of the ESP32 Arduino Core 3.0.0 simply use the following URL in Arduino’s Preferences:
After the IDE updates the board files, you should find the ESP32 3.0.0-alpha2 installed.
I could find at least two ESP32-C6 “boards” and one ESP32-H2 module in the list of boards in the Arduino IDE.
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.