• Howdy! we're looking for donations to finish custom knowledgebase software for this forum. Please see our Funding drive thread

Problem with BLDC and belt (Power transmission vibration)


10 mW
Sep 8, 2014
Hi fellow ebike builders,

I am experimenting with a BLDC motor transmitting power to the rear wheel with a belt.
The problem seems to be that the setup and belt seem a little "indirect", so there is indirect power transmission which causes the motor
to studder and stop because force goes back into the motor from energy saved in the belt system causing the system to be unstable and vibrating making to motor spin backwards appaearently. It's kind of hard to explain. Like a spring forcing movement back into the motor which it can't handle.
Any ideas how to cope with this problem?

What controller are you using?
I’ve seen strange issues like that with sensorless controllers. Something that uses hall sensors will be less prone to problems.
What controller are you using?
I’ve seen strange issues like that with sensorless controllers. Something that uses hall sensors will be less prone to problems.
Yes, that definitely has something to do with it.
I'm using an older VESC limited to 40A Battery power at about 44 volts in FOC mode. I uses hall sensors only when starting.
I tried using a block (non sinus) controller but it didn't really work better and the noise was terrible.
I once had a sine controller that did work better but it broke and is no longer in production.

I could tweak the settings of the VESC but I don't know where to start.
Does it only happen in sensorless mode, that is does it only happen after the hall sensored to sensorless ERPM transition?
The transition setting was set at 2000 ERPM.
The MAC 32 poles I think, but I don't know what rpm that converts to. 62?
I switched to 8000 ERPM without noticing a difference. Maybe still too low?
If anyone is interested in this build:


  • IMG_3007.JPG
    5.1 MB · Views: 13
  • IMG_3008.JPG
    1.1 MB · Views: 16
Last edited:
Does you have a way of running data capture on the VESC, either bluetooth or able to make it happen to the motor while plugged in, then you can see what ERPM it happens at and more detailed data if needed. It's probably not really the belts fault, maybe a contributing factor, as it is something wrong with the VESC tuning. I've only tuned VESC V6 derivatives so I don't know if all the settings are the same but there are a lot of settings that you can test to see if they improve it. But knowing it's only happening in sensorless helps since many of the settings change how the sensorless function works and not the hall operation as much.
Yes, I can use the brake to see what is happening if the VESC tool on the computer allows me to monitor this.
I never tried that.
I have to brake because these errors only happen under load. Free spinning works great.
Will check this tomorrow...
alright, I changed the motor but I have the same issue.
If I switch it to Hall sensor operation (just changed the transition to FOC mode to 30000ERPM) I have no problems at all but the noise is just too much.
First I thought it might be belt slipping but that is not the case.
What seems to throw the FOC off is most likely the energy feeding back into the motor from the stored energy in the belt.
I also did a new motor detection with the VESC.
Are there any controls I could change that might make a difference? Like a recuperation setting that might kick in?
Here's a picture of the diagnosis from the VESC tool but I don't know what to make of it.
The motor just stops for a while under load, and an led on the VESC flashes. An error I suppose.
Maybe I should try to deactivate the error detection.


  • IMG_3011.JPG
    7.1 MB · Views: 7
The error is probably a overcurrent error which is normally what you get when either the absolute max current is set too low or there is a problem with the tune so the VESC is having trouble driving the motor correctly. You can see the error pop up and the motor will stop entirely for a few seconds. First I would lower the phase current and see if there is a current that the issue doesn't happen, at least in my experience this normally happens and then you can raise the phase current 5-10 amps at a time until it happens then play with settings until it goes away. This will make any settings you change much more likely to show results because the current is just above the point where it's stable. There are of course issues where this lowering the current strategy doesn't work but I haven't found out yet.

One thing we should try and figure out is if the detected motor settings are correct, they are probably pretty close though if it runs the motor fine in sensored.

If that works I would first try changing the observer type (FOC > advanced), what observer is it set to now? The observer is what figure out there the motor is in sensorless mode so it could be part of the issue and I've noticed and heard from others sometimes one observer just works better. For instance my Leaf does not like the lambda comp observers for some reason. You can also try changing the observer gain, doubling or halving it like the tooltip recommends and see if that improves anything.

I don't know how much the belt is causing the issue but I could see how the energy feedback would cause the observer to loose track a little where the motor is. Tightening the belt further would probably remove or at least increase the frequency of any effects which may help.
Today I did some more testing.
Lowering Battery current made a difference and also switching to iterative ortega observer method.
I included my settings below.
It is better now, but now great.
Any ideas what I could try to tweak?
Observer gain is at 30%


  • IMG_3018.JPG
    13.6 MB · Views: 3
  • IMG_3019.JPG
    10.5 MB · Views: 3
  • IMG_3020.JPG
    10.7 MB · Views: 3
You should be lowering the motor current instead of the battery current, the battery current will limit the motor current but only at some RPMs depending on various factors. You want to change the observer gain not the "observer gain at minimum duty", you should change that one back to default and look on the FOC > General for "Observer Gain (x1M)". But lowering the motor current very low to see if the issue goes away then slowly raising it, so like down to 5A or something. This also helps I think because that way the system is just on the edge of being unstable when you are tuning, not very unstable, easier to see changes and less likely for things to go wrong.

Technically the ideal way to do this is to use the data capture and analyze it but I'm not that good to be able to do that well. If you can't find a solution you may find some help on the VESC discord, lots of smart people there who sometimes help, better if you can give them lots of information though.
Just a heads up on my project:
I could never get the VESC to run right, even with a lot of tweaking and a new firmware.
Maybe there is something wrong with my unit.
The belt drive runs quite nice with a regular block controller.
On my Ebike I have a 40a sine controller that runs good with the MAC and I just ordered another one for the belt project.
Hopefully that will run fine.

Thanks for all the help!

It is unfortunately the way sometimes with VESC, it's an ESC designed to run any motor so it isn't pre-optimized to run a certain type and while often the wizard works perfect when it doesn't the tuning requires some skill and advanced knowledge of brushless motor drive theory. Really a failing of the documentation, you have to dig through threads and discord to find what settings you need to tweak for a certain type of motor unless you understand the system on a deep level.
I check all possible settings with the VESC and went through a lot of tutorials.
Also I checked the "crunch" guide, but it just got worse.
Now the motor won't even spin right anymore.
Also motor detection gave me results that were way off and definitely wrong.
I think there might be something wrong with the VESC.
It is a cheap flipsky version 4.10 I got several years ago, but It used to work great with the mac.
I ordered another sine wave controller anyways... Hopefully that will work better.
I imagine so.
But I don't what values I would start with.
I might try to downgrade the firmware of my 4.12 VESC.
But I don't know which FW it actually came with. I remember, initially it worked great with the MAC motor.
Today I tried several firmwares that the VESC tool allowed me to install.
I downgraded to 4. but the best was 5. but still not useable results..
Tried everything the settings allowed me to change.
I entered 36 but I'm not sure if that makes a difference in controlling it.
It has 16 "pole-pairs"
ok, so do 16 "pole-pairs" relate to 32 poles, or what do I enter?
IJust tried it with 32 poles in the wizard setup.
Runs better at high rpm, but starting is still very rough under load.
Might be something wrong with the settings while still using hall sensors not even the FOC settings.
IJust tried it with 32 poles in the wizard setup.
Runs better at high rpm, but starting is still very rough under load.
Might be something wrong with the settings while still using hall sensors not even the FOC settings.
Do the test in the foc or bldc section instead of wizard. It’s more accurate especially for bigger motors.