AKF of 3DM CX5-25 AHRS showing weird behaviour?

I am actually communicating with the INS through UART from STM32 MCU.
I perform the following initialisation and use polling mode to get updates from the AHRS. I went for polling mode, because I was using FreeRTOS and was worried interrupt will take lot of CPU time .
Initialisation procedure as follows :

  1. Set Idle Mode.
  2. Disable IMU and AKF stream.
  3. Capture Gyro bias
  4. 20 secs delay.
  5. Set IMU msg format.
  6. Set AKF msg format.
  7. Save current msg format.
  8. Reset AKF filter.
  9. set heading zero.

my issue is roll and yaw are correctly showing the change when I change the orientation of the AHRS unit. However when I change PITCH to 90 degrees. I get proper reading in Pitch, But yaw and roll are also significantly changing , this was not the case for pitch and yaw.

Any advice on how to resolve this ?