VESC: A simple explanation of the open-source controller for electric racing machines

As soon as you become interested in electric racing scooters, electric skateboards, or DIY machines, one name keeps coming up: VESC. People talk about "switching to VESC," "tuning your VESC," and "VESC Tool." Almost all the documentation is in English and scattered across forums.

This guide explains, in French and without requiring any prior knowledge, what a VESC is, how it differs from a traditional controller, its limitations, and the steps involved in setting it up for the first time.

The essentials

  • VESC is a motor controller project with open-source software: its code is publicly available, and anyone can study it.
  • A compatible controller can be fully configured using free software, the VESC Tool, on a computer or phone.
  • It controls the motors using field-oriented control (FOC), measures the motor's characteristics itself, and records its data.
  • Its strength is also its weakness: everything is adjustable, including settings that, if incorrect, can damage the battery or the motor.

Where does the VESC come from?

VESC stands for "Vedder Electronic Speed Controller," named after its creator, Swedish engineer Benjamin Vedder. He launched it in the mid-2010s for electric skateboards, openly publishing the workings of his controller. The project has grown with a large community and has expanded to include scooters, bicycles, hydrofoil boards, robots, and go-karts.

The project comprises three elements:

  • The firmware, which is the program that runs inside the controller, is released under the open-source GPL v3 license;
  • VESC Tool, the free configuration software, is available on Windows, macOS, Linux, Android, and iOS;
  • Hardware: These are the electronic control boards capable of running this firmware, manufactured by various brands.

VESC is a registered trademark. Consequently, you will also find controllers marketed as "based on VESC" or "compatible with VESC Tool": these use the same open-source firmware, but with hardware specific to each manufacturer.

What the VESC changes compared to a traditional controller:

The original controller in a commercially available scooter is a closed box: some settings are accessible through the display, but the rest is locked by the manufacturer. A VESC controller unlocks everything.

Original controllerVESC Controller
SettingsHere are some settings accessible from the displayCurrents, voltages, temperatures, throttle, braking: everything
SoftwareNone, or the manufacturer's applicationVESC Tool, free of charge
Motor controlVaries depending on the modelVector control (FOC), with or without sensors
DataSpeed and battery level on the displayCurrents, temperatures, direct voltage, with recording capabilities
Getting StartedConnected and ready to rideRequires motor detection and configuration
Scooter WarrantyPreservedGenerally lost after modification

Vector control (FOC)

A VESC controller operates brushless motors using vector control, also known as FOC (Field-Oriented Control). The current varies continuously across the three phases of the motor, rather than switching between discrete levels. This results in a quieter motor, smoother acceleration, and more precise throttle control. Our controller guide explains this difference in more detail.

Motor detection

To properly control a motor, the controller needs to know its electrical characteristics: its resistance, its inductance, and the voltage it produces when rotating. With a VESC, you don't have to look for this information in a datasheet; the VESC Tool measures it. The motor first emits a whirring sound during the initial measurement, and then spins on its own for a few seconds during the second measurement. That's why we perform this "wheel-lift" detection.

The detection process also identifies the motor sensors (Hall sensors, encoder) when they are present. Without sensors, the VESC can deduce the motor's position based on the voltage it produces when the motor is rotating.

Current limits

A VESC (Vehicle ESC) defines several limits that must all be configured: the maximum current in the motor, the maximum current drawn from the battery, the braking current, and the current returned to the battery during braking. In addition to these, there are voltage thresholds (below which the battery is protected) and temperature thresholds (above which the power is reduced). These settings are what differentiate a fast and reliable machine from one that is prone to failure.

Data and diagnostics

The VESC Tool displays real-time data such as current, battery voltage, controller and motor temperatures, and keeps a record of recent errors. You can record a complete data log and review it later. To understand why a machine is cutting out, these recordings are more valuable than any guesswork.

Several controllers communicating with each other

On a dual-motor scooter, two VESC controllers can be connected via a communication cable. One controller receives the throttle signal and relays the commands to the other, and the VESC Tool allows you to configure both controllers from a single connection.

The limitations of the VESC

  • It's important to know how to adjust it. A current value that is too high may not be immediately obvious: it can damage the battery, cause the motor to overheat, and ultimately lead to a breakdown.
  • The hardware varies from one manufacturer to another. The firmware is the same, but the quality of the components, the cooling system, and the soldering are not. As with any controller, a stated current should be read with caution: is it a peak current for a few seconds, or a sustained current?
  • The original display and controls may not always be compatible. The displays on commercially available scooters typically use the language of their original controller; a compatible display or an adapter is required.
  • The scooter's manufacturer's warranty is generally void after a controller change.

Workshop tip

Never copy settings from another machine found on a forum. The correct current limits depend on your battery, your motor, and your cooling system, and only on those factors. Start with conservative values, ride, monitor the temperatures, and then increase the settings in small increments.

Getting Started with a VESC: The Steps

Here's the order for an initial setup. Each step deserves its own detailed guide; this provides an overview.

  1. Check the hardware. The controller must be able to handle the battery's full charge voltage with some margin, and its current ratings must match what the battery and motor can handle.
  2. Install the VESC Tool on a computer or phone, and connect the controller via USB or Bluetooth (using a suitable module).
  3. Update the firmware if the VESC Tool offers this option, before making any adjustments.
  4. **Start the motor detection**, with the wheel raised, ensuring that nothing is touching the wheel.
  5. `Setting Limits: Motor and battery currents, cut-off voltages, temperatures.`
  6. Adjust the throttle and brake using the VESC Tool assistant, which learns their travel range.
  7. **Perform an initial test by lifting the front wheel,** then at low speed on a clear surface, while monitoring the temperatures.

And what about the law?

A VESC is neither inherently prohibited nor authorized; it's simply a controller. However, in France, an electric scooter that operates on public roads must be factory-limited to a speed of 25 km/h. Performance settings are intended for use on closed circuits and private property.

Do you prefer a ready-to-ride system?

Not everyone wants to spend evenings tweaking settings in a software program. That's the idea behind our RageLink controllers: designed and manufactured in France in our workshops, they can be configured, updated, and locked from an app on your phone, with a display and telemetry that use the same language. They are not yet for sale; the waiting list is open.

Frequently Asked Questions

What does VESC stand for?

"Vedder Electronic Speed Controller," which refers to the electronic speed controller designed by Benjamin Vedder, the Swedish engineer who created the project.

Is the VESC Tool free to use?

Yes. VESC Tool is a free and open-source software available on Windows, macOS, Linux, Android, and iOS.

Can a VESC be installed on any electric scooter?

Technically, on most electric scooters with brushless motors, yes, provided that the controller accepts the battery voltage and is properly cooled. You then need to adapt the connections for the throttle, brake, and display, and then configure everything.

Does a VESC make an electric scooter faster?

It's not enough on its own. It allows you to get the most out of the battery and motor, and to precisely adjust the acceleration and braking. The speed and power remain limited by the battery, the motor, and the voltage.

What happens if a VESC is improperly configured?

Excessive currents can damage the battery or cause it to shut down, overheat the motor, and potentially damage the controller itself. Conversely, excessively low limits can result in a sluggish performance. Therefore, it's important to start with conservative values and monitor the temperatures.