Is it normal if vehicle_vision_attitude_0.q[0] is negative?

Hello,
I just configured the integration between Vicon and PX4.

https://docs.px4.io/master/en/ros/external_position_estimation.html

The mavros can receive the vision_pose in ENU frame. Then I tried a position mode flight test and the position mode has a large drift. I hurried using my RC to make the drone go back to the center of the drone net.

After reviewing the log file, I found that the drone posted a message “CRITICAL NAVIGATION FAILURE - CHECK SENSOR CALIBR” a few seconds after the drone enters the position mode. I think after that message, the drone automatically switched to attitude mode.

I’ve been trying to figure out the reason. I checked the vehicle setup summary which shows the calibration is done. The drone was able to fly in manual mode and attitude mode, so I believe the attitude control loop works fine. The only factor should be the external position feedback from Vicon.

This video shows the input and output of the mavros which I believe the two topics are in ENU frame. mavros input and output in ENU - YouTube

The drone flying video is: Critical navigation failure: position auto changed to attitude - YouTube
Flight log file:
https://logs.px4.io/plot_app?log=fd738dd0-3c53-4911-9379-1e9b256b18a6

I also tried to tune the ekf2-ev-delay parameter:

https://docs.px4.io/master/en/ros/external_position_estimation.html#tuning-ekf2-ev-delay

However, the plot I got is a little weird.

I thought the vehicle_vision_attitude_0.q[0] should be quite close to vehicle_attitude_0.q[0], however, vehicle_vision_attitude_0.q[0] bounces between negative and positive.
Do you think this is normal or indicates the external position feedback is not correct, especially the orientation part?
Thanks,
Bo