I have been reviewing the attitude estimator implementation in the firmware code (
estimator.cpp) and the docs @ https://docs.rosflight.org/algorithms/estimator .
I think that there is place for optimization in the implementations of the angular velocity integration, I would like to make a pull request but for measuring the improvement (and to be sure it is significant) I am interested into know how did you measured the time performances presented, i.e., the 90us in the Estimator::integrate_angular_rate function and the 12 us in the smoothed_gyro_measurement() function.
At the moment i did not have access to neither F1 or F4 controllers, so I am wondering also if in the SITL implementations the estimator code runs as it is (i read somewhere that the simulation was simplified, but i do not know up to which level)
Congrats for the project.