What’s the difference between single-core and dual-core of ESP32 (programming method, features performance, power consumption, and etc.)?¶
The main difference would be the additional independent core, on which some highly real-time operations can be located.
The programming method is the same, and users only have to configure the freertos to run on the single core. See
make menuconfig → Component config → FreeRTOS → [*] Run FreeRTOS only on first core;
From the performance aspect, they are only different when it comes to high-load calculations. If not regarding to such calculations, there is no obvious difference in use (e.g., AI algorithm, high real-time interruption);
There is only a slice of difference in power consumption when entering modem-sleep mode. For more details, please refer to ESP32 Technical Reference Manual.