What is VESC (Complete Guide)

Oskar Fällman

Updated on:

What is VESC

VESC stands for Vedder Electronic Speed Controller and is an open-source ESC (Electric Speed Controller) that is used to control a multitude of devices like Onewheel´s, electric-skateboards. In simplified terms, it’s the brain of the device that controls the speed (current) of the motor or how hard it should break, and regenerate the energy. Most modern ESC and VESCs have added features like Bluetooth for connection, monitoring, and other features.

An ESC is an electric circuit that controls and regulates the speed of an electric motor.

The History of the VESC (Vedder-ESC)

Benjamin Vedder is the creator of the VESC, there by the name Vedder-ESC. Benjamin decided to make his one ESC for his electric skateboard and the project was first published to the public in 2015.

This might sound a bit ambitions, but my goal is to make the best ESC available. I really enjoy sharing knowledge, so I want to keep all the hardware and software open.

Benjamin Vedder
Early version of VESC front side
An early version of VESC front side [img: Vedder.se]

This was the start of what later would become the VESC. As both the hardware and software were released as open-source it made it possible for anyone to download the code and build their own board. Open source helps with the development, increasing the already feature-rich platform. 

From the start the VESC system had some great HW capabilities and features, making it one of the most popular platforms in the DIY electric-skateboard community.

Later he partnered up with Trampa Boards Ltd. Vedder registered the VESC trademark, with the result that they are the only ones who are allowed to use the trademark “VESC” in their product names.

Traditionally, VESC was often the most expensive part of a build, but the price has come down a lot more recently, especially with the popularity of ‘Dual VESC.’ Now a Dual VESC can cost somewhere from $150 to $300. Here is a list of a couple of VESC Options and alternatives.

Not only for electric-skateboarding

Because of the adoption and the community the VESC platform is not only for electric skateboarding. It has become a flexible, efficient, and reliable platform that can be the core of a broad range of applications. A VESC controller can drive everything from miniature quadcopters requiring as little as tens of watts all the way to electric passenger planes drawing hundreds of kilowatts. This makes it perfect for anything in between like building your own Onewheel VESC. There are actually Onewheel competitors leveraging the possibilities of VESC as the brain of their device.

VESC motor controllers are used in everything from a breadth of different devices including quadcopters, robots, planes, Onewheel’s, camera gimbals, e-bikes, electric skateboards, RC equipment, and more.

VESC Controller – Advanced Features in a Simple Package

The goal of the VESC platform is to make an ecosystem that is easy to use and set up. The system does have a wizard that will help with the automated detection of critical parameters of your motor and system. Still, it has all the capabilities for you as a developer to dig into the parameters and look under the hood to get a better understanding. 

These are features that normally would be under a paywall or premium product. As the VESC is open source it’s free to use, even if they do encourage you to donate to the project. 

Early version of VESC back side
An early version of VESC back side [img: Vedder.se]

Electronic Speed Controller (ESC)

The Electronic Speed Controller (ESC) is the brain of the device if it’s an electric skateboard, Onewheel, or quadcopter. In short, the controller tells the motor how hard to push or how strong to brake. This is done by controlling how much electricity the motor is receiving, amps. The voltage is setting the maximum speed the specific motor can rotate. The power (P) of the system is a combination of both the Voltage (V) and Amperage (A). 

P = V × A

As the Voltage will be set by the battery to increase the power when you are going uphill, the controller will need to increase the number of amps sent to the motor. During a decline the reverse will be happening, the motor will generate electricity pushing amps into the battery. A good ESC will enable you to set how high both the discharge and charging limits can be to ensure that the system can be operated safely. Setting the maximum power that the motor can use will prevent the motor from burning out too early. A common issue with cheaper motors or controllers.

Price

The price of an ESC varies depending on what you are after, from $100 and upwards. It´s a good idea to invest in a good ESC, like a powerful VESC. A more powerful controller will allow a higher ampere and allow for a bigger battery, voltage, to be connected and passed through it to the motor without burning. A cheaper unit will limit you in either the amperage or voltage that can be used. It’s important to read the specification to understand the supply voltage and current it supports.

The more feature reach will usually also have better controls for acceleration/deacceleration and added features like Bluetooth, remote information, and upgrades. 

Single or dual system

An ESC can either be a single or dual controller. In short, it stands for how many motors the system can control. Nowadays if you plan to build an electric skateboard or scooter it’s recommended to get a dual system as it´s easier to setup and also cheaper. There is no need to buy and sync to separate ESC.

VESC vs ESC

A VESC is a more advanced ESC. The controller allows you to fine-tune the performance of your device from either the VESC Tool or if you have an Android phone the VESC App from the Play Store. The programs work with a Bluetooth connection allowing you to see all the real-time data from the VESC controller. Real-time data like speed, RPM, current consumption, duty cycle,  battery capacity and state of charge, Wh consumption and WH regen, estimated range, real-time data graph plotting, etc.

The Bluetooth module enables wireless firmware updates, making updating the controller and tuning it a lot easier compare to simpler ESC. 

