Documentation Index
Fetch the complete documentation index at: https://mintlify.com/vedderb/bldc/llms.txt
Use this file to discover all available pages before exploring further.
Introduction
VESC firmware is an open source motor controller firmware developed by Benjamin Vedder. It runs on a wide range of STM32-based hardware targets and supports DC, BLDC, and FOC (Field-Oriented Control) motor control modes. The project lives at github.com/vedderb/bldc and is licensed under the GNU General Public License v3.0.What VESC solves
Controlling brushless motors well requires precise, real-time current and position sensing, configurable protection limits, and a reliable communication layer. VESC firmware provides all of this in a single, auditable codebase:- Field-Oriented Control (FOC) — smooth, efficient torque control with sensor or sensorless operation
- BLDC mode — traditional six-step commutation for simpler setups
- DC motor support — for brush motor applications
- CAN bus networking — chain multiple controllers together with a single CAN cable
- Extensive protection — over-current, over-voltage, over-temperature, and configurable hardware limits
- Custom UI support — embed QML interfaces directly into VESC Tool via
conf_general.h - Open hardware abstraction — a clean
hwconf/layer makes porting to new boards straightforward
Who it is for
Hobbyists
Build electric skateboards, scooters, and DIY e-bikes. Dozens of off-the-shelf boards are supported out of the box.
Engineers
Integrate VESC firmware into robotics, industrial actuators, and custom hardware using the documented hardware abstraction layer.
EV builders
High-voltage targets such as the Trampa 100/500 and Ubox 126V handle serious electric vehicle drivetrains.
Project structure
The repository is organized as follows:conf_general.h:
hw_<target>.h header and a hw_<target>.c source file. The build system discovers all targets automatically by scanning hwconf/ for hw_*.h files.
Where to go next
Quickstart
Clone the repo, install the ARM toolchain, build your first firmware image, and flash it to your controller.
Supported hardware
Browse the full list of supported boards grouped by manufacturer.
Motor control
Learn about FOC, BLDC, and DC control modes and how to tune them.
Communication
CAN bus, UART, USB, and the VESC serial protocol.
The VESC community is active on the VESC Project forums and on Discord. Both are good places to ask hardware-specific questions.
