Choosing a Motor Controller

This guide covers how to choose the right controller for your application without problems or failure. To achieve this, please read and listen to our experienced engineers who design the VESC controllers and have written this guide.

The guide has been split into two sections:

  1. Designing an Electrical System from ScratchYou are unsure which battery, motor and controller to choose.
  2. Which VESC Motor Controller should I buy?You have a motor and battery but do not know which controller to choose.

Designing an Electrical System from Scratch

The first questions which need to be answered are:

  • What RPM range do you require?
  • How much power is required?

Once you have set your targets, you can start choosing battery, motor and controller. Note that within some limitations it’s possible to get the same result from different combinations of these three components.

Here are some guidelines to follow:

Generally speaking, a higher battery voltage will spin a certain motor at a higher RPM. But choosing a different motor can achieve that same RPM at a lower battery voltage. This value is commonly referred to as “Motor kV”. The kV or RPM range should be displayed in the datasheet or technical specifications of the motor. If the RPM is not displayed, the following equation can be used to convert from kV to RPM.

kV*Voltage = RPM

The controllers have a maximum battery voltage which they can handle safely. We offer a range of controllers across different voltage levels, so choose a battery that can safely operate with one of our controllers. Preferably with some margin as well.

Check the maximum voltage your battery can be charged to. For example a 28S Li-Ion will typically be charged to 28*4.2V = 117.6V.

You might think a 120V controller would be suitable, but that leaves a very slim margin to overvoltage. Here we would recommend using our 150V controller instead.

The next step is to choose the size of the controller in regards to how much current/power you need.

Note that our controllers (and most others as well) are specified for a maximum current – phase current, not battery current!
So what is the relationship between phase current and battery current? 

Battery current is always lower than phase current. Phase current is what causes the most losses and thus heating to the motor controller and motor. The heat generated is proportional to the square of the phase current. Depending on your motor and your application there can be a big or small difference between the two current types. Phase current is proportional to the motor torque, while battery current is proportional to the motor power. Therefore a lot of heat can be generated without a lot of power if the components in the system have not been chosen correctly.  The relationship between torque and power is expressed using the following equation:

RPM*Torque = Power

Power can also be expressed using the following equation:

Voltage*Current = Power

If the maximum voltage of the battery is known and the power required for your system, by rearranging the equation above the amount of phase current is required can be calculated.

Power / Voltage = Current

Now that the maximum phase current and battery voltage have been calculated, a decision can be made as to which controller meets these specifications. 

Which VESC Motor Controller Should I buy?

You only need to check:

  1. Battery voltage compatibility

  2. Motor current requirements

Before choosing, ask yourself:

  • Do I need a dual motor controller? (Duet or Duet XS can drive two motors at once)
  • Do I require extra features? (Wi-Fi, Bluetooth, onboard storage, 12V outputs, waterproofing)

1. Check Battery Voltage First

The motor controller must support your maximum battery voltage.
All controllers have a maximum voltage they can handle safely.
We offer a range of controllers across different voltage levels, so choose a controller that matches the maximum voltage of your battery.

Lithium cells for example are 4.2 V max per cell when fully charged.

Battery voltage = Cells in series × 4.2 V

  • High acceleration or regenerative braking can briefly spike voltage above your pack voltage.

  • Always choose a controller with headroom above your battery’s fully charged voltage to handle these spikes safely.

  • Never run at the controller’s absolute voltage limit

Battery to Controller Voltage Selector

Controller Voltage RatingMax Battery VoltageMax Cells in Series (Li-Ion)
60V54.6V13S
100V92.4V22S
120V109.2V26S
150V134.4V32S

2. Motor Current Requirements

Our controllers are rated for continuous and burst phase current.

Your motor datasheet should specify the maximum current it can handle.

Make sure the controller’s continuous and burst current ratings are within your motor’s limits, with some headroom for safety.

3. Dual Motor Controllers

The Duet and Duet XS are dual motor controllers, meaning one controller can drive two motors simultaneously.

Benefits of a dual motor controller:

  • Simpler wiring – only one controller to manage two motors

  • Synchronized control – motors work together seamlessly

  • Space and weight savings – no need for two separate controllers

  • Cost efficiency – often cheaper than buying two controllers

Typical applications:

  • Dual-motor E-skates or scooters

  • Cargo bikes with two hub motors

  • Any vehicle with front and rear motors requiring coordinated control

4. Additional Features & VESC Nanolog

Some VESC controllers come with built-in features:

  • Wi-Fi / Bluetooth – monitor performance and configure your VESC remotely

  • Onboard storage – logs motor and battery data for analysis

  • 12 V outputs – power lights, accessories, or sensors directly from your controller

  • Potting / waterproofing – improves durability in wet or off-road environments

No onboard storage or Wi-Fi?

  • Add the VESC Nanolog module as a separate plug-and-play module.

  • This gives logging, Wi-Fi connectivity, and remote configuration to controllers that lack these features.

  • Perfect for upgrading older controllers or keeping costs lower while still having smart features available.

5. Motor Controller Comparison

Use the comparison table below or the filters while browsing motor controllers to find the controller which is suitable. 

ProductInput Voltage Max (V)Rated Battery Series (Li-Ion)Continuous Phase Current (A)Burst Phase Current (A)Dual Motor ControllerMax Power (kW)12V Output (A)5V Output (A)ESP32 (Wi-Fi & Bluetooth)Integrated StorageIMUCANBUSUSBADC InputsWeatherproofLength (mm)Width (mm)Height (mm)Weight (g)
VESC Minim1004–22S5065-3-2--YesYesUSB-C3-724323115
VESC Duet XS 60V606-13S80100Yes50.51--YesYesUSB-C3-875418163
VESC Duet XS 100V1006–22S5065Yes60.51--YesYesUSB-C3-875418163
VESC Duet1006–22S140200Yes80.81Yes4GBYesYesUSB-C3-1347024418
VESC Classic1004–22S160200-100.51--YesYesUSB-C2-1004819153
VESC Classic+1004–22S300400-200.51--YesYesUSB-C2-1077219306
VESC Pronto1008–22S150200-1082Yes4GBYesYesUSB-C (via dongle)5Potted1214727365
VESC Maxim 120V1208–26S400600-3082Yes4GBYesYesUSB-C (via dongle)5Potted12611737713
VESC Maxim 150V1508–32S250400-3082Yes4GBYesYesUSB-C (via dongle)5Potted12611737713
VESC Maxim+ 120V1206–26S6601000-5082Yes4GBYesYesUSB-C (via dongle)5Potted183132371120
VESC Maxim+ 150V1506–32S420660-5082Yes4GBYesYesUSB-C (via dongle)5Potted183132371120