I can possibly help you,
Your choice of BMI088 is acceptable, given its performance and temperature compensation on a horizontal surface. Each filter has its strengths.
Kalman Filter (KF)
This filter is known for its optimal performance in systems with well-defined noise characteristics. It's excellent for linear systems but can be computationally intensive.
Complementary Filter
It is simpler and faster, but it blends accelerometer and gyroscope data but might not offer the precision you need in dynamic conditions.
Madgwick Filter
It is popular in the community for its ease of implementation and exemplary performance in many scenarios, especially for lower computational power requirements.
Given your requirement for 0.5° accuracy in a dynamic environment, I recommend an Extended Kalman Filter (EKF) instead of the traditional Kalman Filter. The EKF can handle non-linearities better, making it more suitable for real-world IMU data where perfect linearity is rare.
The EKF is designed to manage the non-linearities in IMU data, providing more accurate estimates.
It adjusts to changing conditions dynamically, maintaining accuracy even in less predictable environments like farmland.
Over the past seven years, I have developed and refined an EKF-based solution that has proven highly effective in various challenging environments. My experience extends beyond EKFs to include Unscented Kalman Filters (UKFs), Square Root Unscented Kalman Filters (SUKFs), and other higher-order fusion algorithms. These advanced methods leverage sophisticated mathematical models for even greater accuracy and reliability.
I suggest running a comparative analysis of the three filters you mentioned alongside the EKF.
Implement all four filters (Kalman, Complementary, Madgwick, and EKF) to process the same sensor data in real time. This will allow you to compare their performance directly.
Test the computational requirements of running all filters simultaneously. Depending on your hardware, you must optimize the code or choose the most efficient filter.
Define clear performance metrics, such as accuracy, computational load, and responsiveness. Use these to evaluate which filter best meets your requirements.
What I would suggest is as follows.
Implement the filters and run them parallel to the test data.
Conduct tests in the environment (farmland) to gather real-world data.
Compare the outputs using the defined metrics and choose the filter that best balances accuracy and efficiency.
Failing that, leveraging my EKF-based solution and my expertise in UKFs, SUKFs, and other higher-order fusion algorithms can provide several benefits for your project.
Achieve the 0.5° accuracy you require, even in dynamic and unpredictable environments.
My solutions have been tested and validated across various applications, ensuring they meet high-performance standards.
With my extensive experience, I can offer valuable insights and support throughout the implementation process, helping to streamline development and optimize outcomes.
By following this approach and considering my EKF-based solution, you can ensure that you select the most suitable filter for your specific application, providing reliable and accurate pitch and roll measurements.
Feel free to reach out if you need further assistance with the implementation or have any questions.