Skip to main content
Graduate
March 10, 2025
Solved

Best STM32 Development Kit for Learning FreeRTOS with Peripherals

  • March 10, 2025
  • 4 replies
  • 2588 views

Hi everyone,
I’m planning to buy an STM32 development board to start learning FreeRTOS. I have experience with bare-metal firmware development, primarily on TI C2000 DSPs and PIC32 MCUs, but I have no prior experience with STM32.

My goal is to first learn RTOS concepts and then move on to interfacing with peripherals like I2C, SPI, and CAN.

Right now, I’m considering the STM32L4 Discovery Kit IoT Node (B-L475E-IOT01A) because it has onboard sensors and and looks to have a wide FreeRTOS support.

Would this be a good choice for a beginner with no prior STM32 experience, or is there another STM32 board that would be better suited for learning FreeRTOS?

Any recommendations or insights from experienced STM32 developers would be greatly appreciated!

Thanks in advance!

    This topic has been closed for replies.
    Best answer by KnarfB

    There is no single best choice.

    You may install the STM32CubeMX software and use the Board Selector to find candidates.

    You mentioned CAN. L4 has an older (CAN 2.0) interface. STM32H7B3I-DK has CAN-FD including on-board transceiver. Otoh, H7 is more complex than L4. It also depend of whether you want to add external components (sensor, transceivers) on a bread-board or prefer on-board peripherals.

    Most basic with CAN FD transceiver and connector, but no other peripherals: NUCLEO-C092RC.

    Generally, there are 3 types of boards

    - Nucleo: almost no on-board peripherals

    - Discovery / DISCO: on-board peripherals

    - Evaluation Board: most complete design & support, higher cost

    If you opt for on-board peripherals, look for the Board Support Package (BSP) which wraps those in a generic way (some abstraction levels included, overhead?!).

    You may browse support software online https://github.com/STMicroelectronics/STM32CubeL4 and siblings. The Cube package will be downloaded by STM32CubeMX once you start a project.

    Evaluate the software offers for different seires before making the hardware decision.

    hth

    KnarfB

    4 replies

    Super User
    March 10, 2025

    @ak52 wrote:

    I’m planning to buy an STM32 development board to start learning FreeRTOSe!


    If you want to start learning FreeRTOS, it would probably be better to start with the simulator:

    https://freertos.org/Documentation/02-Kernel/03-Supported-devices/04-Demos/03-Emulation-and-simulation/Windows/FreeRTOS-Windows-Simulator-Emulator-for-Visual-Studio-and-Eclipse-MingW

    then you can concentrate on FreeRTOS - without all the extra complications of an embedded target.

     


    @ak52 wrote:

    I’m considering the STM32L4 Discovery Kit IoT Node (B-L475E-IOT01A) !


    Again, I think that the added complications there would probably be a hindrance rather than a help.

    I would suggest that, once you've covered the basics in the simulator, you move onto a basic Nucleo.

    As you move on, you can add sensors, etc, to the nucleo

    ak52Author
    Graduate
    March 10, 2025

    Hello Andrew,

    Thanks for the prompt reply! 

    I did consider the FreeRTOS simulator as a good starting point for learning the core RTOS concepts. I intend to start there only.

    But at some point I would need a microcontroller because the real challenge of an RTOS is handling interrupts, resource management, device drivers (Also not to mention task latencies any power optimization configurations etc..), such things the simulator may not know.. 


    @Andrew Neil wrote:
    I would suggest that, once you've covered the basics in the simulator, you move onto a basic Nucleo.

    As you move on, you can add sensors, etc, to the nucleo


    You mentioned to move to a 'basic Nucleo', could you maybe suggest some board part numbers so that I can check them out.

     

    Thanks Again,

    AK

     

    Super User
    March 10, 2025

    @ak52 wrote:

    You mentioned to move to a 'basic Nucleo', could you maybe suggest some board part numbers


    Since you've tagged this L4: https://www.st.com/en/evaluation-tools/nucleo-l452re.html 

    KnarfBAnswer
    Super User
    March 10, 2025

    There is no single best choice.

    You may install the STM32CubeMX software and use the Board Selector to find candidates.

    You mentioned CAN. L4 has an older (CAN 2.0) interface. STM32H7B3I-DK has CAN-FD including on-board transceiver. Otoh, H7 is more complex than L4. It also depend of whether you want to add external components (sensor, transceivers) on a bread-board or prefer on-board peripherals.

    Most basic with CAN FD transceiver and connector, but no other peripherals: NUCLEO-C092RC.

    Generally, there are 3 types of boards

    - Nucleo: almost no on-board peripherals

    - Discovery / DISCO: on-board peripherals

    - Evaluation Board: most complete design & support, higher cost

    If you opt for on-board peripherals, look for the Board Support Package (BSP) which wraps those in a generic way (some abstraction levels included, overhead?!).

    You may browse support software online https://github.com/STMicroelectronics/STM32CubeL4 and siblings. The Cube package will be downloaded by STM32CubeMX once you start a project.

    Evaluate the software offers for different seires before making the hardware decision.

    hth

    KnarfB

    ak52Author
    Graduate
    March 12, 2025

    Thanks KnarfB and Andrew,

    I think the discovery board is the best bet for me, no un-necessary additions of different sensor PCBs(shields) required  , because i will need some peripherals and sensors to play around with initially.

    I am deciding on either the STM32F47G-DISC1 or the the STM32L4 discovery (B-L475E-IOT01A), both of them have a good mix of sensors.

    This can be a separate topic...

    EDIT: The new topic is here: 

    https://community.st.com/t5/stm32-mcus-products/getting-started-with-stm32-basic-questions/m-p/781928

    Technical Moderator
    March 12, 2025

    Hello @ak52 ,

    If one comment answered your question, please accept it as solution.

    For a new question please open a new thread.

    Thanks.

    ak52Author
    Graduate
    March 12, 2025

    Thanks, I will do that