Auto-Rotate not working

phlashbios

Member
Jun 11, 2012
7
3
Hi, hoping someone can offer some advice/help here. First, my setup:
A500 with the v7 Bootloader, Thor's R169 Rom, Recovery 1.7.3 all of which are working just fine and Thor's Rom is incredibly good.
The problem I have, is the auto-rotate function does not work. I have tried all the suggested fixes I can find on both here and the XDA forums and none of them work. I have also checked that the hardware switch is OK and it is functioning as it should. This problem has only appeared since installing ICS and applies to any Rom I try, with the auto-rotate not working in any Rom, or with any bootloader.
I have tried different bootloaders, different roms, full wipes, full formats of all partitions, factory resets, the pinhole reset and a number of different auto-rotate applications from the market. None of them make the slightest bit of difference and auto-rotate continues to be non-functional. Logcat shows continual "MLUpdateData error (code26)" errors with the hardware switch in the on position and when I then switch it to the off position, shows "Error: illegal state transition from ML_STAT_SERIAL_CLOSED to ML_STATE_DMP_OPENED", followed by "vendor/3rdparty/Invensense/libservers/mlsdk/mllite/mldmp.c|MLDmpStop|161 returning 25

I am satisified from using a program called AdvancedTools from the market, that the sensors are present and responding to restart requests. What they are not doing is any auto-rotate function and nothing I have tried seems to change that.

To a layman like me, it seems like it may be a driver issue or perhaps a kernel issue. Anyone here able to help at all please ?
:confused:
 

Mrhelper

Senior Member
Apr 29, 2012
216
57
You can read more about this in the following post: http://www.androidtablets.net/forum...ice-cream-sandwich-bug-a500-3.html#post208809

What I have seen appears to be the result of a race condition that affects only some a500s running ICS. My suspicion is that the boot sequence was reordered or timing shortened relative to HC, and is now just a little too fast for some a500 mpu3050s to complete powerup. I've not gone back to take the time to analyze it further because the hardware reset works for me, and the problem I see is intermittent. I have found that waiting at least 5 minutes between power down and power up after warming up the tablet often prevents the problem, but that leaving the tablet off all night would often trigger the problem. For me so far, the pinhole reset always results in proper initialization of the sensors, so I have not yet had adequate incentive to go through the effort to build my own ROM with a tweaked boot sequence. I'm generally pleased with the stock ROM and this for me is only an occasional inconvenience.

The stock build info for my a500 is as follows in case you want to try installing it. It should still be available on one of the update sites.
app_104@android:/ $ cat /system/build.prop
# begin build properties
# autogenerated by buildinfo.sh
ro.build.id=IML74K
ro.build.display.id=Acer_AV041_A500_1.033.00_PA_CUS1
ro.build.version.incremental=1333727375
ro.build.version.sdk=15
ro.build.version.codename=REL
ro.build.version.release=4.0.3
ro.build.date=Fri Apr 6 23:50:30 CST 2012
ro.build.date.utc=1333727430
...

Another a500 owner answered one of my posts on this and said that when he installed a ROM other than the stock version, he could not clear the problem at all. When he restored to the same stock ROM that he had been using, and that I am still currently using, he could again clear the condition by using the pinhole reset. This suggests that some custom or alternate ROMs may have had a little more trimmed from the startup sequence, and that may prevent the mpu3050 on some a500s from ever winning the race. That is just a guess at this point. In that light, you may have some luck if you try a few other ROMs.

This is from kernel log when the mpu3050 init fails on my a500:

<6>[ 2.609434] i2c i2c-0: Installing Compass irq using 301
<4>[ 2.609706] i2c i2c-0: mpu3050: No Pressure Present
<4>[ 2.609914] tegra-i2c tegra-i2c.0: I2c error status 0x00000008
<4>[ 2.610004] tegra-i2c tegra-i2c.0: no acknowledge from address 0x68
<4>[ 2.610163] tegra-i2c tegra-i2c.0: Packet status 0x00010009
<3>[ 2.611283] mldl_cfg:/home/pandora/pandora_build_root/main_rom/android/PicassoV041_A500_mdrr/kernel/drivers/misc/mpu3050/inv_330/mldl_cfg.c|MLDLPowerMgmtMPU|579 returning 135
<3>[ 2.611520] mldl_cfg:/home/pandora/pandora_build_root/main_rom/android/PicassoV041_A500_mdrr/kernel/drivers/misc/mpu3050/inv_330/mldl_cfg.c|mpu3050_open|1225 returning 135

