How to get drone current heading?

Hello, I need to get drone’s current heading; currently I’m transforming Quaternions using this code:

friendTelemetry->subscribe_attitude_quaternion([&friendHeading](Telemetry::Quaternion quaternion){
        if(quaternion.w==quaternion.x){
            friendHeading = atan2(2*(quaternion.w*quaternion.z+quaternion.x*quaternion.y),
                                  1-2*(quaternion.y*quaternion.y+quaternion.z*quaternion.z))*(180/M_PI);
            if(friendHeading<0)
                friendHeading+=360;        
    }
});

and it’s not accurate at all… I know there is EulerAngle struct but I don’t know how to get proper data from that…

nevermind, I will modify MAVSDK on my own