On Surface Table, Accelerometer reading on Portrait axis for Landscape orientation

I am using Unity 4.3.1f and I recently migrated my car racing game to Microsoft Surface Tablets and Windows PC running Windows version 8.1. My app only runs in landscape orientation and the shared tilt code runs fine both on Android and Windows Phone.

On both surface tablets or Windows 8.1 PCs with acclerometers, I see that the accelerometer input is behaving as if the app is running in Portrait mode. In other words there is a 90 degree offset and so when i hold the device landscape with upward screen orientation, the car turns sharp right. When I change screen orientation to protrait, the car goes straight

I do have Input.compensateSensors set to true however according to documentation this should not have any effect on Windows Store Apps.

Please let me know how to fix this? My accelerometer code is given below:

			var acceleration = Input.acceleration;
			steer = acceleration.x;

Try to set
Input.compensateSensors = true;

As stated in my post, I already have it.

Ah, missed that.
Our testers have confirmed, that sensor compensation doesn’t work for accelerometer. Case 584039.

Will the following work around code be reliable for Metro Apps for this unity version?

            var acceleration = Input.acceleration;
            steer = -acceleration.y;

There is landscape and landscape up side down orientation. Check them both.

Already have them checked :expressionless: