ESP32-C6 vs ESP32-C61

A quick article to post the relevant differences between ESP32-C6 and ESP32-C61.

ESP32-C6 is a embedded micro-controller with a dual RISC-V cores running up to 160MHz and 20MHz. It's main selling point is that it's complete, it can talk Wifi (802.11ax), Bluetooth (BLE) and Zigbee (802.15.4).

ESP32-C61 is newer but provides different a feature-set than its cousin.

Let's see the differences below, since this information is hard to collect on the usual advertisement sources.

Memory

ESP32-C6 provides many different memories. I'm only spotting about the difference with the C61 here, so here there are:

RAM

  1. C6 has 512KB of High Power SRAM. C61 only offers 320KB
  2. C6 has 16KB of Low Power SRAM, C61 doesn't have a low power core and thus, no SRAM for it
  3. C61 added a Quad SPI bus for PSRAM at 120MHz (so a theorical maximum bandwidth of 60MB/s, or 120MB/s if DDR mode is supported, TBC). C6 has none, since it doesn't support Quad SPI PSRAM.

ROM

  1. C6 has 320KB of ROM while C61 only offer 256KB. The ROM usually stores binary blobs and prebuilt functions and library. Since the C61 has a smaller ROM, this means that some library/code will not be there compared to C6, and will need to be stored in Flash instead. However, since C6 supports 802.15.4 (which C61 does not), it's possible the ROM advantage of C6 is consumed for storing 802.15.4 related code.

Flash

Flash support is the same for both chip.

CPU

  1. The C6 is made of 2 cores, one "HP" (for High Power) and one "LP" (Low Power).
  2. The C61 only have a HP core. It's a new generation of core since it supports a five stage pipeline (opposite to 4 in C6 HP core), so it gets better performances per MHz and likely per Watt (about 11% faster).
  3. They both can run at 240MHz and down to 40MHz

Peripherals

Common features first:

  1. Both C6 and C61 offer 30 GPIO
  2. Both C6 and C61 offer 3 UART (on C6, one of the UART is connected to the LP core)
  3. Both C6 and C61 offer 3 SPI lines (one general purpose SPI and 2 for Flash or PSRAM communication). Only C61 support PSRAM on the dedicated SPI port.
  4. Both C6 and C61 offer I2C (on C6, there are 2 instances and one is dedicated to LP core)
  5. Both C6 and C61 offer I2S
  6. Both C6 and C61 offer LED PWM controller with 6 channels
  7. Both C6 and C61 offer USB (Serial + JTAG) controller
  8. Both C6 and C61 offer SDIO slave
  9. Both C6 and C61 offer a GDMA (C6 has 3 channels, C61 only 2)
  10. Both C6 and C61 offer ETM
  11. Both C6 and C61 offer timers

Differences:

  1. Only C6 offers a pulse counter
  2. Only C6 offers 2 TWAI bus (CAN)
  3. Only C6 offers a motor controller PWM
  4. Only C6 offers a remote RX/TX controller
  5. Only C6 offers a parallel IO interface
  6. Both have ADC peripheral, but C6 supports 7 channels (only 4 for C61). C61 can connect a brownout detector and an analog voltage comparator to the ADC (C6 can't)

Wireless

They both offer the same performance in Wireless connectivity. C61 doesn't support 802.15.4 (aka Zigbee) but it supports Bluetooth 6.0 and BLE Mesh.

Power consumption

  1. In active mode (everything on), C61 consumes more than C6 (1% more, with 360mA vs 354mA in WIFI, and 14% more in BLE RX 81mA vs 71mA).
  2. In BLE TX, at equivalent power, C61 consumes less than C6 (16% less with 160mA vs 190mA)
  3. In all sleep modes (modem, light, deep), C61 consumes more than C6 (11% more with 200µA vs 180µA in LS)
  4. Only C6 provides a LP core (which consumes ~200 to 300µA when running, but that can keep its memory in deep sleep)

Conclusion

ESP32-C61 doesn't provide as many features for low power mode. It's clearly more power hungry since it also provides better computing performances. With the addition of PSRAM support, it's clearly made for processing more data (like for GUI). Compared to a ESP32-S3 however, I've hard time finding any interest for this chip. It's missing many peripherals that ESP32-C6 provides. It doesn't fix the issues with limited ADC features of C6 (like being able to use the ADC in low power mode). The addition of BLE 6.0 and BLE Mesh might interest people however (as an alternative to a Zigbee's mesh?) but this doesn't really make sense without a low power domain which it doesn't offer or support.

Article précédent

Articles en relation