Virtual Reality - Android Gyroscopic Camera - Pitch and Roll Issues.

I am trying to get my gyroscopic camera angles working right. Its hard to find the right combination. Using Galaxy Note 4 else if (Screen.orientation == ScreenOrientation.LandscapeLeft) { quatMult = new Quaternion(1f,1f,0.5f,0f); }

I have been tampering with this on and off. This is my most stable setting so far. When i tilt (roll) my phone either left or right it looks up, then when I tilt my phone up or down (pitch) it rolls left and right. I have everything backwards.
The left and right do seem to work fine though!

Has anyone built a stable Gyroscopic Camera for Andriod?
If so your input would greatly be appreciated. Thanks.

I am using Gyro.attitude too and it is painfull.

I correct the pitch rool issue with this :
public class GyroController : Monobehaviour
private readonly Quaternion baseIdentity = Quaternion.Inverse(Quaternion.Euler(90, 0, 0));
private const float lowPassFilterFactor = 0.2f;

public Quaternion currentRotation;

void Start()
    Input.gyro.enabled = true;

void Update()
    currentRotation = Quaternion.Slerp(currentRotation,
               ConvertRotation(baseIdentity * Input.gyro.attitude), lowPassFilterFactor);

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


BUT I found this gyro fastly returning bad informations.

It is not my phone since many VR games from the store are working perfectly…