STM32 boards support
Driver support
MCU | 2 PWM mode | 4PWM mode | 3 PWM mode | 6 PWM mode | pwm frequency config |
---|---|---|---|---|---|
stm32 | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
Current sensing support
MCU | In-line | Low-side | High-side |
---|---|---|---|
stm32 (in general) | ✔️ | ❌ | ❌ |
stm32f1 family | ✔️ | ✔️ (one motor) | ❌ |
stm32f4 family | ✔️ | ✔️ (one motor) | ❌ |
stm32g4 family | ✔️ | ✔️ (one motor) | ❌ |
stm32l4 family | ✔️ | ✔️ (initial) | ❌ |
stm32 B_G431B_ESC1 | ❌ | ✔️ (one motor) | ❌ |
Stm32 devices have full compatibility using the SimpleFOClibrary and will work with all driver types.
Arduino SimpleFOClibrary will support most of the stm32 boards out there. Stm32 boards are very powerful and they are the most common choice for implementing motion control applications. Here are two most commonly used families of boards with this library.
Board | Name | Specifications | Link | Price |
---|---|---|---|---|
![]() | Nucleo-64 boards | (ex. Nucleo F446RE) - 3.3V logic - 20 PWMs - all pins interrupts - 180Mhz | Mouser | 15€ |
![]() | Bluepill | (ex. STM32F103C8) - 3.3V logic - 15 PWMs - all pins interrupts - 72Mhz | Ebay | 5€ |
There is a lot of stm32 based fully integrated boards for bldc motion control out there and SimpleFOClibrary will in most cases be able to support them.
Board | Name | Specifications | Link | Price |
---|---|---|---|---|
![]() | B-G431B-ESC1 | - STM32G431CB chip - On-board ST-LINK/V2-1 - 1 motor - 30V/40A - current sensing - fault protection | STM webiste Mouser | 16€ |
![]() | Storm32 BGC | - DRV8313 - 3 motors - 50x50mm - Stm32f103 | Ebay | 25€ |
Arduino IDE support package
The STM32 boards are supported using the STM32Duino package, it is completely open-source and can be installed directly through the Arduino Board Manager
. Please check the STM32Duino wiki to see a detailed guide how to install the package and all its functionalities.
VESC boards support
Here is a very cool video about the initial support for the VESC4.1 using the SimpleFOClibrary made by @owennewo: