Do not understand Gyroscope input

Hi my one and only goal to read how much Mobile is rolled. I have this code:

Debug.Log(gyroInp.attitude);
var rot = GyroToUnity(gyroInp.attitude);
Debug.Log(rot.eulerAngles);

private static Quaternion GyroToUnity(Quaternion q)
{
        return new Quaternion(q.x, q.y, -q.z, -q.w);
}

However I can’t make any sense of the output, when I rotate the phone all values change madly :(. I think my Gyro is ok, as I have played some games using it with no problems. I use Unity 5 remote.

Quaternions are not euler angles. Inverting some of its components will hardly ever have the effect you desire.

Can you be more specific and provide some examples, please?

P.S. Is it normal that Input.gyro.attitude.eulerAngles changes (z growing), even my phone is standing still one the table?