You are here

Another Motor Detection Thread

2 posts / 0 new
Last post
Last seen: 3 years 5 months ago
Joined: 2018-12-30 00:50
Posts: 2
Another Motor Detection Thread


I've been trying to run a KDE 2814XF-515 motor through the VESC. Its for a UAV and to be paired with a 12.5 inch propellor (and put into a coaxial configuration). I'm using a VESC 6 and the VESC tool. Information on that motor can be found at:

It's being run at 6S on a tattu 18000 mAh, 15C battery, so I don't think there's any lack of power availability for these tests.

I've tried both FOC and BLDC (though I'm probably more interested in BLDC). I've read through some other threads and combed through the motor setup wizard and nothing seems to address exactly how to get to the correct tuning. I am running it sensorless. Either way, I can't quite get it to run smoothly. So I've come with a few questions and hopefully you guys have some suggestions as well:

1. For my application, which rabbit hole is better to dive into - BLDC or FOC? FOC seems to have a lot of nice benefits to efficiency and noise and control, but I've heard it might lose a tiny bit of thrust at the top end? Does anybody know how much? We need thrust and the unit will probably be running in the 70%-90% thrust range. 

2. Should I be doing the setup wizard and tuning the motor loaded or unloaded (with or without the propellor attached)?

3. I've asked the manufacturer for some of the values but they've said they're confidential (stuff like lambda, motor flux linkage, for the FOC setup). I'm not sure if it's because they want to push me to their ESCs, because they don't use the same parameters, because they don't know or don't care. One value that they obviously post is motor internal resistance. The value they've posted is 130 mOhm, but the detection provides values of 50-70 mOhm depending on the current I do the detection at. Which one is more trustworthy, and why is the value changing for different currents? They've also posted a 22-30 degree timing smart algorithm (probably some proprietary thing) - is there a setting for the timing advance in VESC?

4. On the BLDC side, a similar problem is when I choose a different duty cycle to take the readings - the BEMF coupling changes depending on my parameters. It ranges from 600-900. Cycle Integrator Limit stays pretty close to 38 for all readings. When I try to run it in current control or duty cycle control, it just doesn't quite seem to be running correctly (cogging, running backwards, negative amps, runs away to the duty cycle limit 0.95, generally not being motory at all). 

5. Generally speaking, I don't have a terribly good understanding of many of these parameters or others that I havent mentioned. What are some of the other settings that can cause these issues? Does anybody have experience with that motor or something similarly sized and how they've set it up? Some of the culprits I suspect and would like to have more information on their impact for the run are:

a. Cycle Integrator Limit, BEMF Coupling, Open Loop ERPMs

b. BR ERPM and BR Phase Advance

c. Control ramp steps and Backoff Gain

d. FOC detection parameters (R, L, lambda, observer gain...)

One final note is that given the application, the motors will virtually never be run under 40% of throttle; once they've started, they've started and I don't particularly care if the start is rough, inefficient or slow, so long as it is consistent and so long as the relevant range of the motor (+40%) is optimized. 

I know I'm asking for a lot, so I appreciate any help on the matter and am happy to post any additional information, photos, videos, export any other files or whatever else needed to help diagnose the issue. Thanks for the help.

Last seen: 1 month 2 weeks ago
Joined: 2017-09-22 01:27
Posts: 575

I would use FOC as it is much better at detecting weird motors.

You should tune the motor unloaded, without the prop. 

The returned values of 50-70mOhm sound about right, I would run detection at the default current setting and use that value. It is likely to be about 65mOhm if they say it is 130mOhm total. (I can't remember why it's half but I am pretty sure it is correct)

For FOC detection the most important parameter is resistance (R), If you get that right it tends to work reasonably. You can try fiddling with the detected settings a little in either direction to see if changing them helps. Although I have found it normally works best when you just run detection and leave it alone. 

If you have a particularly small or high KV motor you can try reducing the T parameter to 500 or less as that sometimes helps with tracking motors with low inertia.


Can you post a video doing the FOC detection and running the motor please? It helps to get an idea what is actually happening.