Change, from Arduino to STM32

If you like it, share it

Why change, from Arduino to STM32 ?

The answer to the above question is simple, for the computing power and the compatibility with the Arduino connectors.

I definitely do not want to convince anyone that it is time to move to a more modern and performing MCU family (Cortex Mx) but, if you found yourself in situations where you wanted to do more, then the STM32 family with its NUCLEO boards and mBed are the answer you have your wishes.

In any case, those who use Arduino, will have already noticed that new Arduino boards have been created that mount more performing MCUs (Cortex Mx) just to keep the Arduino platform updated with the current times which require: low consumption, performance and Internet connection.

If I have intrigued you and you are still reading, here is what you have available using the family and development boards based on STM32.

STM32 is a family of MCU based on Cortex Mx that ranges from Cortex M0 up to Cortex M7.

To develop on STM32 there are three categories of evaboard that always contain the emulator for debugging and programming the STM32.
The evaboard are:

  • Discovery
  • High Level EvaBoard

The NUCLEO boards are compatible with the Arduino connectors (Arduino Uno rev3) and there are three models that are 32pin, 64pin and 144pin.


On the NUCLEO boards you can plugin many cards compatible with Arduino (Uno rev3) but also STM has released several expansion cards (X-NUCLEO) ranging from radio modules to mems to motor controls. See here.
Some Arduino expansion boards need to be adapted to run at 3.3V which is the classic working voltage of the STM32. See this example.
The STM32 have almost all pins that are 5V tolerant.

For SW development, if you arrive from the Arduino world, I recommend the mBed environment which is free and not least is similar to the Arduino development environment system and is ease of use.
With mBed you can also export your SW to be used with IAR, KEIL, AC6, GCC, etc.
With IAR, KEIL, AC6, GCC, etc, it is possible to make a classic debug using breakpoint, variable watch and comparision, etc.

Where to buy NUCLEO and X-NUCLEO boards ?
Below there are some link.

See here: STM32 Development Boards Portfolio

Last but not least, I suggest to read the manual below.
Quick start guide to mBed and STM NUCLEO Boards