Many new users may find the VESC confusing or not understand what they are doing. I will attempt to break this barrier down, and congregate all the VESC information across this forum here.

Background Information

First off, you need to understand the VESC is a speed controller, which is sorta like the brain of your electric skateboard. It’s the middle man, between your input through a controller (also know as transmitter/reciever system) and your motors.

You should understand some basic terms too. I will give you an analogy so you can try to visualize it.

Voltage - Think of it like how big a muscle is Amps - Think of it as how much energy you can send to that muscle

  • You can have huge muscles, so moving something with that muscle takes less energy than someone who has smaller muscles (i.e. high voltage, low amps) (a good example of this is running at 10s and only 15 amps per motor)


  • You can have small muscles, which means to do the same as the big muscles, you need more energy. (low voltage, high amps) (a good example is 6s and 120 amps per motor)

Now that you have some background about voltage and amps, lets get to the VESC.

About the VESC

This speed controller has the ability to do many things a normal RC speed controller can not. One of those is limiting the amount of amps that come from your battery to your motors. An easy way to burn up a motor is by sending it more amps than it can handle for too long (often while riding up a hill). This means you should never burn up a motor with a vesc (unless you set this limit too high). There’s also many other protections that can be set through limits, such as the max temperature you want the vesc to get to (so you can’t burn up the speed controller), min and max input voltage (so you can’t pull the voltage of your battery under a safe limit, which would brick your battery), and max regenerative break amps (protects battery from having too many amps sent back in to it). So you can protect your entire electronic system from making some of the most common user mistakes by setting these limits correctly.

Variations of VESCs

They’re are many different VESC’s on the market, and none of which are equal. Few actually use vedders BOM to the tee anymore, creating their own mods to increase stability. So buying a VESC 4.12 from one vendor is not the same VESC 4.12 of another vendor.

On top of that, some vendors, like Ollin Board Co (i.e. @chaka) offer direct FETs, which are thiner and deal with heat a little better.

Enertion took it’s own route with the VESC-X (now named the FOCBOX, keep reading for more info), which seems to be based on the VESC 5 design. Again, direct FETs are used, and the max amp rating is much higher.

The VESC 5 was scapped for the VESC 6, which is not yet released, though prototypes exist showing it’s increased max continuous amps and increased FOC stability.

The VESC 4.12 can do 27 amps continuous before going nuclear. The VESC 6 can do 50 amps continuous before going nuclear.

The VESC-X is unknown at this time, though it’s claimed to have a higher amp rating than the VESC 4.12.

The VESC 6 may be a good option for really powerful single drive or dual drive boards, but is an over kill for most. At this point, it looks to be better suited for electric bikes than electric skateboards, especially given the projected price tag.

Difference between VESC-X (i.e. FOCBOX) and VESC 4.12 (or lower VESC versions)

The VESC-X runs on a different tool than other VESCs. As a result, you should download those from enertions site.

Recent changes to the VESC

Vedder recently, with the help of Trampa, trademarked the VESC. This means only Trampa can sell the VESC under the name VESC anymore. Thus, companies are being forced to changed the name of their VESC based speed controllers.

  • The VESC-X is now named the FOCBOX
  • For, the VESC 4.12 is now called the ESK8 Controller
  • For Torqueboards, i.e, diyelectric, the VESC 4.12 is called the Torque ESC

Downloading BLDC tool

Now, the first thing you should understand is when you get your vesc, you need to find the correct BLDC tool. There are mac/linux/windows versions, but you need the bldc tool with the same firmware as the one pre installed on your vesc. If you are unsure which firmware your vesc came pre installed with, ask the person you bought it from, or download any version, and when you attempt to connect your vesc to the bldc tool, you will get an error which will tell you which version of firmware you have. For instructions on connecting your vesc, read below.

You can update or downgrade the firmware to match the version of bldc tool you have, but this should be a last option solution if you really can’t find the right tool. You can fry the drv chip on your vesc by doing a bad firmware update, which is very easy to mess up, and would make your vesc an expensive paper weight.

  • To download the BLDC too for Mac or Windowsl, Please wait. There is no link at this time.
  • To download the BLDC tool for Ubuntu, Click Here and follow the instructions in the README file.
  • For information about upgrading firmware, Click Here.

Now that you have the correct BLDC tool, you can connect your VESC to your usb type b cable to your vesc, and the other end to your computer. Now is a good time to talk about powering the VESC for configuration. Both Vedder (who is the guy that engineered this speed controller) and onloop (a prominent seller of the vesc) recommend using a lab rated regulated power supply to power the VESC during configuration. I use one I bought on amazon for around $45 USD. This however, may not be necessary. Chaka, another prominent seller of the VESC, suggests you only need to do this when powering up for the first time, and his have been powered before shipping, thus with his, this is not necessary. You can read more about Chaka’s Low power recommendations Here. It’s most important to use a regulated power supply if the VESC has never been powered up before. This is not an issue for those buying VESCs from any of the prominent VESC sellers like Torque Borads, Enertion, Axle,, or Chaka.

Connecting through BLDC tool

Now that you have it powered and physically connected, its time to make the software connection through the BLDC tool. Select the right port (not the bluetooth one). You should have only 2 options, the bluetooth and another. Click connect. And in the bottom right corner, you should see a green status with your current firmware version. This is the time that you will see an error message if the firmware on your vesc and the version of BLDC tool you have do not match. You can solve this mismatch by downloading an older version of BLDC (the one that matches your firmware version), or flashing the firmware (first option is much safer), as linked above.

