Is this VESC behaviour normal?

Somehow the motor starts spinning at different throttle positions and I cannot adjust the speed. It is all or nothing. Somebody suggested this is because I don’t have a losd on it. The VESC is driving me mad. Everything else of the build was essy compared to getting this running.

Use dutycycle control instead of current control…

1 Like

Man, I had a complete troubleshooting guid almost typed out. Then at @Giga spotted the error. But be fair, it’s only shown quite brievly in focus in the video :flushed: With current control it is supposed to accelerate to the max speed possible with the current you allow on your remote. So with no load this is about max speed.

1 Like

I’m sorry, did you already abandon it? I guess a troubleshooting guide is quite handy for new users of the VESC. So if you still have it, leave it here for the community!

to be honest, I didnt even watch the video. His description already pointed it out…for somebody who already had the same “issue” :smile:

Exactly, current control is almost the same as power control, so if you push the throttle a tiny bit and thus allow the ESC/motor to have like 3% of the max power, for max amp at 100A this is already 3A, which is more than your motor needs idle. Conclusion: your trigger is not sensitive enough to control your motor speed without load. (but in practices it doesnt have to, so either change to dutycycle control for testing, or keep at current (pun not intended) settings and try it out in the water).
I also can recommend the ACKManiac Android App and a cheap HM-10, so you can quickly change between profiles (and also set max power/RPM).


Well it was not endlessly much, but you solved the problem much quicker. It’s still available above if you look at the verision of my reply before the edit … Here it is, maybe someone gets a clue from it in the future:

It’s always hard when there is something wierd with electronics, because the problems are not easily visible. But with some diagnosis you will get there.

I have some suggestions on what you can try. First of all, maybe it’s only some problem with your input method. You can try to go to the realtime tab in the vesc tool. Then you can select your duty cyle which should be proportional to your motor’s speed. To be clear:

Then i want to mention, that all setting changes are not per default written to the vesc. You probably know this, but the best method is to always load the motor parameters and app settings with the “A up” and “M up” buttons from the vesc to the tool. Then change something and write the changes with “A down” and “M down” buttons on the right to to the vesc to have some effect. Especially with the input and motor setup wizards make sure you save all the values.

What “BLDC” and “FOC” and “DC” means unter General Motor settings is different contorol shemes. “DC” is obviously for simple direct current motors and not for brushless motors that we use. “BLDC” and “FOC” are both for the brushless motors we are using. But FOC is a much more complicated control sheme and harder to get right. You might want to try “BLDC” mode. Your motor might be noisier and have less startup torque, but those are things I consider less important for efoils.

Then you might allow the Vesc some braking current and some battery charge current, maybe 5A. There is no real reason behind this. It is just more common and maybe helps.

One problem that bugged me for an hour is when I set the unter voltage protection too hard and my motor would only creep when testing with the lab psu. You have the untervoltage cutoff values quite high, although they shoud be fine. You can watch the Volts In in the realtime tab while running. Maybe adjust it to 12X3V=36V?

As a last thing I would offer you to look over your settings completely, maybe I can spot something obvious. You can export motor and app settings as XML Files. Load your Motor and App settings from the Vesc to the “Vesc Tool” and then export them with File->“Save Motor/App Configuration XML as…”.

1 Like

