Same misunderstanding as in here .
loic-morvan:
ESP32-DevKitM-1
Even more develish for PlatformIO: Depending on the manufacturing date , this board is dualcore, not unicore.
Thing is that this is an Arduino issue per
opened 06:39PM - 14 May 21 UTC
Type: Feature request
Resolution: Wontfix
Type: Documentation
Type: Chip support
### Hardware:
Board: ESP32-DevKitM-1 (ESP32-U4WDH)
Core Installation ver… sion: 2.0.0-alpha1
IDE name: Arduino IDE
Flash Frequency: 40Mhz
PSRAM enabled: no
Upload Speed: 115200
Computer OS: Windows 10
### Description:
Is ESP32-DevkitM-1 (ESP32-U4WDH) supported? It's single core, so it gets the same error that the solo's were getting:
```
13:33:33.253 -> E (118) cpu_start: Running on single core variant of a chip, but app is built with multi-core support.
13:33:33.253 -> E (118) cpu_start: Check that CONFIG_FREERTOS_UNICORE is enabled in menuconfig
```
### Sketch: (leave the backquotes for [code formatting](https://help.github.com/articles/creating-and-highlighting-code-blocks/))
```cpp
/*
Blink
Turns an LED on for one second, then off for one second, repeatedly.
Most Arduinos have an on-board LED you can control. On the UNO, MEGA and ZERO
it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN is set to
the correct LED pin independent of which board is used.
If you want to know what pin the on-board LED is connected to on your Arduino
model, check the Technical Specs of your board at:
https://www.arduino.cc/en/Main/Products
modified 8 May 2014
by Scott Fitzgerald
modified 2 Sep 2016
by Arturo Guadalupi
modified 8 Sep 2016
by Colby Newman
This example code is in the public domain.
http://www.arduino.cc/en/Tutorial/Blink
*/
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(21, OUTPUT);
}
// the loop function runs over and over again forever
void loop() {
digitalWrite(21, HIGH); // turn the LED on (HIGH is the voltage level)
delay(1000); // wait for a second
digitalWrite(21, LOW); // turn the LED off by making the voltage LOW
delay(1000); // wait for a second
}
```
### Debug Messages:
```
13:33:33.159 -> ELF file SHA256: 0000000000000000
13:33:33.159 ->
13:33:33.159 -> Rebooting...
13:33:33.159 -> ets Jul 29 2019 12:21:46
13:33:33.159 ->
13:33:33.159 -> rst:0xc (SW_CPU_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
13:33:33.159 -> configsip: 188777542, SPIWP:0xee
13:33:33.159 -> clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
13:33:33.159 -> mode:DIO, clock div:2
13:33:33.159 -> load:0x3fff0030,len:1252
13:33:33.159 -> load:0x40078000,len:12692
13:33:33.159 -> load:0x40080400,len:3100
13:33:33.159 -> entry 0x400805ec
13:33:33.253 -> E (118) cpu_start: Running on single core variant of a chip, but app is built with multi-core support.
13:33:33.253 -> E (118) cpu_start: Check that CONFIG_FREERTOS_UNICORE is enabled in menuconfig
13:33:33.300 ->
13:33:33.300 -> abort() was called at PC 0x400825e9 on core 0
13:33:33.300 ->
13:33:33.300 ->
13:33:33.300 -> Backtrace:0x400d4c55:0x3ffe3b800x40087045:0x3ffe3ba0 0x4008c269:0x3ffe3bc0 0x400825e9:0x3ffe3c40 0x40078f6b:0x3ffe3c90 |<-CORRUPTED
```
and by the second last comment they seem to still not want to have official Unicore support.
As stated in the above thread, you can try and use the modified tasmota platform which explicitly has unicore boards and modified frameworks to support it.
[env:esp32-solo1]
; includes 2.0.6 arduino-esp32
platform = https://github.com/tasmota/platform-espressif32/releases/download/2022.12.2/platform-espressif32.zip
; automatically selects framework-arduino-solo1 unicore variant
board = esp32-solo1
framework = arduino