RPM filtering (aka bidirectional DSHOT) is the big improvement that was implemented in 4.x betaflight. I will go over what you need and how set it up.
Things you will need
-Betaflight configurator : 10.6.0 or later
-Flight controller F4 or F7 with 4.1 firmware or later. Although 4.0 firmware supports RPM filtering, 4.1 makes it easier. You don't have to worry about snippets with 4.1. You can use F3, but you will need to download custom build firmware. HERE.
-BLHeli 32 ESC with 32.7 firmware
-BLHeli_S will work. But you have to paid for firmware. Here is the LINK. You have to check if you esc is compatible. Open blheli suite and see what firmware your ESC takes. Example A-H-30. If the second letter of the firmware is an H, then your blheli_s esc is compatible. Otherwise you are out of luck. I am not going through how to use JESC, they have a pretty good instructions on their website.
Add:
Free Blheli S firmware that can now do RPM filtering. Use 16.73 or later.
https://github.com/JazzMaverick/BLHeli/t...S%20SiLabs
You want to update everything and keep it default. Don't bring your PID or filter settings from a previous betaflight version. You can bring your rates though and other non-filter related settings.
The RPM filter can be toggled on the configuration tab under the ESC/motor features section.
The thing you want to do is count the number of magnets you have on the bell of your motor, not the stator. A typical 5inch quad motor will have 14 magnets that is why default is 14. If yours differ, change it accordingly.
It is recommended that you pick Dshot600 for 8K/8K gyro/pid loop. And Dshot300 for 4K/4K. But depending on you CPU load.
I have an F7. Goto CLI and type "tasks". You want to make sure your gyro rate/hz is a close to the gyro rate you selected in my case 8K. You will notice that the CPU just for RPM filtering is almost 59%. This is quite high, considering this is an F7 FC. You can also see that the serial task is throwing off the total overall CPU load. I am not sure why it does this, but when I turned on my radio, it came back to normal. Around 9% for serial task.
My overall load is 62% even before I add everything else. Although 62% is not 100%, people recommend to try to stay under 50% overall CPU load. I am not telling you what to do, run higher CPU at your own risk. You can also choose to overclock your CPU. Again, do this at your own risk. I have had success in the past with overclocking and I have also had failure. To activate overclock
If you don't want to overclock, I suggest taking the gyro/pid loop down to 4K/4K. Remember to change to Dshot300. As you can see, the CPU has dramatically reduced.
Next, go to the motor tab and check for errors. Errors should be 0%. If it is 100%, make sure you plug in your lipo.
Go and fly. According to the BF developers, default should be flying well.
I am not going to get into tuning and reducing filters. If you want to read about 4.1 tuning, you can check out the wiki below. Tuning RPM filter is another thread in itself. I wanted to keep to post short.
https://github.com/betaflight/betaflight...figuration
JB also has a video on tuning 4.1. Goto about 12:50, where he made some recommendations.
More JB tuning
Also check out UAV Tech
If you want to read more about RPM filtering, including filter reduction, you can read it here.
https://github.com/betaflight/betaflight...RPM-Filter
Things you will need
-Betaflight configurator : 10.6.0 or later
-Flight controller F4 or F7 with 4.1 firmware or later. Although 4.0 firmware supports RPM filtering, 4.1 makes it easier. You don't have to worry about snippets with 4.1. You can use F3, but you will need to download custom build firmware. HERE.
-BLHeli 32 ESC with 32.7 firmware
-BLHeli_S will work. But you have to paid for firmware. Here is the LINK. You have to check if you esc is compatible. Open blheli suite and see what firmware your ESC takes. Example A-H-30. If the second letter of the firmware is an H, then your blheli_s esc is compatible. Otherwise you are out of luck. I am not going through how to use JESC, they have a pretty good instructions on their website.
Add:
Free Blheli S firmware that can now do RPM filtering. Use 16.73 or later.
https://github.com/JazzMaverick/BLHeli/t...S%20SiLabs
You want to update everything and keep it default. Don't bring your PID or filter settings from a previous betaflight version. You can bring your rates though and other non-filter related settings.
The RPM filter can be toggled on the configuration tab under the ESC/motor features section.
The thing you want to do is count the number of magnets you have on the bell of your motor, not the stator. A typical 5inch quad motor will have 14 magnets that is why default is 14. If yours differ, change it accordingly.
It is recommended that you pick Dshot600 for 8K/8K gyro/pid loop. And Dshot300 for 4K/4K. But depending on you CPU load.
I have an F7. Goto CLI and type "tasks". You want to make sure your gyro rate/hz is a close to the gyro rate you selected in my case 8K. You will notice that the CPU just for RPM filtering is almost 59%. This is quite high, considering this is an F7 FC. You can also see that the serial task is throwing off the total overall CPU load. I am not sure why it does this, but when I turned on my radio, it came back to normal. Around 9% for serial task.
My overall load is 62% even before I add everything else. Although 62% is not 100%, people recommend to try to stay under 50% overall CPU load. I am not telling you what to do, run higher CPU at your own risk. You can also choose to overclock your CPU. Again, do this at your own risk. I have had success in the past with overclocking and I have also had failure. To activate overclock
Code:
set cpu_overclock = ON
If you don't want to overclock, I suggest taking the gyro/pid loop down to 4K/4K. Remember to change to Dshot300. As you can see, the CPU has dramatically reduced.
Next, go to the motor tab and check for errors. Errors should be 0%. If it is 100%, make sure you plug in your lipo.
Go and fly. According to the BF developers, default should be flying well.
I am not going to get into tuning and reducing filters. If you want to read about 4.1 tuning, you can check out the wiki below. Tuning RPM filter is another thread in itself. I wanted to keep to post short.
https://github.com/betaflight/betaflight...figuration
JB also has a video on tuning 4.1. Goto about 12:50, where he made some recommendations.
More JB tuning
Also check out UAV Tech
If you want to read more about RPM filtering, including filter reduction, you can read it here.
https://github.com/betaflight/betaflight...RPM-Filter