-
-
Notifications
You must be signed in to change notification settings - Fork 314
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable SPL for STM32F1 #667
base: develop
Are you sure you want to change the base?
Conversation
LGTM lol |
I allowed myself to make a tiny addition to the SPL framwork with the option Further I've removed the Tested on real hardware and works fine. |
I'm getting the
|
The SPL builder code is by-default not linking against newlibnano which would provide this function, so you have to do a little addititon yourself like I did here: In the extra_scripts = add_nanolib.py in the root of the project (same level as Import("env")
env.Append(LINKFLAGS=["--specs=nosys.specs", "--specs=nano.specs"]) Keep in mind for |
This PR is very useful. |
"spl", | ||
"stm32cube", | ||
"zephyr" | ||
"zephyr", | ||
"spl" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
spl
is repeated.
@@ -180,7 +180,7 @@ | |||
"type": "framework", | |||
"optional": true, | |||
"owner": "platformio", | |||
"version": "~2.10201.0" | |||
"version": "https://github.com/maxgerhardt/pio-framework-spl-stm32.git" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why here change version to an url?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Because the platformio/framework-spl@~2.10201.0
is 6 years old and doesn't even contain an stm32f1
folder with the needed files.
yeah, we need SPL for stm32f1, badly |
Enables Simple Peripheral LIbrary (SPL) framework support for STM32F1.
Uses the most recent SPL F1 package version 3.6.0 from here.
The SPL framework needs the boards to have an identifying macro like
STM32F10X_MD
for "medium density" device. Instead of computing and adding this to ~50 board files, a on-the-fly identification is made based on chip name and flash size, like the reference manual wants it.Rewrites the spl-blink example to use the SysTick for delay and adds the F1 code to it.
The
package.json
was modified to repoint framework-spl to https://github.com/maxgerhardt/pio-framework-spl-stm32.git, which is the latest PlatformIO-provided framework-spl on top of the SPL F1 files. So CI should go through, but this change should be remade by uploading the updated package to the registry and using that in thepackage.json
.Note:
build.core
, which evaluated tostm32
for all previous SPL supported boards, has been replaced withbuild.mcu[0:5]
, which evaluates to the same. However, STM32F1 maple boards likemaple.json
have "maple" as the value here, which breaks the build, hence it was changed.See example project at https://github.com/maxgerhardt/pio-stm32f1-spl-test.