uploaded 3 months ago

Arduino FOC for BLDC and Stepper motors (SimpleFOC)


# Espressif Arduino-FOC Fork

This is a fork of upstream [Arduino-FOC]( with integration into ESP-IDF build system.

This fork repository is wrapped as an ESP-IDF component, which offers the algorithm implementation of FOC (Field Oriented Control) for BLDC and stepper motors.

To drive the motors, you need to use this component together with [esp_simplefoc](, which offers the hardware drivers for motors.

## Supported SoCs

The driver supports all ESP chips with `LEDC` or `MCPWM` peripherals, please refer to [esp_simplefoc]( for details.

## How to use

### Use this component together with [esp_simplefoc](

Just add ``idf_component.yml`` to your main component with the following content::

## IDF Component Manager Manifest File
  esp_simplefoc: "*"

Or simply run:

``` add-dependency "esp_simplefoc"

## API Documentation

1. Library introduction can be found on [README]( from the upstream Arduino-FOC.
2. Full API code documentation as well as example projects and step by step guides can be found on [SimpleFOC Docs Website](


# ChangeLog

## v2.3.0~3 - 2023-11-15

* Support all esp chips by default (except esp8266)

## v2.3.0~2 - 2023-10-18

* Support ESP32-C3

## v2.3.0~1 - 2023-07-20

* Replace Arduino with esp_platform implementations

## v2.3.0 - 2023-07-11

* Based on [Arduino-FOC v2.3.0](
* First release in esp component registry

Supports all targets

License: MIT

To add this component to your project, run: add-dependency "espressif/arduino-foc^2.3.0~3"

or download archive


  • ESP-IDF >=4.4
  • Stats

    • Downloaded in total
      Downloaded in total 768 times
    • Downloaded this version
      This version: 402 times


    espressif/arduino-foc version: 2.3.0~3 |