cancel
Showing results for 
Search instead for 
Did you mean: 

Announcement – New Arduino Library: StepperHAL_STM32F4x1

Ennio64
Associate

Hi everyone! I'm excited to share the official release of StepperHAL_STM32F4x1, a C++ Hardware Abstraction Layer (HAL) library for controlling stepper motors on STM32F4x1 microcontrollers, fully compatible with the Arduino framework.

Key features:

  • Trapezoidal and S-curve motion profiles

  • Centralized pin and motor parameter configuration

  • Bilingual serial debug (ITA/ENG)

  • Supports A4988, DRV8825 drivers and NEMA17/NEMA23 motors

Available via Arduino Library Manager :link: GitHub repository: github.com/ennio64/StepperHAL_STM32F4x1-Library

The library is designed to simplify STM32-Arduino integration, with a strong focus on modularity, clear documentation, and fast onboarding. Every manual section is bilingual and includes practical examples.

Feedback, suggestions, and testing on other STM32 models are very welcome!

2 REPLIES 2
Andrew Neil
Super User

@Ennio64 wrote:

 fully compatible with the Arduino framework.


So probably more appropriate to share in stm32duino.com

Does it require the Arduino framework, or can it be used without?

A complex system that works is invariably found to have evolved from a simple system that worked.
A complex system designed from scratch never works and cannot be patched up to make it work.

Currently, it is structured to be installable via the Arduino Library Manager and uses the typical Arduino entry points (setup() and loop()). However, given its architecture, it could be adapted to work without Arduino by replacing Arduino-specific calls with STM32 HAL equivalents and refactoring the entry point and initialization. In this way, it could also be used in CubeIDE or STM32CubeMX projects. Everyone is free to modify it to suit their own needs.