Below code I am using for getting the roll, pitch and yaw value.

#include <Wire.h>
#include "NXPMotionSense.h"
#include "MadgwickAHRS.h"

NXPMotionSense motionOut;
Madgwick filterOut1;

void setup()
    filterOut1.begin(100);		//Madgwick Filter

void loop(){
    float ax, ay, az;
    float gx, gy, gz;
    float mx, my, mz;
    float roll, pitch, yaw;
        /* Due to mounting for both the ICs - need to align their axis */
        motionOut.readMotionSensor(ax, ay, az, gx, gy, gz, mx, my, mz);

        filterOut1.update(-gy, gx, gz, ax, ay, az,  mx, my, mz);
        roll = 180 + filterOut1.getRoll();			//Roll : 0-360 [-180 to 180]
	pitch = 90 + filterOut1.getPitch();			//Pitch : 0-180 [-90 to 90]
	yaw = filterOut1.getYaw();					//Yaw : 0-360 [0 to 360]

        Serial.print("Roll: " + String(roll) + " Pitch: " + String(pitch) + " Yaw: " + String(yaw));

I am getting the values for Roll, pitch and yaw. Here I am attaching the serial logs of roll, pitch and yaw data in text file.rollpitchyaw.txt
The data I am getting from the propshield for roll, pitch is stable but the value of yaw is continuously decreasing.

I am using Paul's NXPMotionSense Library with Teensy's propshield and Teensy 3.6 board.
Here I am attaching the picture for in which position propshield I am using.
Click image for larger version. 

Name:	IMG_20191216_174719.jpg 
Views:	7 
Size:	241.4 KB 
ID:	18450
How can I get the stable value of yaw also? Kindly help me to how to get the stable value of yaw.

Need help: @MichaelMeissner, @manitou, @defragster, @PaulStoffregen, @KurtE, @mjs531