Link

Roadmap

For more info about the features of library releases visit the github releases . This page is not really rigorously maintained and can be outdated from time to time.

Motion Control and FOC algorithm

  • Motor control: Low-side current sensing - No.1
  • Motor control: Inline current sensing with DMA - No.2
  • Motor control: High-side current sensing
  • Bugfix: Floating point angle overflow
  • Motor control: Inline current sensing
  • Motor control: Support for stepper motors
  • Motor control: Support for Hall sensor commutation
  • Motor control: Support for fully open-loop operation (no sensor)
  • Add support for acceleration ramping
  • Velocity Low pass filter
  • Timer interrupt execution rather than in the loop(): ❌ No real performance improvement
  • Sine wave lookup table implementation
  • Implement Space Vector Modulation method : Pure SVM
  • Implement Space Vector Modulation method : PWM SVM

MCU support

  • ESP8266 - initial
  • Portenta H7 - initial
  • Arduino leonardo
  • Raspberry pi Pico - PR #78
  • SAM - Arduino DUE
  • SAMD21/51
  • Teensy support
  • ESP32 support
  • STM32 Nucleo support
  • STM32 BLuepill support
  • Hardware specific code separation : easier porting in between devices hardware_utils.cpp/.h

Driver support

  • Driver support: Disable the pahses in 6PWM mode
  • Driver support: Implement support for MOSFET control low and high pairs
  • Driver support: DRV8302 borads

Sensor support

  • IMU as position sensor
  • Back-EMF support
  • Senosrless-FOC support
  • Make support for magnetic encoder SSI
  • Make support for magnetic encoder PWM
  • Make support for magnetic encoder Analog
  • Make support for magnetic encoder I2C
  • Make support for magnetic encoder ABI
  • Make support for magnetic encoder SPI
  • Hall sensor support
  • Encoder index proper implementation

User interaction

  • Commander make a minimal version for lower memory devices
  • Make the target setting interface for instantaneous position, velocity, torque setting (ex. q 10 20 1)
  • Implement motor commands
  • Support monitoring

Usability

  • a lot more docs and examples
  • SimpleFOClibrary getting started page
  • SimpleFOCShield getting started page
  • Make the library accessible in the Arduino Library Manager
  • Make minimal version of the arduino code - all in one arduino file
  • Documentation separation from README
  • Proper introduction of the Arduino SimpleFOCShield

Videos

  • VIDEO: Publish a video tutorial for using the library and the samples
  • VIDEO: Coding setup and procedure video
  • VIDEO: Two motors running on HMBGC example
  • VIDEO: Initial video with simple demonstration