The Best BLHeli_32 Settings

Apart from tuning PID, you should also tune BLHeli settings on your ESC to achieve better flight performance with your FPV drone. In this article I will share my BLHeli_32 configurations that I use which give me the best results, and explain what they do.

If you don’t want to read the long article, here is the summary. However stock settings or a fixed set of settings might not work on every build, you should really “tune” it.

  • PWM Frequency: 48KHz for freestyle; Default (or higher) for racing
  • Motor Timing: 22 or Auto for freestyle; 25 (or higher) for racing
  • ESC Protocol: DShot600 for 8K/8K, or DShot300 for RPM filter (Betaflight 4.1 Recommendation)
  • If you have ESC desync, try to set Demag to High, high Motor Timing, lower Rampup Power

Note that these settings are only available using BLHeli_32 ESC’s. Looking for new ESC’s? Here are the best ESC I’ve tested and recommend.

I will go into a bit more detail what each setting means.

PWM Frequency

The “PWM Frequency” setting in BLHeli_32 changes how often the microcontroller (MCU) in the ESC sends updates to the MOSFET. This basically means how often the ESC drives the motor. This PWM setting is entirely unrelated to ESC protocol, FC looptime or the PWM frequency setting in Betaflight.

The default value for PWM Frequency in BLHeli_32 is 24KHz. By raising it to 48KHz you should notice an improvement in the smoothness of your flight performance right away.

When you increase the PWM frequency, the motors should run smoother and tend to generate less noise. It solves “mid throttle oscillations” for a lot of people, some even claim their motors come down cooler as well as getting longer flight time thanks to the improved efficiency.

Don’t go below 24kHz, you should always choose between 24 and 48KHz.

Why does higher PWM Frequency help reduce vibrations?

At lower PWM frequencies, there can be some aliasing/conflicts between the commutation rate and the PWM update rate.

Commutation rate is the time it takes to detect a zero crossing and switch through one feedback cycle, there are 6 commutations per one eRPM, so it is tied directly to RPM

This can result in some odd vibrations or roughness at certain throttle positions. Raising the PWM frequency to the FETs can move the harmonics where this happens outside the range of the commutation rate.

Downsides of Higher PWM Frequency

So why is the default not 48KHz then? Well, because there is no free lunch!

Higher PWM frequency gives you smoother flying experience at the expense of a little power loss (just a few percent). Because of this, higher PWM can reduce peak current draw slightly too, which isn’t necessarily a bad thing for the longevity of the ESC.

At higher PWM Frequency, the torque at low RPM can also be reduced slightly and so your low end throttle might feel softer. It might also slightly decrease prop wash handling too.

For racers who want to have all the power available, might actually prefer lower PWM frequency, or just stick with the default value.

If you are a perfectionist, you can give 48KHz a try, then slowly back it down to find the perfect middle ground between power and smoothness. Every setup is different.

Motor Timing

The default Motor Timing in BLHeli_32 is “16 Deg”, which seems to work just fine for the majority of builds. However I always increase it when I am configuring my ESC.

Generally speaking, a higher motor timing is less likely to have “desync” issues. Increasing motor timing also increases the power of your motor at the expense of efficiency.

If you set Demag to high, setting motor timing higher is great as it helps to gain some of the performance back.

If you’re after raw power, you can try setting motor timing to around 25, or maybe even slightly higher. I don’t recommend using max settings just in case of unexpected problems. When the timing is set too high for a motor, it will tend to run hotter, this increases the likelihood of burning out a motor in a crash, or when something stops your motors from spinning freely.

For a good balance between power and efficiency, 22 seems to be a good value to get started. For a mini quad, it’s unnecessary to set motor timing lower than the default, unless you are driving a huge motor and propeller (e.g. 10″).

The optimal motor timing value can actually change with motor RPM, so if you are unsure you can just use the “Auto” option, which lets the ESC decide what motor timing to use on the fly. Generally, the auto option provides a good middle ground between efficiency and power through the whole throttle range.

Personally I haven’t seen a big difference when swapping motor timing settings between Auto and 22, but give it a try and let me know in the comment which setting works best for your setup.

ESC Protocol

DShot is a newer and more advanced ESC protocol, and I recommend it over Multishot for several reasons.

Regardless of the differences in performance, DShot is indeed more CPU intensive. This has been the reason for some to opt for Multishot, to allow more processing power to run the “ultimate” 32K/32K Gyro sampling and looptime.

Anyway, give both protocols a try if you want to experiment. Personally I feel very minimal difference in performance between the 2 protocols, but when using DShot:

  • I don’t have to worry about ESC calibration
  • I use ESC beacon which relies on DShot command
  • You need DShot in order to use ESC Telemetry
  • Betaflight 4.1 recommends DShot300 for RPM Filter, or DShot600 for 8K/8K

Demag Compensation

This setting can help reduce “desync”. Just leave the setting at default unless you have desync issues, otherwise change it to high. (what is ESC desync)

High power builds (e.g. 6S or hexacopters) that suffer from electrical noise may benefit from setting demag to High, but in most cases Medium is fine.