We tested the vesc as well…You can use current control as well. Under load it will react correctly;-) and not get max rpm with only small input on the trigger;-)
We had another issue with the VESC, we could not get maximum power out of it. Our maximum value was 30A only allthough 60A should be possible…
Anyone tested it under load allready and got more power out of it? All our limits were set above 100A so this should not be the issue. Seems the BLDC mode is not perfect for brushless motors. With same setup we can go up to 150 A with different ESC, so other components can`t be the problem…

1 Like

Did you solve your problem please ?
I have similar issue with my 200A VESC (from Maytech), i am only able to draw 70A under load on the water and cannot get full power. Thanks in advance

You would have to tell us what you have done already in terms of setup?

If all you did was run a detection then it will only give the max of what it detected which is around 40-80A on the motors used here.

Also did you setup the battery in the VESC parameters.

All basic questions that you might have gone through already but could be some of the reasons but more details will help, motor type, battery type, remote type, setup method etc

I updated firmware to “no limit” and i was able to draw much more current, till 300 A for motor current (and battery current usually is less than 150 A). RPM goes to 3000 and speed is about 12 km/h. I cannot go faster because of motor current specifications and therefore i cannot take off from water surface. The front of the board lifts up but the back of the board stays in the water. I try to move my weight forward. Front wing is about 2000cm^2 and theoretical speed to take off is 16 km/h (from CFD for a total mass of 100kg).

My setup is battery 12S12P with Molicel 18650 2600mAh 35A. ESC is a VESC from Maytech : MTVESC7.12, 200A continous, 300A burst. Motor is brushless inrunner also from Maytech : MTI85165, 200KV, 300A. Propeller is one used apparently by Fliteboard brand but i don’t have other info:

Board, wings, mast clamp, duct are homemade.

So i am trying to understand how i could go faster/take off and also why by drawing so much current it doesn’t work ?
A problem might come from the propeller which is too small (the yellow part on the photo which is in the water flux only represents half of the blade, the center part is the motor), or also the hydrodynamic of the board is far from being perfect.


Your propeller has diameter 143 and your motor diameter is 85mm. Not optimal. You use a high KV motor with a high pitch propeller. Not optimal neither (check the rpms). Then you use a duct which adds even more drag. The big wing also has more drag than smaller ones.
I suggest the following steps.

  1. Remove the duct.
  2. Use a larger propeller with less pitch, like FR, EML or Easy Foil 6” pitch.
  3. If the above steps don’t help, change the motor to a lower kv, smaller diameter like 65161 120kv but I think step 1 and 2 will get you on the board.

Okay thanks a lot i will try to follow these steps!

Hey, sorry for late news i had bad weather here. With step 1) removing duct, i could achieve much better speed with same RPM thanks ! I think i was almost able to take off last weekend but i need to train more.

However, i have weird problems now with my VESC/Motor. FOC Duty Cycle works perfectly without load (with loads with more than around 10A battery, motor stops to spin). Current control and BLDC don’t work : BLDC doesn’t make the motor spin and Current control implies VESC Fault Under voltage + BMS App Short-Circuit Protection.
Also setup motor foc gives flux linkage error, and motor direction inverts randomly : when positive ERPM is monitored, sometimes motor spins to the right, sometimes left.

I am trying to solve all this but i didn’t succeed for now… Maytech tells me to try USB convert to TLL module, to connect computer through UART port on VESC. I could try to buy this module (for now i have been using the cable usb C to connect to VESC) but i don’t think my cable is wrong because i can still change settings in VESC, read real time data… + for now i use UART port on VESC to send data to Esp32 to display on a screen.

Thank you in advance

Sounds like a one phase is burnt of not connected.
Do you have soldering joint someware betwean motor and vesc that could desolder from heat?

If you can connect through usb and change settings, you don‘t need to use a usb to serial converter, this won‘t solve your problem. If the motor turns into the wrong direction randomly this could be a problem with one phase not connected, having bad contact or a burnt winding, as @mrendu43 stated. Check your connections. I had a similar problem with a 63100, replacing the bullet connectors with crimp tubes solved the problem. What vesc are you using? 75200? If so, FW5.1 seems to work best.

Also, are you discharging the battery through a BMS? If so, what are the BMS specs and settings?

thanks guys for your advices, i checked resistance between phases : two phases have resistance 0 between them. I guess i have to disassemble everything on the photo… I don’t get it maybe there was friction inside the mast or close to the motor.
I have xt150 to answer @mrendu43 and i use VESC based on 75300 (Maytech MTVESC7.12, 200A continous, 300A burst).
@jkoljo I am discharging through a BMS yes, BMS can handle 300A but i set limit 200A in Ant Bms app.

actually it is normal that the resistance is 0, but i have a high resistance between third phase and the other ones. It could mean that a winding is burnt, i need to change the motor?

Yes it is normal to have realy small ressistance.
Usaly resistances betwean phases are from few miliohms to 100 miliohms. Cant be measured with standard multimeter.
But high resistance betwean phase wires is not normal.
It is most likely bad connection, i dont think phase is burnt, but if you can open back or front plate it will be easy to see if its burnt.
Uslay burnt motor have black burning marks.

Like this one…

hi, i also tested yesterday with another VESC, problem is the same for the motor that inverts direction randomly. I don’t get where the bad connection would be because i measure resistance directly from the cables.
Also i sent new message to Maytech and they insist on TLL module :

« Hi, please try as mentioned previously, use USB convert to TTL module, to connect computer through UART port on VESC.
Arduino is only for VESC side, use TTL module is to prevent siganl interference from computer side.
Please try with TTL module first, do not use Arduino first, after use TTL module to connect and if detection is ok, then can use Arduino. »

If you have a connection between the motor and the cables in the mast clamp (motor with short cables), check the connections there. If the ccables are directly attached to the motor (long csbles), one phase might be burnt. To check this, you would have to open the motor.