platformio / platform-ststm32

ST STM32: development platform for PlatformIO
https://registry.platformio.org/platforms/platformio/ststm32
Apache License 2.0
397 stars 310 forks source link

stm32 default core library #339

Closed nopnop2002 closed 3 years ago

nopnop2002 commented 4 years ago

By default, official STM32Duino core is used. For some boards, the maple core is the default.

$ cd ~/.platformio/platforms/ststm32/boards
$ grep -r core *
1bitsy_stm32f415rgt.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",
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",
blue_f407ve_mini.json:    "core": "stm32",
bluepill_f103c6.json:    "core": "stm32",
bluepill_f103c8.json:    "core": "stm32",
bluepill_f103c8_128k.json:    "core": "stm32",
cloud_jam.json:    "core": "stm32",
coreboard_f401rc.json:    "core": "stm32",
disco_f303vc.json:    "core": "stm32",
disco_f407vg.json:    "core": "stm32",
disco_l100rc.json:    "core": "stm32",
disco_l152rb.json:    "core": "stm32",
diymore_f407vgt.json:    "core": "stm32",
fk407m1.json:    "core": "stm32",
genericSTM32F103C8.json:    "core": "maple",
genericSTM32F103CB.json:    "core": "maple",
genericSTM32F103R8.json:    "core": "maple",
genericSTM32F103RB.json:    "core": "maple",
genericSTM32F103RC.json:    "core": "maple",
genericSTM32F103RE.json:    "core": "maple",
genericSTM32F103T8.json:    "core": "maple",
genericSTM32F103TB.json:    "core": "maple",
genericSTM32F103VB.json:    "core": "maple",
genericSTM32F103VC.json:    "core": "maple",
genericSTM32F103VD.json:    "core": "maple",
genericSTM32F103VE.json:    "core": "maple",
genericSTM32F103ZC.json:    "core": "maple",
genericSTM32F103ZD.json:    "core": "maple",
genericSTM32F103ZE.json:    "core": "maple",
genericSTM32F303CB.json:    "core": "stm32",
genericSTM32F407VET6.json:    "core": "maple",
genericSTM32F407VGT6.json:    "core": "maple",
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": "maple",
mkr_sharky.json:    "core": "stm32",
mxchip_az3166.json:    "core": "arduino",
netduino2plus.json:    "core": "maple",
nucleo_f103rb.json:    "core": "stm32",
nucleo_f207zg.json:    "core": "stm32",
nucleo_f401re.json:    "core": "stm32",
nucleo_g071rb.json:    "core": "stm32",
nucleo_g431kb.json:    "core": "stm32",
nucleo_g431rb.json:    "core": "stm32",
nucleo_g474re.json:    "core": "stm32",
nucleo_h743zi.json:    "core": "stm32",
olimex_e407.json:    "core": "stm32",
olimex_h407.json:    "core": "stm32",
olimex_p405.json:    "core": "maple",
olimexino.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": "maple",

My Environment:

$ pio update
Updating tool-scons                      @ 2.20501.191222 [Up-to-date]

Platform Manager
================
Platform Espressif 32
--------
Updating espressif32                     @ 1.11.1         [Up-to-date]
Updating tool-esptoolpy                  @ 1.20600.0      [Up-to-date]
Updating toolchain-xtensa32              @ 2.50200.80     [Up-to-date]
Updating framework-arduinoespressif32    @ 2.10004.191002 [Up-to-date]
Updating framework-espidf                @ 3.30300.190916 [Up-to-date]
Updating tool-mkspiffs                   @ 2.230.0        [Up-to-date]

Platform Espressif 32 (Stage)
--------
Updating espressif32                     @ cff56ff        [Up-to-date]
Updating tool-esptoolpy                  @ 1.20600.0      [Up-to-date]
Updating toolchain-xtensa32              @ 2.50200.80     [Up-to-date]
Updating framework-espidf                @ 3.30300.190916 [Up-to-date]
Updating tool-mkspiffs                   @ 2.230.0        [Up-to-date]

Platform Espressif 8266
--------
Updating espressif8266                   @ 2.3.2          [Up-to-date]
Updating tool-esptoolpy                  @ 1.20800.0      [Up-to-date]
Updating tool-mkspiffs                   @ 1.200.0        [Up-to-date]
Updating tool-esptool                    @ 1.413.0        [Up-to-date]
Updating framework-arduinoespressif8266  @ 2.20603.191216 [Up-to-date]
Updating toolchain-xtensa                @ 2.40802.191122 [Up-to-date]

Platform ST STM32
--------
Updating ststm32                         @ 6.0.0          [Up-to-date]
Updating tool-stm32duino                 @ 1.0.1          [Up-to-date]
Updating tool-dfuutil                    @ 1.9.190708     [Up-to-date]
Updating tool-openocd                    @ 2.1000.190707  [Up-to-date]
Updating toolchain-gccarmnoneeabi        @ 1.70201.0      [Up-to-date]
Updating framework-arduinoststm32        @ 3.10700.191028 [Up-to-date]

Library Manager
===============
Library Storage: /home/nop/.platformio/lib
Updating STM32Ethernet                   @ 1.0.5          [Up-to-date]
Updating STM32duino FreeRTOS             @ 10.0.1         [Up-to-date]
Updating STM32duino LwIP                 @ 2.1.2          [Up-to-date]
valeros commented 4 years ago

Hi @nopnop2002 ! That's correct, some boards use maple core by default. Is that a problem?

nopnop2002 commented 4 years ago

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
********************************************************************************
pfeerick commented 4 years ago

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.

nopnop2002 commented 4 years ago

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.

utkarshsethi commented 3 years ago

@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

nopnop2002 commented 3 years ago

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",