While it might not sound like the most exciting addition, ESPHome 2021.10 introduces a new framework that allows tinkerers and makers to use three new ESP32 variants: the ESP32-S2, ESP32-S3, and ESP32-C3. Especially, the ESP32-C3 will delight many ESPHome users, as it has been on their wish list ever since it was first announced by Espressif.
Support for these ESP32 variants comes thanks to the implementation of the ESP-IDF framework in addition to the still standard Arduino framework. The ESP-IDF is Espressif’s official IoT Development Framework for the ESP32, ESP32-S and ESP32-C series of SoCs.
While the Arduino framework is still the default, rapid progress on its alternative is to be expected. As the implementation is still in an early stage, not everything is perfect yet. If you do choose to use the ESP-IDF framework, not everything might work as expected. There are known issues, the number of which is undoubtedly to rise sharply over the next weeks and months, and specific components that are missing support for ESP-IDF.
Why the hype around the ESP32-C3?
What makes the ESP32-C3 so special, you might ask. On the one hand, it is pin compatible with the ESP8266, which has led many to call the ESP32-C3 its true successor. This allows you to easily replace the ESP8266 in existing projects with a faster, more efficient, and Bluetooth capable board. On the other hand, it uses an open-source RISC-V powered CPU. Just like the ARM architecture, RISC-V is a reduced instruction set computer, but, in stark contrast to ARM, it requires no licencing fees to use.
Support for the ESP32-C3 allows you to run your open-source software on open-source hardware. It’s a dream come true for users of ESPHome and Home Assistant users.
Why the ESP32-C3 is better than the ESP8266
Once the ESP32-C3 modules enter mass-productions and board manufacturers start using them more, there will be no reason not to pick it over the ESP8266. With 400 KiB of RAM, it has ten times the amount compared to many ESP8266 modules. Add to the luxurious amount of RAM a 160 MHz RISC-V core that out-performs the ESP8266, and there’s a clear winner between the two. Despite the improvement in specs, Espressif claims that the ESP32-C3 requires less power than the ESP8266.
Just as you would find in the ESP32, the ESP32-C3 supports Bluetooth and BLE. In fact, the ESP32-3C supports the newer Bluetooth 5.0 standard, whereas the ESP32 is stuck with the previous generation’s Bluetooth 4.2. Bluetooth 5.0 is faster and has a greater range than its predecessor. There are some further audio quality improvements that are unlikely to be used in any ESPHome projects.
But that is where the benefits over the ESP32 end. The ESP32 has two cores instead of one, and it has more GPIO pins. The ESP32-3C is also missing the ultra-low-power coprocessor, which is often used in battery-powered nodes, and the digital-to-analog converters (DAC).
What the ESP32-C3 and the ESP32 do share, however, again makes the former an ESP8266 killer. Both have a LEDC (PWM) peripheral and the unique parallel I²S. This makes the ESP32-C3 an excellent choice for controlling fans, dumb LED strips, or any other PWM-driven component.
Can ESPHome nodes benefit from an ESP32-S2 and ESP32-S3
The focus of this article lies on the ESP32-C3 for one good reason: The ESP32-S2 and ESP32-S3 aren’t as much of an interesting addition for ESPHome users. The ESP32-S2 is a stripped down ESP32, with only one core and no support for Bluetooth.
The ESP32-S3 is essentially an ESP32 with added instructions to accelerate machine learning applications. It also supports Bluetooth 5.0, and has 384 KiB of superfast SRAM (static random-access memory). Just to give you a hint of how fast SRAM can be, it’s the same type of memory a desktop CPU uses for caching. These enhancements are unlikely to be used in any ESPHome projects.
ESP32-H2 and Zigbee/Matter support for ESPHome incoming?
What is also of note is the fact that ESP-IDF will support the ESP32-H2. The ESP32-H2 won’t just sport Wi-Fi and Bluetooth 5.0, but also the Thread and Zigbee protocols. Thread is what the alleged “industry–unifying standard” Matter as its backbone. And if Matter doesn’t work out as expected, there is also support for Zigbee 3.x., with Espressif being an active member of the Connectivity Standards Alliance (CSA).