Configuring your VESC

Now, onto the configuring itself. Here is an article explaining what you need to modify to get your vesc running.

To see how you make these change, Jaccobly has done a fabulous video found Here.

For more specific segments

  • Here’s how to setup the receiver and brakes
  • Here’s more info about setting up the Regenative breaks
  • Here’s how to setup the Nyko Kama wii remote
  • Here’s how to setup dual motors through the canbus port
  • Here’s an explanation about the difference between Duty Cycle and Current Control
  • Here’s an explanation of how to do motor detection
  • Here’s information about limiting the voltage of your battery

Side Note

Please note, if you are configuring on a lab rate Regulated power supply, you will have issues controlling the motor after configuring the receiver and doing motor detection. Your motor will nudge a tad bit, if at all, and stop immediately. This is because the power supply is not giving the vesc enough amps. To get around this, when you think your settings are all good, test it using your battery.


Now that you have reach this point, you should now have working settings and allow you to run your motor through your controller. In theory, this can be your ending point, there is however, one last feature of the vesc that separates the vesc from other speed controllers, and this is a mode called FOC, or Field Orientated Control.

Instead of running in BLDC mode, you can run in FOC mode. For more information about what FOC mode is, Read This!

For a comparision of BLDC and FOC, Read This!

To configure FOC mode, Vedder himself has put together a youtube video, which is linked from This Thread.

Watt Control Mode

A member of the community @Ackmaniac modified both the BLDC-tool and the VESC firmware to add a mode called watt control. Basically, instead of adjust amps like control mode does, it controls watts, which takes into consideration voltage. As a result, you can decrease the negative impact on performance of sag.

To read more about it and downloads, read his thread Here.


Now, you should hopefully have a working and correctly configured electrical system. If you don’t, read this article. A lot of useful debugging information is there.

If anything in this guide seems misleading or inaccurate, or you feel points are missing, please post so below. This is th information I have gathered from my experience of using the VESC. I’m am not an electrical engineer, nor have I taken General Physics II with applied calculus, which focuses mostly on the physics behind electricity. So I have not the best person to ask technical questions to.

Thank you for reading and I hope this will help!


@onloop Could you pin this topic to the top of the forum? or at least for newer users. This connects the dots of information on this forum about the vesc together, and should eliminate most peoples questions about the vesc.


This is great! And for me the timing couldn’t be better I’m setting up my first VESC in 2 days

1 Like

holy sh*t bro you are going all out with the starter/new user posts!!! this is great man!!


@evoheyax these are a huge contribution thanks!

thank you. I’ve been thinking about this for a while. The thing is, this forum has been a great place to learn stuff, but the information now is too far spread out. Its everywhere on this forum, and while searching can help, you will be weeding through a lot more than you would want to go through, especially if your a new builder whose already swamped with other things to learn, like what parts they should use, or how to solder correctly, or understanding enough about volts and amps to figure out what drive train ratio they should use and what parts to use with that system.


Really good post! This will save alot of time and headache. Just a small typo under “About the VESC”, “An easy way to burn up a motor is sending more amps than is can handle for too long (often while riding up a hill).”, should be, “An easy way to burn up a motor is sending more amps than is can handle for too long (often while riding up a hill).”

Thanks, I know I should re read it like, 10 more times. I’ve been fixing up the language. When I type, I tend to do that for some reason, haha.

@evoheyax You really hit it out of the park with this thread. Very complete and much appreciated. I’ve already learned and bookmarked all of this information, but I had to suffer to get it!! Thanks for condensing and making a great primer for anyone looking for the best info. You rock, Luke!! :v:

Just to get something straight, I can run the motor detection/setup everything using just the lipo batteries? Or do I need a separate power supply?

You can use either a separate power supply or you normal lipo/lion battery to do the motor detection. The same applies to doing the FOC detections, if you choose to run FOC instead of BLDC

1 Like

Alright cool. I don’t have a separate power supply, so I was worried. I’m going to be running FOC tomorrow, when I get the VESC in the mail.

When it says “spin freely” does it mean off the ground or without a belt?

define “it”? I’m not sure what context you are pulling that from :slight_smile:


From Step 1.

That comment is saying you should put it in a position (off the ground) where nothing stops the motor from spinning. The belt is fine, if you can take your hand, and spin the wheel without great difficulty. The belt should make it slightly harder to spin, but not too hard to spin. You should run the detection with the belt attached. But most importantly, it should be able to spin without any load, as when you click on detect motor button, it will do a series of tests that will make the motor spin. If you have load or even if the wheel is touching the ground, it will fail detection, as the motor can’t spin freely.

For me, I prop my boards up on foam blocks while doing detection. You could also just flip the board over.

I figured it was that way. Didn’t know if there was a difference with or without the belt.


I just did a test with and without the belt Almost indistinguishable, just slightly lower ERPMs with belt on.

It doesn’t or shouldn’t change alot. Because what its detecting is motors stator & magnetic fields. It has nothing to do with load.


I ahvn’t bought my VESC yet but can you elaborate on how the VESC is connected to the computer? Do I need to buy a separate cable? what is the input on the VESC?

Super helpful post! Thank you!