bgkatz/motorcontrol

motor controller firmware

What it solves

This project provides the firmware needed to run a specific integrated 3-phase motor controller. It is written for the hardware linked in the README, but the design deliberately keeps the code easy to adapt to other controllers, so you can reuse it as a starting point for your own motor-control work.

How it works

The firmware is built with the GNU Arm Embedded Toolchain and make. You can also build it using ST's Cube IDE. Most hardware-specific settings are kept in one place, the hw_config.h file, so you can adjust the configuration without digging through the rest of the code.

Who it’s for

This is for developers who are using that particular motor controller and want a working firmware base. It’s also for anyone planning to port motor-control code to a similar board, since the project was written with portability in mind.

Highlights

  • Builds from the command line with make or from ST’s Cube IDE
  • Outputs firmware files (build/motorcontrol.elf, .bin, .hex)
  • Debug build available (make DEBUG=1)
  • Flashing supported over ST-Link
  • Hardware configuration centralised in hw_config.h
  • Intended to be easy to port to other motor controllers

Related

  • Project
  • Project
  • Project
  • Project