Designed for simple and secure connectivity applications, Espressif has introduced ESP32-C3. ESP32-C3 is a cost-effective, RISC-V-based MCU with Wi-Fi and Bluetooth LE 5.0 connectivity for secure IoT applications. ESP32-C3 attempts to address the most common needs for connected devices.
According the company, these are the key criteria that have been considered for the design of ESP32-C3:
- Security is of prime importance. Even the lowest-cost connectivity solution needs to provide an appropriate level of security for common security threats.
- Bluetooth Low Energy availability is useful for improving user experience and field diagnostics.
- While cost is a very important parameter, the availability of sufficient memory for common use-cases is equally important. Optimizing applications for memory utilization, while maintaining such memory-constrained devices in the field, is challenging.
ESP32-C3 is a single-core, 32-bit, RISC-V-based MCU with 400KB of SRAM, which is capable of running at 160MHz. It has integrated 2.4GHz Wi-Fi and Bluetooth LE 5.0 with a long-range support. It has 22 programmable GPIOs with support for ADC, SPI, UART, I2C, I2S, RMT, TWAI and PWM.
Security features include:
- Secure Boot: ESP32-C3 implements the standard RSA-3072-based authentication scheme to ensure that only trusted applications can be used on the platform. This feature protects from executing a malicious application programmed in the flash. We understand that secure boot needs to be efficient, so that instant-on devices (such as light bulbs) can take advantage of this feature. ESP32-C3’s secure boot implementation adds less than 100ms overhead in the boot process.
- Flash Encryption: ESP32-C3 uses the AES-128-XTS-based flash encryption scheme, whereby the application as well as the configuration data can remain encrypted in the flash. The flash controller supports the execution of encrypted application firmware. Not only does this provide the necessary protection for sensitive data stored in the flash, but it also protects from runtime firmware changes that constitute time-of-check-time-of-use attacks.
- Digital Signature and HMAC Peripheral: ESP32-C3 has a digital signature peripheral that can generate digital signatures, using a private-key that is protected from firmware access. Similarly, the HMAC peripheral can generate a cryptographic digest with a secret that is protected from firmware access. Most of the IoT cloud services use the X.509-certificate-based authentication, and the digital signature peripheral protects the device’s private key that defines the device’s identity. This provides a strong protection for the device’s identity even in case of software vulnerability exploits.
- World Controller: ESP32-C3 has a new peripheral called world controller. This provides two execution environments fully isolated from each other. Depending on the configuration, this can be used to implement a Trusted Execution Environment (TEE) or a privilege separation scheme. If the application firmware has a task that deals with sensitive security data (such as the DRM service), it can take advantage of the world controller and isolate the execution.
Previous versions of the Bluetooth LE protocol had a smaller range, and that made it not very suitable a protocol for local control in large spaces, such as big homes. ESP32-C3 adds support for the Bluetooth LE 5.0 protocol, with coded PHY and extended advertisement features, while it also provides data redundancy to the packets, thus improving the range (typically 100 meters). Furthermore, it supports the Bluetooth LE Mesh protocol. This makes it a strong candidate for controlling devices in a local network, and for communicating with other Bluetooth LE 5.0 sensor devices directly.
With a large variety in the use-cases and their memory requirements, it is tricky to determine the most suitable memory size for the SoC. The company say it is important to support use-cases with one or, sometimes, two TLS connections to the cloud, which are Bluetooth-LE-active all the time, while also supporting a reasonable application headroom on top of that
ESP32-C3’s 400KB of SRAM can meet these requirements, while still keeping the chip’s cost within the budget target. Also, ESP32-C3 has dynamic partitioning for the instruction (IRAM) and data (DRAM) memory. So, the usable memory is effectively maximized. The designers have optimized the Bluetooth subsystem’s memory requirements, in comparison with ESP32.
Espressif Systems | www.espressif.com