Kalman Filters Replaced? Biquad+FIR: New Hype or Same Old.

Literally the same day that I released my video about Betaflight 3.3's Kalman Filters, a post on Facebook announced that Betaflight had moved to a different type of filter (biquad + FIR). People were quick to ask: HOW DOES IT PERFORM?

The answer is: exactly the same.

If you tried out the Kalman Filter version of Betaflight, you know that you have to overclock your F4 processor to use it at 32 kHz, and F3 processors struggle to run it at all. This is okay for pre-release testing, but the BF devs don't want to release code to the world in this state. The biquad+FIR filter produces the same effect as the Kalman filter, it's just easier on the processor. Meaning that it can run on F4 without overclocking, and F3 can breathe a little easier.

But the biquad+FIR filter is not exactly identical to the Kalman filter. The Kalman filter has some "advanced options" that the code is not currently using. That's why it can be simplified and reduced to biquad+FIR. In the future, a version of Kalman may come back that takes advantage of these "advanced options" and performs even better.

Some Raceflight supporters have interpreted the move to biquad+FIR as a slap in Kalyn's face. It's not. It's a normal part of team-based code development to have ideas examined and refined by the team. It also highlights a core difference between Raceflight and Betaflight, and why Raceflight contributing code to Betaflight doesn't threaten Raceflight's continued existence. Betaflight must support a wide variety of hardware. Raceflight is tailored towards exactly one flight controller. Betaflight is a team-based approach where no idea is sacred and no individual contributor is supreme. Raceflight is more like Kalyn's personal playground, where anything he says, goes.