RPM Filter is a great boost to flight performance, it’s recommended to enable it on any FPV drone whenever possible. Originally you had to pay to use RPM filters on BLHeli_S ESC, but now it’s free thanks to BLHeli_M firmware by JazzMaverick.
In this tutorial I will show you how to download and flash your BLHeli_S ESC with BLHeli_M firmware that enables RPM filter / bidirectional DShot and 48KHz/96KHz.
RPM filter is a feature in Betaflight that improves the flight performance of your drone but it requires “bi-directional DShot” to be enabled first on your ESC. At first it was only possible on BLHeli32 ESC, I can’t believe we can now also have this great feature on our tiny whoops and micro quads 🙂 Just amazing!
With BLHeli_M firmware you can also increase ESC PWM frequency to 48KHz or even 96KHz which improves efficiency of your motors and ultimately flight time. This is especially beneficial for smaller drones like toothpicks and tiny whoops.
There are two aftermarket firmware that allow you to run RPM filter and 48KHz/96KHz in BLHeli_S ESC:
- BLHeli_M (JazzMaverick)
With JESC you have to purchase a license for each ESC ($5 for 4), while BLHeli_M is completely free and this is what we are going to use in this tutorial. As far as i know there is little to no performance difference between the two firmware.
For safety, please remove propellers before proceeding.
Download and Flash BLHeli_M Firmware
Download BLHeli_M Configurator here: https://github.com/Asizon/blheli-configurator/releases
Unzip and install it on your computer.
The interface might look identical to the original BLHeli Configurator, but it offers additional options like PWM frequency and Commutation Enhancement.
Click the “Flash All” button at the bottom, and select 16.9 BLHeli_M Official firmware in Version. ESC code name should be selected automatically.
After flashing 16.9 to your BLHeli_S ESC, bi-directional DShot is enabled by default so you can enable RPM filter in Betaflight.
There are a few additional settings in BLHeli_M, and here’s my recommendations:
- Set PWM frequency to either 48KHz or 96KHz. Experiment which works better for your quad
- Set CE to Async-PWM
- Set ESC FF to OFF
And that’s it! You can now go flying 🙂
If somehow flashing fails and bricks your ESC, you can try “reviving” them by flashing old BLHeli-S firmware via C2 interface.
Old JazzMaverick Firmware (Obsolete)
The rest of the guide is the old way of flashing JazzMaverick’s firmware and it’s no longer required thanks to the BLHeli_M configurator.
Firstly find out the code name of your ESC. You can find out by connecting them to the BLHeli Configurator (how to). You can see your ESC code name in the title of each ESC, for example, mine is G-H-30 as shown in the screenshot below.
What does the code name mean?
- The first letter is the hardware configuration of the ESC
- The second letter, H for BB2 MCU and L for BB1 MCU
- The last numbers are the dead-time value
Now go to JazzMaverick’s firmware repository: https://github.com/JazzMaverick/BLHeli/tree/JazzMaverick-patch-1/BLHeli_S%20SiLabs
WARNING! Avoid newer BLHeli_S firmware versions from JazzMarerick after 16.73 as they might be unstable with RPM Filtering.
According to Betaflight Developers, the author made undesirable changes that reduce the rate at which RPM telemetry data is supplied. As a result the RPM filtering will not track the motor vibrations well, resulting in poor filtering performance and possibly hotter motors. (source)
At the moment, the 16.73 version is the only recommended version that properly supports RPM filtering.
However if you are using BLHeli_M configurator, it’s safe to flash version 16.9.
There are so many versions, which one? When I see “RC” in the description, I usually avoid as it’s release candidate (still in beta). Choose the newest one without RC. Within the folder, choose 48K one.
Find your firmware file following the name you found in BLHeli Configurator. Look, I found mine! (This file is not for you, this is only an example!)
Click on the link, will bring you to a new page full of numbers and letters. But don’t panic 🙂
Right click on the “Raw” button on the top right, and select “Save link as” to save the file on your computer. It should be a .hex file.
Now go back to BLHeli Configurator, press the “Flash All” button and press “Select File Manually“.
And choose the hex file you just downloaded, BLHeli Configurator will flash all four of your ESC’s with the new firmware.
Once done, you should notice the firmware number has been updated in the configurator.
Your BLHeli_S ESC should now support bidirectional DShot, and you can move on to Betaflight Configurator to finish the rest of the setup. Good luck!