You might experience performance losses by setting it to high, as it’s basically backing down acceleration in order to reduce current spikes and noise.

Rampup Power

Rampup Power is a setting designed to reduce current spikes due to the sudden increases in throttle by limiting the change of power.

It’s previously known as Startup Power in older BLHeli version.

If the motors are pushing close to the limit of your ESC’s, current spikes from punch-outs could inflict damage, reducing Rampup Power can lessen this risk.

Leave it at default if you are unsure, but you can tune it and make your quad fly more efficiently, but note that setting it too low can lead to slower motor response.

I don’t normally touch this unless I have ESC desync issues, or excessive electrical noise.

If you really want to play with it, here is how. Try to lower the value just a little each time, until you notice a difference in performance, then back off. For most builds it’s not even noticeable when you lower it to 25% (50% is the default).

Current Protection

Current protection limits the amperage passing through the ESC. The purpose is similar to Rampup Power, but the Current Protection setting is more specific on current limit.

I recommend leaving this setting to off (default), unless you know what you are doing.

Potentially this can be used to protect your ESC from “burning” due to current spikes, crashing and desyncs. But as long as the current rating of your ESC meets the requirement, you shouldn’t need to worry about it.

How about the Rest of the Settings?

For mini quad? Just leave them to default :) A lot of these settings are for fixed wings and planes.

Edit History

  • Jun 2018 – Article created
  • Nov 2018 – Added Demag Compensation
  • Feb 2019 – Updated Rampup Power and Current Protection
  • Jan 2020 – Revised

22 thoughts on “The Best BLHeli_32 Settings

  1. Phil

    I had a really bad oscillations on my 5″. After setting 48kHz PWM and timing to auto its finally flying as it suppose to :) thanks a lot Oscar! Happy flying everyone!

    Reply
  2. Brendan

    Hi Oscar rhanks for all you do for the community-
    I have a super light 4inch build 2204 3000kv motors with a 35amp stack. Running 5s with an 80% motor output. It flies amazing until i do a hard punchout. Im no where near my amperage limit for the esc. I habe my settings in blheli32 to auto timing- 48khz timing set to medium. Could you recommend something to help with the mild desync im getting. This quad is absolutely stellar as long as im under about 80% throttle.
    Thanks again for any help

    Reply
  3. Justin Scholtemeyer

    NB! Lots of people have been experiencing wobbles during low throttle using 48kHz PWM on a 5 inch. 48kHz reduces thrust at low RPM, which then wrecks the ability of the PID loop to maintain low throttle stability.

    Reply
  4. neo2001

    Most people and documentations talk about 24 or 48 kHz. But since the slider in the configurator allows for setting many values in between, I wonder if that’s something I want to do or not? For example what about a setting of 36 kHz?

    Reply
  5. Martin

    Hi! Me and a friend of mine bought GEPRC Cinepro 4K as our first drones and we keep burning the 35A BLHeli_32 ESC’s when the drone gets stuck sideways or upside down…Could the current protection help us investing in this drone? (38$ everytime)

    Reply
  6. Andre

    It flies better and the motors sound smoother with 48 KHz. That’s right, but there is more noise in the video signal. With 48 KHz I have lot more lines in the video feed. If I reduce the PWM to 36 KHz it still flies perfect, but the noise in the video is way better. So I agree with OrneryD at some point. There is definitely more video noise with 48 KHz.

    Reply
  7. Nate

    I just updated my blheli to 32.6 with dshot protocols however flip over after crash is still not reversing motor direction. The motors dont spin at all

    Reply
  8. OrneryD

    Opening up PWM speed to 48khz also creates more EMI. High voltage + fast switching on the Mosfets will turn them into eletromagnets.

    Reply
    1. Robert Leclercq

      Why come it flies better though? I have seen you say this all over town, but 48khz works fucking amazing for me.

      Reply
  9. Darren

    Does anyone know where to download the BLHeli_32 suite from? The mediafire site seems dead, and everywhere including BLHeli32.com links to that site.

    Reply
  10. karl

    I’m running my first 32bit ESC. first few flights after set up went great. after selecting save and reboot while in the field my esc’s never came back online. when plugging into the 32bit blheli suite my four in one esc is recognized but fails to communicate. did my firmware get erased? how can i fix this? HGLRC F440 stack. Communicating with blheli suite using FC pass through.

    Reply
  11. Denver Valdez

    I tried this and my quad was twitching like crazy. Motors got pretty warm from a short hover. I’m using pyrodrone f4 FC and Aikon AK32 4in1 esc.

    Reply
    1. Harald Schürz

      I am having the same problem…the motors are super twitchy since i am using blheli_32 on my holybro tekko32.
      Have you found a solution?
      The FC i am using is the omnibus f4sd with dshot1200.

      regards

      Reply
  12. David Burkhart

    FLying DYS aria_32. When I engage turtle mode, then disengage it, the escs get stuck in the reverse direction. Anyone else ever have this problem?

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *

For prompt technical support, please use our forum IntoFPV.com. I check blog comments weekly.