PlatformIO Community

Include Path issues ( #include <libmaple/gpio.h> )

image

Missing info:

  • Marlin was cloned from which repository in which version / branch?
  • what’s the selected environment in the platformio.ini? Did you do any changes to it?
  • configuration header files?

I downloaded marlin 2.0.5.3 from their website
STM32F103RC_btt_512K is the environment
what do you mean by config header files

this is another picture of my issue and this is a fresh download of the firmware before I touched anything other than the config files i copied over from the example config files for “creality ender 3 with btt skr mini e3 v1.2”
Annotation 2020-06-26 163334

Configuration.h and Configuration_adv.h, the ones correct for your printer or released on https://github.com/MarlinFirmware/Configurations. I’ll assume you took this which is specifically tagged for 2.0.5.3 release (but different from the general bugfix-2.x branch).

PlatformIO commit https://github.com/platformio/platform-ststm32/commit/ae1f4504ede01746c39511af7531bab9da12ee7b#diff-70f8452f73769538c369f9cfbe418e41 broke the Marlin build by changing the core type to stm32 instead of the previous maple core. This Marlin environment needs however Maple and not the STM32Duino Arduino core. This is a breaking change introduced by the latest release.

Marlin just specifies platform = ststm32, aka the newest platform version, so that happened.

To fix it, either specify an older version of the platform by using

platform = ststm32@6.1.1

or keep the newest platform and add board_build.core = maple in the environment, e.g.

[env:STM32F103RC_btt_512K]
platform          = ststm32
board             = genericSTM32F103RC
board_build.core = maple
..

I also had to apply a library fix described in https://github.com/MarlinFirmware/Marlin/issues/18081

Compilation then works for me (Marlin at 2.0.5.3, configs from Configurations-2.0.5.3.zip\Configurations-2.0.5.3\config\examples\BigTreeTech\SKR Mini E3 1.2\, maple core fix and library version fix).

Building .pio\build\STM32F103RC_btt_512K\firmware.bin
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM:   [====      ]  43.8% (used 21512 bytes from 49152 bytes)
Flash: [====      ]  42.4% (used 222420 bytes from 524288 bytes)
====== [SUCCESS] Took 65.91 seconds ========

CC @valeros, breaking change for Marlin users, maybe this is interesting.