Auto-rotation limited to 180° – hardware or software?

Quite plain question:

Once auto-rotation is activated, both the default portrait mode and landscape view are possible. What doesn’t seem possible is portrait mode upside-down.

I wonder if this is for hardware reasons in the gyroscope or if it’s just programmed like that?

The background of my question is that I was thinking allowing upside down portrait mode could be a good workaround for phones with a defect primary microphone (assuming the dialer is ready for portrait mode upside-down).

P.S.: On second thought, the workaround idea is probably not that feasible – the rear/side speaker doesn’t exactly allow for confidential phone conversations. :wink: Nevertheless I would be interested if anyone could answer the basic question.

For Fairphone 1 it is definitely a software restriction. In 2014 I could make a half-broken screen accessible by activating the Gravity Box feature “Allow upside-down display” (or similar). After activating that feature the FP1 allowed upside-down usage of the screen (of course FP1 doesn’t have a software navigation bar, so it was kind of a nuisance).


There’s a property in the Android configuration to allow that:

    <bool name="config_allowAllRotations">true</bool>

And it’s disabled by default in AOSP (changed in 2011 with the commit “Disallow 180 rotation for phones.”)