Using EKF Affinity Where is the switched data logged?

I’m going to test out EKF Affinity with two GPS units attached to my Pixhawk Mini 6C. I’m planning to use separate GPS and Compass for each IMU, so I’ll set the EK5_AFFINITY to 5. Hopefully, if the EKF for one GPS/IMU becomes unstable, then Ardupilot will switch to the other IMU/GPS.

Can someone explain how the lane switched data is logged? I can see that there are text messages in the log whenever a lane is switched and I can see that there is separate XKF1 position and attitude data for each IMU.

However, is there somewhere where the “switched” data is recorded? i.e one message type that shows the position and attitude data being used by the controller?

OK. Just spent a couple of hours analysing logs with lots of EKF failures and lane switching.

Here’s my view on the Attitude messages:

ATT appears to be the primary data source for roll, pitch and yaw. As default, ATT gets the data from a healthy EKF3. If the EKF switches over to a different IMU (when there is a lane change), then the ATT will follow that new EKF lane. If both EKF3 lanes becomes unhealthy then ATT gets the data from DCM.

AHR2 seems to ignore lane switches, but jumps between EKF1/IMU0 and DCM. It never gets data from EKF1/IMU1. It seems to do the opposite to ATT - If ATT is using EKF, then AHR2 gets it’s data from DCM. So I don’t know what that’s doing…

Is that a fair summary?

Not sure about the position data.

GPS.Alt does it’s own thing

AHR2.Alt appears to follow Baro.Alt.

XKF1.PD appears to closely follow GPS

POS.Alt mostly follows EKF, I think does some lane switching.

Anyone have any further info?