https://github.com/pcrnjak/stepfoc-stepper-controller
Brings true FOC control to stepper motors making them into industrial level servos!
https://github.com/pcrnjak/stepfoc-stepper-controller
driver foc motor robotics stepper
Last synced: about 1 month ago
JSON representation
Brings true FOC control to stepper motors making them into industrial level servos!
- Host: GitHub
- URL: https://github.com/pcrnjak/stepfoc-stepper-controller
- Owner: PCrnjak
- License: gpl-3.0
- Created: 2025-09-23T19:21:17.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2026-04-10T08:38:38.000Z (about 2 months ago)
- Last Synced: 2026-04-26T01:32:05.651Z (about 1 month ago)
- Topics: driver, foc, motor, robotics, stepper
- Language: C++
- Homepage:
- Size: 13.5 MB
- Stars: 17
- Watchers: 0
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# STEPFOC Stepper controller
[](https://opensource.org/license/gpl-3-0/)  

## 📖 Project Overview
**STEPFOC** is a FOC based stepper motor controller designed to deliver affordable, high-performance hardware paired with powerful open-source software. Its mission is to transform low-cost stepper motors into high-performance robotic servos, enabling advanced robotics applications without the high price tag.
The controller features a 14-bit magnetic encoder, inline current sensing, CAN and UART interfaces, and supports position, velocity, torque, and impedance control modes.
> [!NOTE]
> Optimized for NEMA17 format but it can also be attached to nema 23 and 14 steppers!
> [!IMPORTANT]
> **STEPFOC stepper driver is built on the same hardware and software foundation as the Spectral Micro BLDC driver. As a result, some references or images in this documentation may still show the Spectral Micro, since both drivers share about 99% of their features. They also use the same CAN and UART command sets, with only minor differences in UART-based calibration and setup procedures.**
## Where to buy?
You can buy the STEPFOC stepper controller here:
https://source-robotics.com/products/stepfoc-stepper-controller
## 💾Firmware
STEPFOC firmware is located [here](https://github.com/PCrnjak/STEPFOC-stepper-controller/tree/main/STEPFOC%20firmware). To install it follow [this guide!](https://source-robotics.github.io/STEPFOC-docs/flashing_firmware/)
## 📚Documentation:
- [Motor hardware setup guide](https://youtu.be/60UMc95H8iE)
- [Official website](https://source-robotics.com/products/spectral-micro-bldc-controller)
- [DOCS](https://source-robotics.github.io/STEPFOC-docs/) Offers great starting guides with project examples + code
### API and control
- [GUI software ](https://github.com/PCrnjak/Spectral-motor-GUI)
- [Python API & Examples](https://github.com/PCrnjak/Spectral-BLDC-Python/tree/main)
- [Source Robotics toolbox](https://github.com/PCrnjak/Source-Robotics-Toolbox/tree/main)
## 🌐 More about STEPFOC drivers
| YouTube | Instagram | Twitter | LinkedIn |
|--------|-----------|---------|----------|
| [](https://www.youtube.com/@source-robotics) | [](https://www.instagram.com/source_robotics/) | [](https://twitter.com/SourceRobotics) | [](https://www.linkedin.com/company/source-robotics) |
| Discord | Forum | Hackaday | Blog |
|--------|-------|------| ------|
| [](https://discord.com/invite/prjUvjmGpZ) | [](https://discourse.source-robotics.com/) | [](https://hackaday.io/project/191860-parol6-desktop-robotic-arm) | [](https://source-robotics.com/blogs/blog)
## ⚠️ Safety, Liability & Disclaimer
1. The software and hardware are still in development and may contain bugs, errors, or incomplete features.
2. Users are encouraged to use this software and hardware responsibly and at their own risk.
## 💸Support us
The majority of this project is open source and freely available to everyone. Your assistance, whether through donations or advice, is highly valued. Thank you!
[](https://paypal.me/PCrnjak?locale.x=en_US)
[](https://www.patreon.com/PCrnjak)
## 🛡️ Licensing
Project is under GPLv3 Licence