You can see that the first error is returned from the 2-wire bus at 2.6099 seconds into the boot. I would be interested to see the same point in your kernel log (dmesg) to understand if the time is much less. If it is longer, then my theory of a race condition is less likely true, and it may be worth looking closer at the power down -- i.e. to see if it is possible that this is caused by the device being left in a corrupt state at power down.

If you never see your sensors initialize properly, even with the stock ICS ROM (or HC if you try that), then it seems possible that you may have a fried MPU, and are not encountering the exact same cause as the problem I see.

I suspect that none of your motion sensors are working at all if when see the error code 26's. You can verify this by installing Advanced Tools from the Play Store.

If you make any progress on this, I'd sure like to hear about it. So far, it has not appeared to affect enough people to get much attention.
 
Last edited:

phlashbios

Member
Jun 11, 2012
7
3
Many thanks for your response Mr.Helper.

OK, here's the current situation. I installed a stock HC ROM (Acer_A500_4.010.38_COM_GEN1) but left the v7 Bootloader still in place. ROM booted fine and works, but still no sensors working.


I then reflashed the Bootloader with a stock HC Bootloader and all the sensors work again.


This is clearly a Bootloader issue by the looks of it.


I am currently upgrading the Honeycomb 3.1 ROM as an OTA to 3.2.1 and will then update all apps, check all is working again and if so, install the Acer Update Updater and then do the OTA upgrade to ICS and check if all working again on stock ICS. Will report back later as to how things go.
 

phlashbios

Member
Jun 11, 2012
7
3
OK, latest update following on from above.

Installed the Acer Update utility from the Marketplace

Updated OTA to stock 3.2. No issues, all working including sensors.
Updated OTA to stock 3.2.1. No issues, all working including sensors.
Updated existing systems Apps to current versions. No issues, all working including sensors
Updated OTA to stock ICS. Tablet boots, all OK and working, including sensors.
Reboot tablet, get a brief message that says Bootloader updating and then it boots into ICS. Sensors now stop working and no amount of fiddling with the rotation lock or factory resets or pinhole resets will make the sensors work again.

This to me is clearly an ICS Bootloader issue ? Anyone disagree ?

How on earth do I/we get this fixed ?
 

phlashbios

Member
Jun 11, 2012
7
3
Well, after many hours of messing about, I have managed to get Thor's R169 ROM working and with the sensors working too. It has however required the use of the HC 3.01 Bootloader to have the sensors still working.


For the benefit of others who are facing similar difficulties, can I suggest the following course of action:


Install the APX drivers if you haven't already got them on your PC.


1. Put Thors ROM and Gapps on your SD card or on the Tab's own internal storage
2. Downgrade your existing setup to the unstable 3.01 Honeycomb
3. Use the AfterOTA v1.7 tool to install CWM on the old Honeycomb setup.
4. Boot into CWM Recovery and do the usual Factory Reset and wipe everything you can, including the Flexrom, Dalvik etc.
5. Install Thors ROM from your SD card/storage
6. Install Gapps from your SD card/storage
7. Reboot the tab into normal mode


Voila ! A working Thor ROM with working sensors.


What all my efforts tell me is that there is an issue with the ICS Bootloader and some tablets. Whether it is causing a race condition and not giving drivers time to start up, I am not sure, but restarting the drivers for the sensors makes no difference once the ICS Bootloader is installed. Any ICS Bootloader, including the stock one and all of Skrilax's from versions 3 through to 8, all result in no sensors working for me. This is clearly nothing to do with Skrilax, it is something inherent in the behaviour of the ICS Bootloaders.


For people using ICS ROM's other than Thor's, you will need to check whether they will behave with a HC Bootloader before installing them.


I can only pray that Thor and others continue to release ICS ROM's that are compatible with HC Bootloaders while someone, hopefully is able to figure out what is causing the ICS Bootloader issue.


Thanks all for those that offered advice and guidance. Your help is and will continue to be appreciated.
 

