VESC Tool thread - how to program

I’m starting this thread to make it easier for people to get on the water quickly with one of the proven designs here. (6515X motor, Maytech V2 remote. Flipsky 200 or 300A ESC). With this setup readily available, this should be almost “plug and play” from a builders perspective, yet it’s not. One of the areas that I have spent a lot of time on (read: wasted my time) was programming the ESC.
I am hardly an expert but here are some basics for somebody who is looking for help in this area. Please expand or correct anything I have written if you feel it could be useful. I also have a few questions that I would love to have answered to increase my knowledge.

Step 1. Throw away the directions sent by Maytech/Reacher/Flipsky etc. The English is so poor that it is of little value. (I’m not trying to bash on the Chinese exporters and I know their English is far better than my Chinese, but it’s frustrating).
Step 2. Load the VESC tool on a computer or phone. (the rest of the instructions are based on using a MS Windows laptop and a USB cable)
Step 3. Physically connect the ESC to your computer via a USB cable. Power up the ESC.
Step 4. Run the connection wizard. You will probably get a message that says your firmware is out of date. Continue.
Step 5. Connect your motor. You don’t have to worry about which of the 3 wires from the ESC go to which of the three motor wires.
Step 6. Run the Setup Motors FOC wizard. Select “Large Inrunner”. Input the other applicable data.
After completing the wizard you then need to go back into the motor settings and change a few things. At this point if you have paired your remote you should be able to turn the motor using the throttle. I found that the motor was NOT optimized at all by just using the wizard.
Step 7. After hours of testing this is what I changed. I’m not stating my system is perfect or even that it is correct but at least it works. Go to Motor Setting-General-Motor Type-change from FOC to BLDC. Tab over to Advanced-Maximum Duty Cycle-change from 95% to 99%.
Step 8. Motor Settings-Additional Info- Setup-Motor Poles- change to 6 (for the 6515X series).
Step 9. Run experiments (This is still an area where I need help-I’ve had times where I could run experiments and the motor turned over and did stuff. Other times, the motor just makes a couple of noises, twitches and does nothing)
Step 10. Write motor configuration. This is important because any changes you make will not be downloaded to your ESC without this. It’s the M key with the down arrow on the right side of your screen.
Step 11. Go to App settings-General. Verify it says PPM and UART.
Step 12. Go to App settings- UART. Verify baud rate is 115200.
Step 13. Go to App settings-VESC remote-General-Control type. Select either current no reverse or Duty cycle no reverse. (I selected duty cycle but I’m still unsure of this. The no reverse is important because it affects the remote throttle)
Step 14. Write app configuration. Same as step 10 but it’s the A with a downarrow on the right side of the screen.
Step 15. Assuming your remote is connected. Go to Data Analysis-realtime data. Toggle the RT switch (on right side of screen, two below the Write app button) Use your remote and test how your motor works.

That’s it for right now but I know there are true experts on the VESC tool on this forum. PLEASE, add your wisdom here and help out the next generation of Efoilers. Thanks. -Marc

PS. I’ll update with some screenshots later.



I am subscribing to this thread!

It seems that a few (many ?) people cannot connect their Flipsky 200A to a computer via a direct USB link. They must use their phone as a bridge. Trampa 75V/300A VESC should be OK.

Don’t miss the help command… first link here:

1 Like

Good to know. For me changing the usb cable helped. With the original usb cable it would not connect, however with the one from my old phone (cable is way thicker) it works fine over usb.

1-For cost reduction reasons, some phone manufacturers deliver a charging cable only with their phone, and some others a “data” cable (that also charges).
2- a Trampa VESC fitted with the BT module or a Flipsky FSESC200 or 75200 VESC with BT module over UART can connect to a smartphone acting as a bridge between VESC and computer

@HighAltitude, Step 3 in your guide could look like this :wink:

Step 3. Connect the ESC to your computer depending on your computer and VESC Bluetooth (BT) capabilities (Trampa VESC with BT module only).
3a -  via a USB **data** cable (1):  physically connect your computer to a switched-off ESC. Power up the ESC. Checked for any VESC (Trampa or VESC compatible).
3b - if you have a Trampa VESC 75/300 with optional BT module, or a Flipsky VESC with extra BT module, you can use your phone as a BT - Wifi bridge between ESC and computer. 

(1) You know it is a USB data cable if, connecting directly your phone to your 
computer, you can see your phone memory as a flash disk (pictures, videos, ...) with a working drag and drop either ways.

I have a similar setup. Maytech V2 remote, Maytech 200a vesc, flipsky 65161. I set it up as you described above (bldc, duty cycle, etc). Everything seems to work right and it spins up smooth, but I only get about 1400 rpm. When I look at the real time data, amps on the battery side top out at about 2.5 amps. I believe I need more rpm than this.

I have done a lot of experimenting with foc. Seems like regardless of the settings I try amps bounce higher and higher until it cuts out. I assume this is a setting I have incorrect, but I sure can’t figure it out.

Any guidance on increasing the rpm on bldc, or proper set up of foc would be greatly appreciated.

What battery ae you using?

Also, what did you put in for number of poles?

Two banks of 12S 5P in parallel.

I have it set to 6 poles. I had run it at 4 poles for a while before realizing that was error. But it did not seem to make a difference.

I wish I could help. I’m just not sure where the problem is. I brought my motor and VESC up from the lake today so I can I can look at the VESC tool tomorrow. I will try setup a second motor that I have using just these instructions and then I’ll check the RPMs. I’m running 12S as well, so at least it should be apples to apples.

Thank you so much for this thread and the information. I am currently in the order phase and will start building soon. Therefore this will come in very handy. Perhaps it would be helpful to have screenshots of each of the configuration sites of the vesc tool as a working example. Then everyone knows the standard and what works and can go from there and experiment.

Agree on the screenshots but I’ve had so much going on that I haven’t made the time. I might try tonight. I also need to do a build thread. The problem is the nice weather we are experiencing in Colorado. I feel like I only have a few weeks left to enjoy the lake. Once I take my boat off the water, I’ll have a bit more time to spend behind the keyboard!

no hurry. Enjoy the weather, unfortunately in Germany the season is already over :unamused:

I received my 65161 and the FESC 200A. I am currently testing the VESC Settings. However I am having issues with the detection of the BLDC parameters. The detection always fails. However the FOC detection works. As stated above, I should use the BLDC setting. Do you have any idea why it is failing?

Can you switch it over to BLDC after detection and then write it to the ESC?

yes that’s possible. thanks for the tip. Cant wait to get my hands on the FR prop and do some vesc config-experimenting in real life

We are dry testing some things here with a Flipsky 65161 100KV, a Flipsky FSESC75200 and my 12S12P Li ion battery pack.

The motor spins up fine, but for some reason I can not get it above 9800 RPM (according to the realtime data from VESC Tool)

9800 RPM is I think enough, but should it not be around 16830 RPM (max RPM according to the data for the motor)?

I have set the PPM pulslength start and end, and this is looking fine.

Am I missing something here?

12S means 12x4=48V, 100x48=4800. for higher RPM you need higher voltage or a Motor with higher KV (ie 195).

1 Like

Yes I understand, but why do I get 9800 RPM with S12?
According to your calculation it should be 4800!

And. According to the data of the 120KV motor they say max RPM 13680 with S20 (84volt)
120x84=10.080 < not 13680

Hard to say how they calculated it but normally vendors multiply max voltage by KV for max speed.
Vesc Android APP shows erpm, which needs to be devided by polepairs to geht real rpm. Not sure about vesc tool, maybe it calculates real RPM but then you need to configure the number of poles.

1 Like