An advanced ESC like the 75/300 VESC (a VESC 6 Controller) has ports, outputs, and features:

  • Sensor port for motor sensors (ABI, HALL, magnetic precision encoders)
  • CAN Port for CAN communication with other devices and VESC arrays.
  • PPM port to connect PPM transceivers
  • COMM port for various kinds of other communication methods like I2C, ADC, and Uart. You can use your Arduino or RaspberryPi to control the VESC!
  • SWD port to get direct access to the Chipset. Diagnostics, debugging, and real-time data.
  • SWD port for internal NRF upgrade (landing pad is part of the PCB)
  • AUX port to supply switchable 12V to external devices.
  • USB link to your computer.
  • Bluetooth
  • Accurate current and voltage measurement on all motor phases (3x phase shunts)
  • Regenerative braking
  • Sensored or sensorless operation + hybrid mode
  • Configurable RPM-, current-, voltage- and power limits
  • Input source: PPM, Analog, NRF Nyko Kama Nunchuck
  • Communication ports: USB, CAN, UART
  • Throttle curve and ramping for all input sources
  • Seamless 4-quadrant operation
  • Motor revolution, amp hour, watt-hour counting
  • Real-time data analysis and readout via communication ports
  • Adjustable protection against:
  • Low & High input voltage
  • High motor current
  • High input current
  • High regenerative braking current (separate limits for the motor and the input)
  • High RPM (separate limits for each direction).
  • Over tempertaure (MOSFET and motor)

Why should you choose VESC?

The advantage of the VESC is the configurability that allows it to be programmed for your specific application. By customizing the acceleration and braking curves of the device you can get, for example, an electric skateboard, to behave exactly like you want when acceleration or braking. This is done by adjusting the current output to the motor or input to the battery while breaking and changing the torque of the board.

The system will also help you in the process to protect your device from scenarios like overcurrent that could damage your ESC, motor, or battery. This is done by allowing your to configure parameters like limiting the motor discharge and charging rate, min/max battery voltage, and component temperature.

How to use VESC-TooL

The first thing that you need to do is download the VESC Tool from the official VESC homepage. It’s available for most platforms like Linux, Windows, and Android.

  1. Download the VESC Tool. There is both a donate and free option available.
    VESC Tool is licensed under the GPL V3 License.
  2. Download the source code from GitHub.
  3. Connect the VESC to your platform and set the necessary settings and parameters. There is a Wizard for beginners that guide you step by step to do motor auto-detection.
VESC Tool
VESC® Tool 6.00

List of important parameters

Setting the limiting parameters of the VESC controller is one of the first things anyone should do when starting a project. Here are some of the most important to protect the motor, battery and ESC.

  • Motor Current
  • Battery Voltage Cutoff Start
  • Battery Voltage Cutoff End
  • Battery Current Max Regen
  • Temperature

Motor Current Max

With the Motor Current Max, it’s possible to limit the amount of amps that are allowed to go from the battery to the motor. If the motor is getting a too high current there is a risk of overheating and burning the coil windings inside. Therefore is it important to configure this setting to ensure that the motor is not running over its limits and gets damaged.

Battery Voltage Cutoff Start and End

Setting the minimum and maximum input voltages for the battery is needed to protect it from over and under-charge scenarios. 

Battery Current Max Regen

Setting the maximum value of the regenerative braking ensures that the battery will not receive too much amperage while the motor is braking. Charging the battery too fast could damage the cell, The charge rate depends on the type of cells and how many you have in parallel. Look for the C rating.

Temperature

Setting the maximum temperature of the ESC can help to prevent the controller from overheating. If there is a temperature probe in the motor then you also have the possibility to configure the motor temperature cutoff limit. A too-high temperature will risk burning or damaging the motor.

VESC Trademark

VESC was registered by Benjamin Vedder in 2017. It surrounds a variety of goods and services in the motion control niche of applications.

IC 009. US 021 023 026 036 038

Goods and ServicesPower and motion Controllers, in particular electric motor and generator controllers, flight controllers for manned and unmanned aerial vehicles, controllers for robotic motion, self-balancing controllers and electronic speed controllers; Power and motion controller for electronic door openers; electric motor controllers for elevators, escalators and conveyors; radio and optical signal receivers, transmitters and transceiver for device communication, control and data transfer; navigation and positioning devices, in particular global navigation satellite system (GNSS) receivers, transmitters, transceiver and navigation and positioning devices; Gimbals, namely, stabilizers particularly for camera stabilization and stabilization of scientific- and measurement equipment, and stabilization of projection equipment and weapon equipment; GPS devices for navigation and control devices, namely, for stabilization, in particular autonomous navigation and flight stabilization; battery management systems, comprising field-effect transistors, electronic circuits, micro controllers, micro processors and heat radiators for monitoring and regulating the charging and discharging process of a battery assembly; electric power converter; power inverter; software, in particular for the above mentioned goods, namely, software for the operation of power and motion controllers for electric motors, generators and actuators; software for the operation of global navigation satellite system (GNSS) based navigation devices and software for the operation of autonomous navigation and stabilization devices; software for the operation of battery management systems, regulating the charging and discharging process of battery assemblies; software for the operation of power converters and inverters; software for the operation of door openers, elevators, escalators and conveyors; Software for the operation of robotic devices, capable of carrying out a complex series of actions automatically; software for the operation of stabilizers for equipment, such as cameras, measurement systems, projection systems and weapon systems
IC 009. US 021 023 026 036 038

Disclaimer: FallmanTech is not associated with either VESC® or Benjamin Vedder. VESC® is a registered trademark by Benjamin Vedder.

About Oskar Fällman

Oskar Fällman, founder of FallmanTech, is a seasoned Onewheel rider and a visionary system engineer with a master's in Industrial Management and Engineering from Lunds University. With thousands of miles under his belt, Oskar combines technical expertise with a passion for technology and innovation. As a leader in the Onewheel community, he not only rides Onewheel's but also prioritizes safety, new innovations and the growth of the sport. As a system engineer he also holds a multiple patents and innovations. LinkedIn, Academia profile, Contact, Twitter, Patents.