Using BLACKPILL (STM32F411CEU6) boards with mbed

Initially, my intention was to submit a pull request on adding a custom STM target as suggested here. So I started to read the related Mbed documentation, which is available here. Then I continued to study the Workflow, Guidelines for GitHub pull requests and Pull request template. Next was the GitHub pull requests workflow … A lot of boring staff (for me). However, maybe because I got annoyed or because there is no such link provided, I couldn’t find any info on how/where to submit the pull request form!

So, if someone is interested how to use cheap, yet powerful, BLACKPILL (STM32F411CEU6) boards with Mbed visit this place.


official ‘mbed enabled’ support needs to pass a lot of tests and can be really time consuming… And the Chinaboards have no USB programmer on board, so the Mbed idea of plug & play is not supported. But I like these boards too, there are many different also with F407 odr H7xx. Some of them I have also in my custom_targts repos, and I have enabled the F411 recently for cmake (CLI2). But I don’t have so much documentation like you :slight_smile:

You can send a PR to Jerome that he includes this target to the stm32custom_targets, that is already also a good collection.


there is a PR for the blackpill now, but I think its not you.

1 Like

Thank you Johannes for the good news! Originally, I had two things on mind when I opened this thread:

  • First of all to provide a feedback for the Mbed OS maintainers (regarding “Guide contributors both technically and procedurally”) that despite of having available an extensive documentation on how to contribute to Mbed it is still difficult to figure out “how” and “at which link” to submit a Pull Request.

  • Submit a pull request on adding the BLACKPILL board to the STM custom targets.

The BLACKPILL is available for the Mbed users for more than a year now. However, in my opinion it hasn’t got an attention (especially from hobbyist) it deserves. So I’m glad that the board is going to be (hopefully) available for us at an easy to find popular/common place, even when it happens on a Pull Request submitted by someone else.

1 Like

A PR to fix or improve something is usually not that difficult. You start from Github repo and create the PR. But you cannot modify the ARMmbed/mbed-os repo directly, so you have to create a fork first. This is done by clicking the ‘fork’ button in the original mbed-os repo.
Than you have your own fork, which is your private copy (or better its a link) and you can modify this. Then you create a branch and do your changes, and push it to github. Github will check that you have changed something and compares it automatically with the origin, and it offers also to create a PR with these changes.
Not really difficult, but changes are checked very carefully and even simple changes can take a lot of time to get it right.
Its really great stuff with git and github/gitlab. That is what I miss in Mbed Studio, VSCode has a real great git support built-in and even better with gitlens extension. And that is next big point, the license stuff that makes it difficult to use extensions in Mbed Studio, which is built on eclipse theia. Mbed Studio is easier to use for a beginner, but I wouldn’t do anything now without git.