hFramework vs. Mbed OS

what is the (main) difference between hFramewokr and Mbed OS?
Which are the pros and cons for both of them?
Makes it sense to switch my controller software from hFramework to Mbed?
From the manuals I read that I need a ST-LINK V2 programmer to flash the firmware whereas the update of the Core2 firmware works just with the core-flasher.


Hi Micheal,
The main difference is that Mbed Os is the product of arm and supports many boards with cortex-m architecture. You can read more here. We provided the template for CORE2 to use it with the Mbed OS and you can find it on our GitHub here.

At the moment you can use core2flasher, ST-LINK and stm32loader to flash CORE2 with new firmware. The last method uses RPi connector to flash the board so it requires SBC.

Does it make sense to learn a new thing? It depends what you want to do with it. One advantage of Mbed Os might be the fact that it uses the ST HAL libraries for STM32 targets as ‘close to hardware’ layer so you can reuse a lot of code that is out there for more advance stuff. The mbed is also quite easy to learn and it has good documentation. We’re experimenting with this framework at the moment and with good results.

I hope I explained it a little.


Hi Szymon
thanks for your explanation.
If I understand you correct, I can flash Core2 with Mbed OS without using ST-Link (asking because I have no one (yet)).
What is the procedure to to so?
Here is only described how to do it with VSCode and ST-Link and here is descrbed how to do it with core2-flasher and a “special” file from the Husarion SDK (bootloader_1_0_0_core2.hex).
I assume also it is no problem to change between hFramework and Mbed OS (after reflashing).


The “Using CORE2 with Mbed OS” tutorial in our documentation is a little bit outdated now. I encourage you to check this README to find information on how to setup the mbed template for CORE2 in VSC. You’ll find available firmware uploading methods there too.

And yes, you can return to using hFramework at any moment. If you delete the bootloader in the process, you will just need to flash it again.

I will update the tutorial on this soon.