cancel
Showing results for 
Search instead for 
Did you mean: 

Best STM32 Development Kit for Learning FreeRTOS with Peripherals

ak52
Visitor

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!

4 REPLIES 4

@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

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

 


@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 

KnarfB
Principal III

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