Holybro Optical Flow sensor (thoneflow) oscillations (on main)

When testing the holybro optical flow driver on main with the gyro bias estimation fixes in #22145 I noticed that there is still severe oscillations in position mode on a ~210mm quad frame with the holybro 6c mini. I am using a vl53l1x rangefinder and the rotation on the optical sensor is confirmed to be correct (notch on the sensor facing aft, sensor rotation set to 0): https://review.px4.io/plot_app?log=94031e37-9350-4b03-a76e-19fdd9cdcf4d

I double and triple checked optical flow orientation and am aware that Y+ direction on the sensor corresponds with X (forward) in NED coordinates for PX4. This oscillation is perhaps not a toilet bowl behavior. On the same frame, flight controller, motor + esc, & receiver I swapped the holybro sensor for the ark flow that has also been updated to recent main for the cannode firmware:


Notice the oscillations don’t have the high amplitude seen in the holybro plots for pitch and roll angle.
FYI the holybro sensor uses the UART thoneflow driver (there are IC’s on the sensor that do conversions I assume). I didn’t see these issues on the SPI pmw3901 driver on a different autopilot, but this autopilot does not have external SPI to confirm so we are stuck with the UART sensor :frowning:

@bresch let me know what you think. Also related but may not apply: @dagar was saying in this PR:

The core issue here is that if there isn’t motion we don’t have a mechanism to know if the current 0 flow readings aren’t stale.

Also see this issue: Holybro UART optical flow (thoneflow driver) severe oscillations position mode [Bug] · Issue #22220 · PX4/PX4-Autopilot · GitHub

hi,Brother, how do you select a position mode if you don’t have a global location