Mrhelper

Senior Member
Apr 29, 2012
216
57
OK, latest update following on from above.

Installed the Acer Update utility from the Marketplace

Updated OTA to stock 3.2. No issues, all working including sensors.
Updated OTA to stock 3.2.1. No issues, all working including sensors.
Updated existing systems Apps to current versions. No issues, all working including sensors
Updated OTA to stock ICS. Tablet boots, all OK and working, including sensors.
Are you saying that the first boot into ICS ran fine, where you were actually running ICS without ay problems?

I don't recall the second bootloader update step on my ICS load, as you describe below, but I was not expecting some problem so I was not looking very closely. If that is what happened -- i.e., an update of the bootloader occurred after the ICS install and broke the sensor init -- then it seems that they may have done some post ICS init recalibration step to optimize the boot speed, and botched that by making the timing too short, or by skipping some hardware reset/quiescence step. This appears to affect some a500s worse than others, and some not at all. I just saw a few more complaints about this on another forum (one with evidence of the error code 26s) and they seem to be coming in at a higher rate now that more people are finally updating to ICS, discovering the problem, and learning how to check for the errors.
Reboot tablet, get a brief message that says Bootloader updating and then it boots into ICS. Sensors now stop working and no amount of fiddling with the rotation lock or factory resets or pinhole resets will make the sensors work again.

This to me is clearly an ICS Bootloader issue ? Anyone disagree ?

How on earth do I/we get this fixed ?
It's hard to disagree with the results of such a well controlled test. Have you taken this up with Acer now that you have all this information available? Just skip the part about the root and other bootloaders, and tell them about the post ICS bootloader update step you observed. I assume you're back to 100% pure stock now anyway. You've really made my day on this find in any case. I was beginning to think that only 2 or three people in the world were seeing this, and that I had already conversed with them. What you have found makes it much more clear that the problem only occurs with ICS, and that it is clearly associated with the boot (and not some shutdown or other cause).

I see we were posting your Thor's ROM solution at the same time as I was writing this, and you won... yet another race condition. Great work and thanks!
 
Last edited:

phlashbios

Member
Jun 11, 2012
7
3
Are you saying that the first boot into ICS ran fine, where you were actually running ICS without ay problems?

I don't recall the second bootloader update step on my ICS load, as you describe below, but I was not expecting some problem so I was not looking very closely. If that is what happened -- i.e., an update of the bootloader occurred after the ICS install and broke the sensor init -- then it seems that they may have done some post ICS init recalibration step to optimize the boot speed, and botched that by making the timing too short, or by skipping some hardware reset/quiescence step. This appears to affect some a500s worse than others, and some not at all. I just saw a few more complaints about this on another forum (one with evidence of the error code 26s) and they seem to be coming in at a higher rate now that more people are finally updating to ICS, discovering the problem, and learning how to check for the errors.

It's hard to disagree with the results of such a well controlled test. Have you taken this up with Acer now that you have all this information available? Just skip the part about the root and other bootloaders, and tell them about the post ICS bootloader update step you observed. I assume you're back to 100% pure stock now anyway.


Yes, first boot into ICS worked fine with the stock ICS and stock ICS Bootloader, and the sensors were cunctioning. And yes, I got the message on second boot as described. I am inclined at this moment, to agree with your speculation about a boot optimisation process occurring on second boot.

You will no doubt see the contents of my other post. This solution definitively works for me, and all is well, but a HC 3.01 Bootloader sitting under a 4.0.4 ICS ROM is undoubtedly sub-optimal, and the entire process is not for the faint hearted and has taken me many hours to arrive at this particular solution. I would imagine many people upgrading their tablets from HC to ICS are going to struggle with the plethora of tools, ROM's, Drivers, APX mode working etc. etc.

I will contact Acer, because it is evident that even if it isn't the Bootloader itself that is "faulty", it is triggering issues elsewhere and needs fixing. Whether I will get any joy with Acer is in doubt however, as I bought my tablet second hand and have no warranty. I think the XDA community or someone like Skrilax or Thor, have a better chance of finding a solution to this than anyone else, but whether they have the time or inclination to look at it, is quite a different matter :)
 

Mrhelper

