Closed nopnop2002 closed 3 years ago
Hi @nopnop2002 ! That's correct, some boards use maple
core by default. Is that a problem?
If you build the following code with Maple Core, you will get a compilation error. This is a problem of the toolchain used in maple core.
#include <Arduino.h>
#define BLINK_DELAY 1000
void setup() {
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() {
static int state = 0;
static uint32_t lastupdate = millis();
uint32_t now = millis();
if (now - lastupdate >= BLINK_DELAY) {
state = 1 - state;
digitalWrite(LED_BUILTIN, state);
lastupdate = now;
}
}
platform.ini:
$ cat platformio.ini
;PlatformIO Project Configuration File
;
; Build options: build flags, source filter
; Upload options: custom upload port, speed and extra flags
; Library options: dependencies, extra library storages
; Advanced options: extra scripting
;
; Please visit documentation for the other options and examples
; https://docs.platformio.org/page/projectconf.html
[env:genericSTM32F103C8]
platform = ststm32
board = genericSTM32F103C8
framework = arduino
[env:genericSTM32F103C8_stm]
platform = ststm32
board = genericSTM32F103C8
framework = arduino
board_build.core=stm32
build using Maple core:
$ pio run -e genericSTM32F103C8
Processing genericSTM32F103C8 (platform: ststm32; board: genericSTM32F103C8; framework: arduino)
--------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/ststm32/genericSTM32F103C8.html
PLATFORM: ST STM32 6.0.0 > STM32F103C8 (20k RAM. 64k Flash)
HARDWARE: STM32F103C8T6 72MHz, 20KB RAM, 64KB Flash
DEBUG: Current (blackmagic) External (blackmagic, jlink, stlink)
PACKAGES: framework-arduinoststm32-maple 1.10000.190819 (1.0.0), toolchain-gccarmnoneeabi 1.70201.0 (7.2.1)
LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 33 compatible libraries
Scanning dependencies...
No dependencies
Compiling .pio/build/genericSTM32F103C8/FrameworkArduinoVariant/board.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduinoVariant/wirish/boards.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduinoVariant/wirish/boards_setup.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduinoVariant/wirish/start.S.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduinoVariant/wirish/start_c.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduinoVariant/wirish/syscalls.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/HardwareSerial.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/HardwareTimer.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/IPAddress.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/Print.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/Stream.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/WString.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/avr/dtostrf.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/cxxabi-compat.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/ext_interrupts.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/hooks.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/itoa.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/adc.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/adc_f1.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/bkp_f1.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/dac.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/dma.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/dma_f1.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/exc.S.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/exti.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/exti_f1.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/flash.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/fsmc_f1.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/gpio.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/gpio_f1.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/i2c.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/i2c_f1.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/iwdg.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/nvic.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/pwr.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/rcc.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/rcc_f1.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/spi.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/spi_f1.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/stm32f1/performance/isrs.S.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/stm32f1/performance/vector_table.S.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/systick.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/timer.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/timer_f1.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/usart.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/usart_f1.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/usart_private.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/usb/stm32f1/usb.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/usb/stm32f1/usb_cdcacm.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/usb/stm32f1/usb_reg_map.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/usb/usb_lib/usb_core.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/usb/usb_lib/usb_init.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/usb/usb_lib/usb_mem.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/usb/usb_lib/usb_regs.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/libmaple/util.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/main.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/new.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/pwm.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/sdio.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/stm32f1/util_hooks.c.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/stm32f1/wiring_pulse_f1.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/stm32f1/wirish_debug.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/stm32f1/wirish_digital_f1.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/tone.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/usb_serial.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/wirish_analog.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/wirish_digital.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/wirish_math.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/wirish_shift.cpp.o
Compiling .pio/build/genericSTM32F103C8/FrameworkArduino/wirish_time.cpp.o
Compiling .pio/build/genericSTM32F103C8/src/main.cpp.o
Linking .pio/build/genericSTM32F103C8/firmware.elf
/home/nop/.platformio/packages/toolchain-gccarmnoneeabi/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/bin/ld: .pio/build/genericSTM32F103C8/firmware.elf section `.text' will not fit in region `rom'
/home/nop/.platformio/packages/toolchain-gccarmnoneeabi/bin/../lib/gcc/arm-none-eabi/7.2.1/../../../../arm-none-eabi/bin/ld: region `rom' overflowed by 16224 bytes
collect2: error: ld returned 1 exit status
*** [.pio/build/genericSTM32F103C8/firmware.elf] Error 1
========================== [FAILED] Took 6.82 seconds ==========================
Environment Status Duration
---------------------- -------- ------------
genericSTM32F103C8 FAILED 00:00:06.819
genericSTM32F103C8_stm IGNORED
==================== 1 failed, 0 succeeded in 00:00:06.819 ====================
build using STM core:
$ pio run -e genericSTM32F103C8_stm
Processing genericSTM32F103C8_stm (platform: ststm32; board: genericSTM32F103C8; framework: arduino)
--------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/ststm32/genericSTM32F103C8.html
PLATFORM: ST STM32 6.0.0 > STM32F103C8 (20k RAM. 64k Flash)
HARDWARE: STM32F103C8T6 72MHz, 20KB RAM, 64KB Flash
DEBUG: Current (blackmagic) External (blackmagic, jlink, stlink)
PACKAGES: toolchain-gccarmnoneeabi 1.70201.0 (7.2.1), framework-arduinoststm32 3.10700.191028 (1.7.0)
LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 11 compatible libraries
Scanning dependencies...
No dependencies
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduinoVariant/PeripheralPins.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduinoVariant/variant.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/HardwareSerial.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/HardwareTimer.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/IPAddress.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/Print.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/RingBuffer.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/Stream.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/Tone.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/USBSerial.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/WInterrupts.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/WMath.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/WSerial.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/WString.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/abi.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/avr/dtostrf.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/board.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/hooks.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/itoa.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/main.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/new.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/pins_arduino.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_adc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_adc_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_can.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_cec.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_comp.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_comp_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_cordic.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_cortex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_crc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_crc_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_cryp.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_cryp_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_dac.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_dac_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_dcmi.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_dcmi_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_dfsdm.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_dfsdm_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_dma.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_dma2d.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_dma_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_dsi.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_eth.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_eth_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_exti.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_fdcan.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_firewall.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_flash.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_flash_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_flash_ramfunc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_fmac.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_fmpi2c.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_fmpi2c_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_gfxmmu.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_gpio.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_gpio_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_hash.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_hash_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_hcd.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_hrtim.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_hsem.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_i2c.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_i2c_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_i2s.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_i2s_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_ipcc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_irda.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_iwdg.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_jpeg.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_lcd.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_lptim.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_ltdc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_ltdc_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_mdios.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_mdma.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_mmc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_mmc_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_msp_template.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_nand.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_nor.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_opamp.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_opamp_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_ospi.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_pccard.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_pcd.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_pcd_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_pka.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_pwr.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_pwr_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_qspi.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_ramecc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_rcc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_rcc_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_rng.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_rtc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_rtc_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_sai.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_sai_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_sd.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_sd_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_sdadc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_sdram.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_smartcard.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_smartcard_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_smbus.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_spdifrx.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_spi.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_spi_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_sram.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_swpmi.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_tim.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_tim_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_timebase_rtc_alarm_template.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_timebase_rtc_wakeup_template.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_timebase_tim_template.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_tsc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_uart.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_uart_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_usart.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_usart_ex.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/HAL/stm32yyxx_hal_wwdg.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_adc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_bdma.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_comp.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_cordic.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_crc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_crs.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_dac.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_delayblock.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_dma.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_dma2d.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_exti.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_fmac.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_fmc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_fsmc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_gpio.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_hrtim.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_i2c.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_lptim.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_lpuart.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_mdma.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_opamp.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_pka.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_pwr.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_rcc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_rng.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_rtc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_sdmmc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_spi.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_swpmi.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_tim.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_ucpd.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_usart.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_usb.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/LL/stm32yyxx_ll_utils.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/PortNames.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/analog.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/bootloader.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/clock.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/core_callback.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/dwt.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/hw_config.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/interrupt.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/low_power.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/pinmap.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/rtc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/spi_com.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/startup_stm32yyxx.S.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/stm32_def.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/stm32_eeprom.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/system_stm32yyxx.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/timer.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/twi.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/uart.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/usb/cdc/cdc_queue.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/usb/cdc/usbd_cdc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/usb/cdc/usbd_cdc_if.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/usb/hid/usbd_hid_composite.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/usb/hid/usbd_hid_composite_if.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/usb/usb_device_core.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/usb/usb_device_ctlreq.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/usb/usb_device_ioreq.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/usb/usbd_conf.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/usb/usbd_desc.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/usb/usbd_ep_conf.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/stm32/usb/usbd_if.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/syscalls.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/wiring_analog.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/wiring_digital.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/wiring_pulse.cpp.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/wiring_shift.c.o
Compiling .pio/build/genericSTM32F103C8_stm/FrameworkArduino/wiring_time.c.o
Compiling .pio/build/genericSTM32F103C8_stm/src/main.cpp.o
Linking .pio/build/genericSTM32F103C8_stm/firmware.elf
Checking size .pio/build/genericSTM32F103C8_stm/firmware.elf
Building .pio/build/genericSTM32F103C8_stm/firmware.bin
Memory Usage -> http://bit.ly/pio-memory-usage
DATA: [ ] 4.2% (used 852 bytes from 20480 bytes)
PROGRAM: [== ] 18.6% (used 12192 bytes from 65536 bytes)
========================= [SUCCESS] Took 9.42 seconds =========================
Environment Status Duration
---------------------- -------- ------------
genericSTM32F103C8 IGNORED
genericSTM32F103C8_stm SUCCESS 00:00:09.424
========================= 1 succeeded in 00:00:09.424 =========================
********************************************************************************
There is a new version 4.1.0 of PlatformIO available.
Please upgrade it via `platformio upgrade` or `pip install -U platformio` command.
Changes: https://docs.platformio.org/en/latest/history.html
********************************************************************************
I think the underlying issue here is partly in relation to the documentation stating that the STM32duino core is used by default, when it is clearly not. It's understandable for boards that were only defined/supported by the Maple core would use that core by default, but for overlapping boards, and STM32duino only boards, either STM32duino should be the default, or that wording corrected.
This document has the following description.
https://docs.platformio.org/en/latest/platforms/ststm32.html
There are two different Arduino cores for STM32 microcontrollers: STM32Duino and Arduino STM32 (maple).
Both of them have been developed independently, therefore, have different functionality and set of internal libraries.
**By default, official STM32Duino core is used.**
Some of the boards support both cores.
To change the core you can use a board_build.core option that needs be added to build_flags:
But this description is incorrect.
@nopnop2002 If the issue is with the fact that it is worded wrong, I think someone has already updated the documentation
Switching between Arduino cores
There are three different Arduino cores for STM32 microcontrollers: STM32Duino, Arduino STM32 (maple) and STM32L0. All of them have been developed independently, therefore, have different functionality and set of internal libraries. By default, official STM32Duino core is used (except cases when a board supports only one specific core). Some of the boards support all three cores. To change the core you can use a ``board_build.core`` option that needs be added to :ref:`projectconf_build_flags`:
https://docs.platformio.org/en/latest/platforms/ststm32.html#switching-between-arduino-cores
I have confirmed that the official STM32Duino core is used by default.
$ cd ~/.platformio/platforms/ststm32/boards
$ grep -r core *
1bitsy_stm32f415rgt.json: "core": "stm32",
adafruit_feather_f405.json: "core": "stm32",
afroflight_f103cb.json: "core": "stm32",
armed_v1.json: "core": "stm32",
armstrap_eagle1024.json: "core": "stm32",
armstrap_eagle2048.json: "core": "stm32",
armstrap_eagle512.json: "core": "stm32",
b96b_aerocore2.json: "core": "stm32",
b96b_aerocore2.json: "variant": "96b_aerocore2"
b96b_aerocore2.json: "url": "https://www.96boards.org/product/aerocore2/",
black_f407ve.json: "core": "stm32",
black_f407vg.json: "core": "stm32",
black_f407ze.json: "core": "stm32",
black_f407zg.json: "core": "stm32",
blackpill_f103c8.json: "core": "stm32",
blackpill_f103c8_128.json: "core": "stm32",
blackpill_f401cc.json: "core": "stm32",
blackpill_f401ce.json: "core": "stm32",
blackpill_f411ce.json: "core": "stm32",
blue_f407ve_mini.json: "core": "stm32",
bluepill_f103c6.json: "core": "stm32",
bluepill_f103c8.json: "core": "stm32",
bluepill_f103c8_128k.json: "core": "stm32",
cicada_l082cz.json: "core": "stm32l0",
cloud_jam.json: "core": "stm32",
coreboard_f401rc.json: "core": "stm32",
cricket_l082cz.json: "core": "stm32l0",
disco_f303vc.json: "core": "stm32",
disco_f407vg.json: "core": "stm32",
disco_f413zh.json: "core": "stm32",
disco_g031j6.json: "core": "stm32",
disco_l100rc.json: "core": "stm32",
disco_l152rb.json: "core": "stm32",
diymore_f407vgt.json: "core": "stm32",
econode_l082cz.json: "core": "stm32l0",
electrosmith_daisy.json: "core": "stm32",
fk407m1.json: "core": "stm32",
fysetc_s6.json: "core": "stm32",
genericSTM32F103C4.json: "core": "stm32",
genericSTM32F103C6.json: "core": "stm32",
genericSTM32F103C8.json: "core": "stm32",
genericSTM32F103CB.json: "core": "stm32",
genericSTM32F103R4.json: "core": "stm32",
genericSTM32F103R6.json: "core": "stm32",
genericSTM32F103R8.json: "core": "stm32",
genericSTM32F103RB.json: "core": "stm32",
genericSTM32F103RC.json: "core": "stm32",
genericSTM32F103RD.json: "core": "stm32",
genericSTM32F103RE.json: "core": "stm32",
genericSTM32F103RF.json: "core": "stm32",
genericSTM32F103RG.json: "core": "stm32",
genericSTM32F103T4.json: "core": "stm32",
genericSTM32F103T6.json: "core": "stm32",
genericSTM32F103T8.json: "core": "stm32",
genericSTM32F103TB.json: "core": "stm32",
genericSTM32F103V8.json: "core": "stm32",
genericSTM32F103VB.json: "core": "stm32",
genericSTM32F103VC.json: "core": "stm32",
genericSTM32F103VD.json: "core": "stm32",
genericSTM32F103VE.json: "core": "stm32",
genericSTM32F103VF.json: "core": "stm32",
genericSTM32F103VG.json: "core": "stm32",
genericSTM32F103ZC.json: "core": "stm32",
genericSTM32F103ZD.json: "core": "stm32",
genericSTM32F103ZE.json: "core": "stm32",
genericSTM32F103ZF.json: "core": "stm32",
genericSTM32F103ZG.json: "core": "stm32",
genericSTM32F303CB.json: "core": "stm32",
genericSTM32F373RC.json: "core": "stm32",
genericSTM32F401CB.json: "core": "stm32",
genericSTM32F401CC.json: "core": "stm32",
genericSTM32F401CD.json: "core": "stm32",
genericSTM32F401CE.json: "core": "stm32",
genericSTM32F401RB.json: "core": "stm32",
genericSTM32F401RC.json: "core": "stm32",
genericSTM32F401RD.json: "core": "stm32",
genericSTM32F401RE.json: "core": "stm32",
genericSTM32F405RG.json: "core": "stm32",
genericSTM32F407IGT6.json: "core": "stm32",
genericSTM32F407VET6.json: "core": "stm32",
genericSTM32F407VGT6.json: "core": "stm32",
genericSTM32F410C8.json: "core": "stm32",
genericSTM32F410CB.json: "core": "stm32",
genericSTM32F410R8.json: "core": "stm32",
genericSTM32F410RB.json: "core": "stm32",
genericSTM32F411CC.json: "core": "stm32",
genericSTM32F411CE.json: "core": "stm32",
genericSTM32F411RC.json: "core": "stm32",
genericSTM32F411RE.json: "core": "stm32",
genericSTM32F412CE.json: "core": "stm32",
genericSTM32F412CG.json: "core": "stm32",
genericSTM32F412RE.json: "core": "stm32",
genericSTM32F412RG.json: "core": "stm32",
genericSTM32F413CG.json: "core": "stm32",
genericSTM32F413CH.json: "core": "stm32",
genericSTM32F413RG.json: "core": "stm32",
genericSTM32F413RH.json: "core": "stm32",
genericSTM32F415RG.json: "core": "stm32",
genericSTM32F417VE.json: "core": "stm32",
genericSTM32F417VG.json: "core": "stm32",
genericSTM32F423CH.json: "core": "stm32",
genericSTM32F423RH.json: "core": "stm32",
genericSTM32F446RC.json: "core": "stm32",
genericSTM32F446RE.json: "core": "stm32",
gnat_l082cz.json: "core": "stm32l0",
grasshopper_l082cz.json: "core": "stm32l0",
hy_tinystm103tb.json: "core": "stm32",
malyanm200_f103cb.json: "core": "stm32",
maple.json: "core": "maple",
maple_mini_b20.json: "core": "maple",
maple_mini_origin.json: "core": "stm32",
maple_ret6.json: "core": "maple",
microduino32_flash.json: "core": "stm32",
mkr_sharky.json: "core": "stm32",
mxchip_az3166.json: "core": "arduino",
netduino2plus.json: "core": "stm32",
nucleo_f031k6.json: "core": "stm32",
nucleo_f072rb.json: "core": "stm32",
nucleo_f103rb.json: "core": "stm32",
nucleo_f207zg.json: "core": "stm32",
nucleo_f401re.json: "core": "stm32",
nucleo_f746zg.json: "core": "stm32",
nucleo_f756zg.json: "core": "stm32",
nucleo_g071rb.json: "core": "stm32",
nucleo_g431kb.json: "core": "stm32",
nucleo_g431rb.json: "core": "stm32",
nucleo_g474re.json: "core": "stm32",
nucleo_h723zg.json: "core": "stm32",
nucleo_h743zi.json: "core": "stm32",
nucleo_h745zi_q.json: "core": "stm32",
nucleo_l433rc_p.json: "core": "stm32",
olimex_e407.json: "core": "stm32",
olimex_f103.json: "core": "stm32",
olimex_h407.json: "core": "stm32",
olimex_p405.json: "core": "stm32",
olimexino.json: "core": "stm32",
portenta_h7_m4.json: "core": "arduino",
portenta_h7_m4.json: "name": "Arduino Portenta H7 (M4 core)",
portenta_h7_m7.json: "core": "arduino",
portenta_h7_m7.json: "name": "Arduino Portenta H7 (M7 core)",
prntr_v2.json: "core": "stm32",
pybstick26_duino.json: "core": "stm32",
pybstick26_lite.json: "core": "stm32",
pybstick26_pro.json: "core": "stm32",
pybstick26_std.json: "core": "stm32",
rhf76_052.json: "core": "stm32",
robotdyn_blackpill_f303cc.json: "core": "stm32",
sparky_v1.json: "core": "stm32",
st3dp001_eval.json: "core": "stm32",
stm32f4stamp.json: "core": "stm32",
thunder_pack_f411.json: "core": "stm32",
vccgnd_f103zet6.json: "core": "stm32",
waveshare_open103z.json: "core": "stm32",
By default, official STM32Duino core is used. For some boards, the maple core is the default.
My Environment: