They don’t go up and down, the just go up, by a fairly consistent amount each time, while stationary. Which seems strange. I mean you don’t actually seem use the values. I’m curious why you are tracking the combined total rather than just the current rate_gyr * DT.
I know CFangleX and CFangleY are the values I am after (or kalmanX / kalmanY with the other sample code), and they seem sane.