Senior Member
Apr 29, 2012
216
57
Yes, first boot into ICS worked fine with the stock ICS and stock ICS Bootloader, and the sensors were cunctioning. And yes, I got the message on second boot as described. I am inclined at this moment, to agree with your speculation about a boot optimisation process occurring on second boot.

You will no doubt see the contents of my other post. This solution definitively works for me, and all is well, but a HC 3.01 Bootloader sitting under a 4.0.4 ICS ROM is undoubtedly sub-optimal, and the entire process is not for the faint hearted and has taken me many hours to arrive at this particular solution. I would imagine many people upgrading their tablets from HC to ICS are going to struggle with the plethora of tools, ROM's, Drivers, APX mode working etc. etc.

I will contact Acer, because it is evident that even if it isn't the Bootloader itself that is "faulty", it is triggering issues elsewhere and needs fixing. Whether I will get any joy with Acer is in doubt however, as I bought my tablet second hand and have no warranty. I think the XDA community or someone like Skrilax or Thor, have a better chance of finding a solution to this than anyone else, but whether they have the time or inclination to look at it, is quite a different matter :)
I agree completely, and I thank you again for your hard work on further isolating the cause of this problem.
 

phlashbios

Member
Jun 11, 2012
7
3
Lastly, just wanted to say that I have posted my "solution" (for want of a better expression) on both the Tegraowners and the XDA forums, as I had been replicating this thread in those places too. Hopefully anyone searching will come across it in one of these places :)
 

Douvie

Senior Member
Jun 10, 2011
1,030
71
That is interesting. With my OTA upgrade to ICS I did not get a boot loader upgrade after ICS was installed.
I'm going to check my bootloader version.

Update:

I just checked the LAUNCHER version

4.0.3 - 133303261

which is the same as the ro.build.date.utc
And for interest sake the SYSTEMUPDATER version

2.2.120307.1
 
Last edited:

K9CHP

Member
Aug 3, 2011
46
4
My A500 is also plagued by thescreen rotation problem with the only solution to turn it off and leave it off for some time. Playing with the screen rotation switch did not help. Today, I found, by sheer luck, that touching the icon for the tv.com app (free in the Play Store) gives an IMMEDIATE fix to the rotation lock!

I hope this will help the rest of us who have this problem.

Amir K9CHP Sent from my A500 using Android Tablet
 

Mrhelper

Senior Member
Apr 29, 2012
216
57
My A500 is also plagued by thescreen rotation problem with the only solution to turn it off and leave it off for some time. Playing with the screen rotation switch did not help. Today, I found, by sheer luck, that touching the icon for the tv.com app (free in the Play Store) gives an IMMEDIATE fix to the rotation lock!

I hope this will help the rest of us who have this problem.

Amir K9CHP Sent from my A500 using Android Tablet
It's great to hear that you've resolved the problem that you were seeing. Unfortunately, that solution will not work for my tablet or for anyone experiencing the sensor init problem described in this post. Your problem must have a different cause than described here, where the motion sensor initialization fails completely at boot time. This device initialization problem occurs when the kernel is booting, and cannot be resolved without booting again. It prevents any/all use of the motion sensors for various games, etc., and also prevents sensor-based detection of tablet rotation used to automatically change screen orientation. Note that this problem never prevented apps from rotating the screen, but prevented the motion sensors from communicating changes in physical device orientation to the kernel. If you did not observe "MLUpdateData error (code 26)" messages in your system log while you were encountering the problem you saw with screen rotation, then you were probably encountering a different issue.

Regardless of all that, thanks for posting this, and hopefully what you have discovered will help someone who was encountering the same issue that you were. There are a lot of devices out there, and it certainly seems possible that any given symptom can have more than one cause.
 
Last edited:

wilsr

Member
Jul 5, 2012
11
1
I have had the same problem since the ICS upgrade (I should say "upgrade" in quotes, because it did nothing for me except make me angry because so many little things changed for no reason. but that's by the bye...)

I can't follow any of the esoteric posts about this, but have returned my tablet to Acer Australia with an instruction to FIX the fault. I chose Android over Apple for several reasons, but do wonder if I made the right choice if Android is going to keep installing "upgrades" that stop the thing working properly.
 
Top