Related
...so I am compelled to root. ALL I care about is unlocking that other 256 (himem, I think it's called) for use and apps2sd would be nice but not necessary. Any other practical enhancements would be welcome. I'm using build ERE27. So which ROM fits that description best and where are the easiest instructions with links to download? I have been all over this and other sites and there are so many tutorials and none seem identical. Try Youtube and you know what you get? The most popular root tutorial (by far) flat out tells you from the start "This is not for beginners". Well, where the **** is the one for the beginners? I've jailbroken Iphones and flashed ROM's on to WM devices but I've never seen a more convoluted method to implementing a ROM replacement for a phone. Step by step (with backup reminders at critical times during process) would be great.
For example (from CyanogenMod):
Before continuing, you should first copy all the necessary files to your SD Card. Doing so will make the entire process much easier and faster.
Files you will need:
Download the latest release of CyanogenMod for the Nexus One and the Google Addon from http://forum.xda-developers.com/showthread.php?t=623496
Download the latest release of Amon_Ra's Nexus One Recovery Image from http://forum.xda-developers.com/showthread.php?t=611829
Rename Amon_Ra's recovery file "Recovery.img", and copy all three files to the root of your SD Card
Click to expand...
Click to collapse
I'm sorry, did you not just provide me with 2 files to download? Where does the third come from? And why does every "Link" lead to a full page with 3700 more links rather than just a freaking file to download??
Even Droiddog uses a Mac during the process because a PC would have been far too convenient for the masses (Plus I don't want the Desire ROM-too borky).
Preparing myself beforehand (going through the motions of the root without rooting) led to me opening 7 windows instead of direct file downloads. 7 Windows. 7. Does it really have to be this arduous?
I'm sorry for the frustration but deciding to root was suppose to be the hard part. Now I'm just overwhelmed with the unnecessary difficulty of it all. In truth, I'll probably be posting "thanks" from a rooted N1 by tomorrow and wondering what was so hard about all of that.......or I'll be crying over a $530 brick in my hands.
I believe Cyanogen mod (latest version in the link) includes the himem by default, just install that and you'll get the more available RAM (unless there is more steps to the process), I do not use Cyanogen.
Please note this is not the iphone OS we are dealing with here, things will not be as simple as a button press.. I honestly do not know what a "noob guide" is when it comes to Android, it all seems so straightforward to me... If I rooted my G1 and I'm only 13, not even being a nerd at that (wouldn't care if I was though..), I would imagine it not being hard for anyone..
At least the ram thing can be fixed with an ota. It looks like the multitouch problem is hardware. I feel like the ram, choppy scrolling, weird picture quality and image issue should really be solved by now by official update. I can see stringing us along for software upgrades like cupcake, new market, etc...but software fixes should be released asap. Any eta on the nexus 2?
DMaverick50 said:
At least the ram thing can be fixed with an ota. It looks like the multitouch problem is hardware. I feel like the ram, choppy scrolling, weird picture quality and image issue should really be solved by now by official update. I can see stringing us along for software upgrades like cupcake, new market, etc...but software fixes should be released asap. Any eta on the nexus 2?
Click to expand...
Click to collapse
Choppy scrolling is just that launcher2, and has nothing to do with the actual phone hardware which is a good thing. I went back to an older 2.0 launcher that is MUCH MUCH faster with continuous scroll.
I will switch if continuous scroll is added to launcher2, but yeah that choppiness stinks
It's a bug the iPhone had its bugs too. One of the great things about rooting your phone is not having to wait for Google to fix bugs the devs here do it nice and quick. I waited a month then rooted my phone and I am happy I did.
Prod1702 said:
I waited a month then rooted my phone and I am happy I did.
Click to expand...
Click to collapse
Does the extra 256 of ram make a noticeable difference in the overall speed and experience of the device (you should know having gone a month with stock on it)?
I didn't know CM rom unlocked the RAM you are talking about. I thought we were still waiting on an update from google for that.
jz9833 said:
I didn't know CM rom unlocked the RAM you are talking about. I thought we were still waiting on an update from google for that.
Click to expand...
Click to collapse
Is this true?
CM mode unlocks a good upgrade portion of the ram, for example with 10 apps Open I used to have 60 or less MBS left of ram, after CM upgrade with Kspec theme, i have 10 similar apps open and have 200+mbs of ram left, dont believe me? I actually made a video while still pretty shocked, check it, might as well rate and sub. I think I had 230+mbs while 10-12 apps running
www.youtube.com/user/exclusivegslick = my only video.
Ok to answer a few of your questions:
Does CyanMod include more ram? YES. This bump up in ram is included in the Kernel, and all of the newest roms have this including the undervolted/overclocked kernel's as well.
You get about 400mbs after the free up.
The Three Files:
Google had to go after Cyanogen so he HAD to seperate "google apps addon" from his mod. OTHER ROMS will include Google apps in most cases. So CYanogenmod = 2 files.
Ok here is a quick summary that will hopefully help the other guides make more sense. USE THE OTHER GUIDES STILL this is a conceptual map.
1) Install Android SDK to your COMPUTER which gives you ADB and the windows drivers. The drivers can also be downloaded via another thread. Search drivers/sdk drivers/adb drivers etc..
2) Download/install Fastboot to your COMPUTER
3) Download Amon Ra Recovery 1.6.3 to your Fastboot FOLDER on computer
4) Download CyanogenMOD 5.0.4.1 to the ROOT(VERY TOP LVL) directory of your SD CARD.
5) In same post, Download Google APPS 36ERE thing to ROOT of your SD CARD.
*This gives you all of the proper stuff. Make sure you get ADB SDK drivers loaded I stumbled here and wasted a couple of hours*
6) Unlock bootloader via fastboot. This is a command given from your Computer in DOS prompt in the folder you created with fastboot stuff. Your phone is connected and you are in the BOOTLoader. READ the guides for exact directions or the androidandme video, or countless other things.
7) Install Amon Ra's Recovery while still in FASTBOOT from a command via your computer. Follow guides or even first post on Amon Ra's Thread.
8) Now that you are unlocked. Go into RECOVERY which is done via the bootloader. Guide will give exact direction.
9) **** MAKE A NANDROID BACKUP **** just get in the habit. It is your FAIL SAFE. This in theory makes a nandroid backup of your "stock but unlocked" setup. I always "RE" nandroid backup before making changes or when I "Like" my setup. Command is in recovery.
10) WIPE data via recovery command.
11) FLASH from ZIP - pick Cyanogenmod5.0.4.1 (file you dl'ed to your sd card)
12) Flash from ZIP - GAPPS(googleapps) (file you dl'ed to your sd card)
REBOOT the phone. VOILA. Your done.
Important notes. If you decide, IFFFF, to update the radio. NEVER EVER EVER EVER pull the battery. MD5CheckSUM the radio download. and Repeat NEVER EVER EVER EVER pull the battery until the radio is entirely installed. It can take awhile. This is how you BRICK your phone.
Anyways. that is a real high lvl overview but maybe puts things in perspective easier.
btw you actually have less than half of the total RAM & ROM usable on a stock n1.
I would love to post a cyanogen guide...but haven't rooted yet. I believe he has a wiki with steps too.
britoso said:
btw you actually have less than half of the total RAM & ROM usable on a stock n1.
I would love to post a cyanogen guide...but haven't rooted yet. I believe he has a wiki with steps too.
Click to expand...
Click to collapse
Same here. I'm temped every day to root and unlock the benefits, but I don't know if it's worth voiding my warranty :\
I know what you mean with the "this is not for beginners", it was annoying because, even cyanogen had to unlock his first android phone some time. I followed that guide anyway, after doing as much research as possible. It didnt work though, i could not go straight from unlocking the bootloader to installing amon_ra's recovery, i had to install superboot first. I was hoping for a 30 minute root job, but it ended up taking about 4 hours all up.
I think the stock android kernel is .29 Which only recognises 256mb ram, cyanogen's mod is on the .32 then the .33 kernel which is a highmem kernel, by flashing cyanogenmod you are automatically unlocking the extra ram, no other work is required.
Also, i would suggest sticking with the ERE27 radio, i personally have no problems with reception with it, also if you don't flash the radio, your chances of bricking your phone are very very very low. If you want to do the radio, you can flash it later, when you are more experienced.
seanowns said:
The Three Files:
Google had to go after Cyanogen so he HAD to seperate "google apps addon" from his mod. OTHER ROMS will include Google apps in most cases. So CYanogenmod = 2 files.
Click to expand...
Click to collapse
I downloaded the Android SDK
2) Download/install Fastboot to your COMPUTER
Click to expand...
Click to collapse
Where is fastboot?
Do I have to do this? : (from Cyanogen's Wiki)
Instructions from Android Developers and ADB, Fastboot, and Nandroid for Noob
Download the latest Android SDK.
Unzip to C:\AndroidSDK
Right-click on (My) Computer, and select Properties
Go to Advanced settings
XP: Click the Advanced tab
Vista/7: Click Advanced system settings on the left
Click the Environment Variables button
double-click on Path (under System Variables)
Add the full path to the tools/ directory:
C:\AndroidSDK\tools\
(make sure a semicolon ( separates this new path from all the others) Latest windows version appears to need: "C:\AndroidSDK\android-sdk-windows\tools", install location may have changed. (sorry I don't know how to format this correctly!)
Run C:\AndroidSDK\SDK Setup.exe
If it gives you an error go to settings and click on "Force http//....."
Unselect all options except for the USB driver
If you can't get the setup to work, download the USB-DRIVERS folder - HERE (Windows XP/Vista/Windows 7)
On your phone, click Settings > Applications > Development and make sure USB Debugging is on.
Plug your phone into your computer via USB cable (it needs to be on). It should say installing drivers if using Windows.
After it installs the drivers, goto the Start menu and type cmd into the search bar (Vista or higher) or click Run then type in cmd (XP) to open the command prompt.
Type the following into the command prompt window:adb devices
You should see a serial number pop up, it’s the serial number of your phone. This means you are all set. If you do NOT see a serial number, then we need to reinstall the drivers.
Download USBDeview
While the phone is still plugged in, open USBDeview and sort by manufacturer. Find all the HTC/Android drivers and uninstall them all. (Windows Vista requires program to be run as an administrator, otherwise files won't uninstall.)
Once all have been uninstalled, unplug the phone from the USB cable and plug it back in.
The correct drivers should reinstall automatically (check the drivers as they are installing, one should say ADB Device driver).
To check, go to Devices in your Start menu then click on the “Android Phone”. Click on the Hardware tab, and check the list of drivers for ADB Interface under Type.
Done! Now you can use ADB to alter your phone from your computer.
I have Amon RA Recovery Image.
4) Download CyanogenMOD 5.0.4.1 to the ROOT(VERY TOP LVL) directory of your SD CARD.
Click to expand...
Click to collapse
Please go to the Cyanogen Page and tell me where that is. The only link that states CyanogenMOD 5.0.4.1 will lead to another tab opening with the exact same page as the one you just left. Check for yourself: http://forum.xda-developers.com/showthread.php?t=623496
5) In same post, Download Google APPS 36ERE thing to ROOT of your SD CARD.
Click to expand...
Click to collapse
Is this the file underneath the CyanogenMOD that is named Google ION? It does the exact same thing that the CyanogenMOD file does when you click it. Re-opens that same page in another browser.
I have no problem following the instructions once there is a clear link to the files one actually needs to complete this process. I'm not trying to be difficult, the ability to root to Cyanogen on xda developers is, right now, broken.
whodatfever said:
I downloaded the Android SDK
Where is fastboot?
Do I have to do this? : (from Cyanogen's Wiki)
Instructions from Android Developers and ADB, Fastboot, and Nandroid for Noob
Download the latest Android SDK.
Unzip to C:\AndroidSDK
Right-click on (My) Computer, and select Properties
Go to Advanced settings
XP: Click the Advanced tab
Vista/7: Click Advanced system settings on the left
Click the Environment Variables button
double-click on Path (under System Variables)
Add the full path to the tools/ directory:
C:\AndroidSDK\tools\
(make sure a semicolon ( separates this new path from all the others) Latest windows version appears to need: "C:\AndroidSDK\android-sdk-windows\tools", install location may have changed. (sorry I don't know how to format this correctly!)
Run C:\AndroidSDK\SDK Setup.exe
If it gives you an error go to settings and click on "Force http//....."
Unselect all options except for the USB driver
If you can't get the setup to work, download the USB-DRIVERS folder - HERE (Windows XP/Vista/Windows 7)
On your phone, click Settings > Applications > Development and make sure USB Debugging is on.
Plug your phone into your computer via USB cable (it needs to be on). It should say installing drivers if using Windows.
After it installs the drivers, goto the Start menu and type cmd into the search bar (Vista or higher) or click Run then type in cmd (XP) to open the command prompt.
Type the following into the command prompt window:adb devices
You should see a serial number pop up, it’s the serial number of your phone. This means you are all set. If you do NOT see a serial number, then we need to reinstall the drivers.
Download USBDeview
While the phone is still plugged in, open USBDeview and sort by manufacturer. Find all the HTC/Android drivers and uninstall them all. (Windows Vista requires program to be run as an administrator, otherwise files won't uninstall.)
Once all have been uninstalled, unplug the phone from the USB cable and plug it back in.
The correct drivers should reinstall automatically (check the drivers as they are installing, one should say ADB Device driver).
To check, go to Devices in your Start menu then click on the “Android Phone”. Click on the Hardware tab, and check the list of drivers for ADB Interface under Type.
Done! Now you can use ADB to alter your phone from your computer.
I have Amon RA Recovery Image.
Please go to the Cyanogen Page and tell me where that is. The only link that states CyanogenMOD 5.0.4.1 will lead to another tab opening with the exact same page as the one you just left. Check for yourself: http://forum.xda-developers.com/showthread.php?t=623496
Is this the file underneath the CyanogenMOD that is named Google ION? It does the exact same thing that the CyanogenMOD file does when you click it. Re-opens that same page in another browser.
I have no problem following the instructions once there is a clear link to the files one actually needs to complete this process. I'm not trying to be difficult, the ability to root to Cyanogen on xda developers is, right now, broken.
Click to expand...
Click to collapse
Cyanogen has moved the download to the CyanogenMod web page.
If you have sdk, and fastboot, on you machine and you have already put on amon-ra recovery, then you should be set to go.
Go to Cyanogen Mod.com and click the link to download the latest stable release. If you are in the US. I recommend that you get the new ERE36B radio. You should flash it as well. Just read up on flashing radios and plug in your phone, dont pull the battery during the radio flash and always md5sum a radio image no matter what. The radio is the only area where flashing has the potential to be dangerous.
Good luck and welcome to the Cyanogen World, you will never go back!
Gr8gorilla said:
Cyanogen has moved the download to the CyanogenMod web page.
If you have sdk, and fastboot, on you machine and you have already put on amon-ra recovery, then you should be set to go.
Go to Cyanogen Mod.com and click the link to download the latest stable release. If you are in the US. I recommend that you get the new ERE36B radio. You should flash it as well. Just read up on flashing radios and plug in your phone, dont pull the battery during the radio flash and always md5sum a radio image no matter what. The radio is the only area where flashing has the potential to be dangerous.
Good luck and welcome to the Cyanogen World, you will never go back!
Click to expand...
Click to collapse
What is the difference between the Cyanogen's N1 Addon which I am getting from this tutorial:
http://androidandme.com/2010/01/hacks/video-how-to-unlock-and-root-a-nexus-one/
and the ROMS available on this page (and which one do I download. There's a dozen!)
http://www.cyanogenmod.com/downloads/rom
Where do I download the radio and why is ERE36B better in the USA? A poster above said I should stay with the one I have (27).
addon - vs mod
whodatfever said:
What is the difference between the Cyanogen's N1 Addon which I am getting from this tutorial:
http://androidandme.com/2010/01/hacks/video-how-to-unlock-and-root-a-nexus-one/
and the ROMS available on this page (and which one do I download. There's a dozen!)
http://www.cyanogenmod.com/downloads/rom
Where do I download the radio and why is ERE36B better in the USA? A poster above said I should stay with the one I have (27).
Click to expand...
Click to collapse
The add-on was what Cyanogen made before google released the source code for android 2.1. It is not a full custom rom.
The ROM's ie. 5.0.4.1 is all the Cyanogen tweaks, highmem etc. 360 degree rotation (left right and upside down if you enable it) and all sorts of stuff.
You really should try both radios and see which one works better for you. Some people have better results with one and some the other. I have the best continuous 3G/HSPDA signal with the ERE36B radio.
On Cyanogen mod forum, go to nexus one and there is a link to get the latest stable ROM 5.0.4.1 that is what you want. You have to also download the Google add-on.
Cyan used to include them but got a nice letter from google telling him he was not allowed to "optimize" their stuff. So he puts it in a separate package as is, and you have to flash it after you flash his rom to get the google apps.
Google apps will be called: gapps-passionERE36B(2) or something very similar.
I am willing to answer any questions you have just send me a pm.
andythefan said:
Same here. I'm temped every day to root and unlock the benefits, but I don't know if it's worth voiding my warranty :\
Click to expand...
Click to collapse
there is a thread here about your warranty and as long as you have a problem that is a legit hardware defect HTC has been replacing them, dust under screen bad battery, and a few other things.
GR8Gorilla. Thank you for all of this. It was a convoluted mess trying to decipher some of the tutorials. I am very grateful and am starting the process in a few minutes. I'll let you know how it goes and thank you again.
whodatfever said:
GR8Gorilla. Thank you for all of this. It was a convoluted mess trying to decipher some of the tutorials. I am very grateful and am starting the process in a few minutes. I'll let you know how it goes and thank you again.
Click to expand...
Click to collapse
Remember if and when you flash the radio, plug in phone, and whatever you do, do not pull the battery while it is doing the radio. That is the biggest NO NO. It can make a nice nexus One paperweight. As long as you dont pull the battery you will be fine. I have flashed mine about 4 or 5 times....and I have flashed roms about 1000 times.
The phone is going to reboot a couple of times during a radio flash, be patient.
I've spent some (much) time this week with trying to get ubuntu running on the optimus 2x. I have succeeded to boot and get the wifi, X11 and the touch screen sort-of working.
The ramdisk is completely replaced with a busybox executable, some symlinks to it and a shell script that mounts the necessary stuff (/dev/block/mmcblk1p2 as ext3), changes root directory and calls /sbin/init.
USING THE FOLLOWING WILL VOID ANY WARRANTY YOU MIGHT HAVE LEFT AND MIGHT ALSO BRICK YOUR PHONE!
Seriously, don't do this if you don't wish to risk the data on your phone.
I will be providing some demo images for people who don't have a build environment up and running. These images will not work particularly well, don't get your hopes up .
If you want to have a big linux installation (more than 3 GB) you can flash the images to the second partition on your external sd (obviously you have to create this yourself first). You can use the following boot image (which assumes that linux is on /dev/block/mmcblk1p2 with ext3:
https://ha.xxor.net/o2x/boot-20110813.img
I have also targzipped the modifications to the file system that were required to get stuff going here:
https://ha.xxor.net/o2x/o2x-20110813.tar.gz
This should be extracted directly to the root file system.
The kernel source code is up at https://github.com/ergoen/LG-Optimus-2x-linux-kernel
Things that have been done to get this to "work":
1. Boot partition
Apart from grabbing the busybox stuff from some nexus one boot image (I'm sorry whoever fixed it, I don't remember where I got it from ) the boot command line had to be modified a bit, changing stuff from the default usually ends up in a phone that won't boot, but I discovered that it's possible to append new arguments to the default ones. So the following have been appended:
console=tty0 root=/dev/mmcblk1p2 init=/sbin/init
The console=tty0 makes sure that you see stuff on the screen while ubuntu get's running. The last two are not necessary to boot, but ubuntu seem to like (need?) them (or at least the init=/sbin/init), since otherwise you never get to the login prompt on the screen.
2. The Ubuntu installation
To make it possible to communicate with the phone at all adbd was put into the /sbin/ folder and a symlink was created /system/ -> /. Also the "/sbin/adbd recovery &" command was added to rc.local to make it autostart.
2.1. Modules and wifi
We need the /lib/modules/2.6.32.9 directory. Most files inside that were generated using the "depmod" command, the exception is wireless.ko which was taken from android, the firmware and nvram files needed for the wifi chip to work were placed in the /lib/firmware/wl/ folder. To make the wifi module autoload with the proper firmware "wireless" was added to /etc/modules and the file /etc/modprobe.d/wireless.conf was created with the contents describing the location of the firmware and nvram.
To make the wifi autoconnect on boot the /etc/network/interfaces file was modified with the following contents:
auto wlan0
iface wlan0 inet dhcp
wpa-driver wext
wpa-conf /etc/wpa_supplicant.conf
(To make the wifi autoconnect to your wireless you need to run the command "wpa_passphrase networkname networkpassword > /etc/wpa_supplicant.conf using adb or chroot)
2.2. X11
Getting X up by running xinit produces a simple black screen on the phone. At first I thought the problem was that the refresh rate was set to 106 Hz, indeed changing it with xrandr and pushing a new mode got me a visible xterm on Kubuntu 11.04:
https://ha.xxor.net/o2x/xterm.jpg.
On Ubuntu 10.10 it even gave me a nice colored gdm screen:
https://ha.xxor.net/o2x/gdm.jpg
But the image I got there was static and wasn't being updated. Turns out the reason the screen was black earlier with the 106 Hz rate and the reason why the screen is now just showing an image is that the framebuffer device doesn't update the screen like it should..
By modifying the kernel source to redraw the screen every 50 ms (~20 Hz) it's possible to get a scren that works. This is an ugly hack in the tegra-fb driver though, so I'm open for suggestions on how to solve it in a better way!
2.3. Touchscreen
By default the only thing the touchscreen does is force the mouse up in the left corner, I think this is due to some multitouch thing. Some more kernel hacking (basically half-disabling multitouch) makes the touchscreen work.
Pictures:
https://ha.xxor.net/o2x/SAM_0671.jpg
https://ha.xxor.net/o2x/SAM_0672.jpg
Video:
http://vimeo.com/27662093
Thans to RaYmAn and lilstevie on #tegralinux for all their help this far!
3. Misc
(K)Ubuntu 11.04 uses a new version of libc which crashes with the current nvidia kernel (2.6.32.9) on this hardware (http://developer.nvidia.com/tegra/forum/errata-657451-tls-bit-20-cp15-c13-3), so I'm going back to Ubuntu 10.10 until someone ports a newer kernel to the Optimus 2x or this problem can be solved in another way.
edit 1: Ubuntu 10.10 with much more working X11 noted in section 2.2.1.
edit 2: X11 working even more, touchscreen works aswell!
edit 3: Landscape mode works with both X11 and the touchscreen now, getting ready for alpha 1!
Current status:
Working:
- adb (best way of controlling device currently)
- X11 (only framebuffer with hardcoded refresh rate of ~20Hz)
- landscape mode fixed! =D
- touchscreen (probably only single touch)
- wifi (only when running things from console, ubuntus network manager does not recognize it)
Not working:
- Basically everything else
Alpha 1:
EDIT: Seems that multiupload has screwed up and this link was going to some crap, anyway this is not relevant anymore
Username 'ubuntu', password 'ubuntuxda'. Don't use this if you don't know how to restore the boot partition! (Or else you won't be able to boot back into android!)
Experiments:
Tried disabling the CONFIG_TEGRA_ERRATA_657451 switch in the kernel to make newer linux versions boot. This might be a bad idea in the long run, but this far things are working better than with the switch enabled..
I tried Ubuntu via chroot method posted in other thread, but I'm a noob.. Can you please explain what is different about your ubuntu?? Does it boot without Android and doesn't need VNC stuff?
Yes, it boots instead of android when turning on the phone, but it doesn't work completely, so I mostly put it up here so that people could help test and fix/hack things.
You rock! Unfortunately I'm no dev, so can't help but hopefully others will, so we'll get a fully working linux on our phone, and maybe later even meego. Is there btw drivers for the gpu? Because hdmi, with usb host ofc, would be really useful!
Anyway, good job, really!
This looks great ergoen! I'm no dev either but I can't wait until it's available to everyone, I would love to have Ubuntu running on my O2x.
Best of luck!
gpu drivers are closed source, and the ones released by nvidia require a newer kernel (2.6.38), so thats not really possible yet.
Newer kernel will be necessary anyway though, since the crashes I'm getting seems to be due to a bug in tegra which gets worked around in 2.6.36. I'm not skilled enough to perform that port though. I will of course give it a try, but most likely I'll go for some older version of ubuntu and/or perhaps meego instead.
Håller med tidigare poster. Would be awesome with native Ubuntu and Meego on the phone... keep up the good work, can't wait to follow this development.
Sent from my Optimus 2X using XDA Premium App
ergoen said:
... I realized that it tried to run the screen at [email protected], which is hmm, wrong . So setting up a script at /etc/xprofile, which makes sure the refresh rate is 60Hz...
Click to expand...
Click to collapse
What would happen if you changed this to 72Hz instead? I saw that info when I was browsing System Information in some app. Im not a dev At. All. But tell me what you think it's probably a stupid question
Sent from my Optimus 2X using XDA Premium App
I can give it a try later, not that it would make any difference .
edit: 72 Hz also seems to work, cool, that's higher refresh rate than my computer screen...
ergoen said:
I've spent some (much) time this week with trying to get ubuntu running on the optimus 2x. I have succeeded to boot and get the wifi working, also X sort-of works (software fb). I have only slightly modified the kernel (built with CONFIG_SIGNALFD=y so that Meego wont complain in a related attempt to get that os booting). The ramdisk is completely replaced with a busybox executable, some symlinks to it and a shell script that mounts the necessary stuff (/dev/block/mmcblk1p2 as ext3), changes root directory and calls /sbin/init.
USING THE FOLLOWING WILL VOID ANY WARRANTY YOU MIGHT HAVE LEFT AND MIGHT ALSO BRICK YOUR PHONE!
Seriously, don't do this if you don't wish to risk the data on your phone.
I will not provide a complete root file system for two reasons:
1. It's pretty easy to make yourself, grab the omap3 kubuntu mobile image from the kubuntu site, or use rootstock from an ubuntu installation to build one yourself.
2. My upload sucks, and putting several hundred MB onto the interwebz would hurt me.
However, I have placed an image of my boot partition here (assumes you've got ubuntu on the second partition of the external memory card formatted with ext3):
https://ha.xxor.net/o2x/boot.img
I have also targzipeed the modifications to the file system that were required to get stuff going here:
https://ha.xxor.net/o2x/o2x.tar.gz
This should be extracted directly to the root file system you aquired earlier.
Things that have been done to get this to "work":
1. Boot partition
Apart from grabbing the busybox stuff from some nexus one boot image (I'm sorry whoever fixed it, I don't remember where I got it from ) the boot command line had to be modified a bit, changing stuff from the default usually ends up in a phone that won't boot, but I discovered that it's possible to append new arguments to the default ones. So the following have been appended:
console=tty0 root=/dev/mmcblk1p2 init=/sbin/init
The console=tty0 makes sure that you see stuff on the screen while ubuntu get's running. The last two are not necessary to boot, but ubuntu seem to like (need?) them (or at least the init=/sbin/init), since otherwise you never get to the login prompt on the screen.
2. The Ubuntu installation
To make it possible to communicate with the phone at all adbd was put into the /sbin/ folder and a symlink was created /system/ -> /. Also the "/sbin/adbdb recovery &" command was added to rc.local to make it autostart.
2.1. Modules and wifi
We need the /lib/modules/2.6.32.9 directory. Most files inside that were generated using the "depmod" command, the exception is wireless.ko which was taken from android, the firmware and nvram files needed for the wifi chip to work were placed in the /lib/firmware/wl/ folder. To make the wifi module autoload with the proper firmware "wireless" was added to /etc/modules and the file /etc/modprobe.d/wireless.conf was created with the contents describing the location of the firmware and nvram.
To make the wifi autoconnect on boot the /etc/network/interfaces file was modified with the following contents:
auto wlan0
iface wlan0 inet dhcp
wpa-driver wext
wpa-conf /etc/wpa_supplicant.conf
(To make the wifi autoconnect to your wireless you need to run the command "wpa_passphrase networkname networkpassword > /etc/wpa_supplicant.conf using adb or chroot)
2.2. X11
Getting X up by running xinit produces a simple black screen on the phone. After some troubleshooting and voodoo magic I realized that it tried to run the screen at [email protected], which is hmm, wrong . So setting up a script at /etc/xprofile, which makes sure the refresh rate is 60Hz, and running it after xinit gets you a xterm!!!
https://ha.xxor.net/o2x/xterm.jpg
Telling /etc/X11/xinit/xinitrc to run it makes sure that it gets set up properly by the startx script, unfortunately startx doesn't go through for me on kubuntu because of some weird error caused by a hardware problem in tegra: (http://developer.nvidia.com/tegra/forum/errata-657451-tls-bit-20-cp15-c13-3).
Unfortunately this (probably) means that either we'll have to stay with old versions of libc or get a newer kernel (2.6.36 contains fix). Old libc seems backwards, but porting a new kernel requires a bit more skill than I possess.
2.2.1. Ubuntu 10.10
Grabbed the image ubuntu-netbook-10.10-preinstalled-netbook-armel+omap.img.gz from http://cdimage.ubuntu.com/ubuntu-netbook/ports/releases/maverick/release/ . After first unpacking the tgz, then unpacking the raw disk image to partition images (with 7zip on windows) and then flashing the 1.img file to the second partition on my sdcard I managed to run a much more bug free ubuntu than before.
Ubuntu 10.10 (Maverick) uses an older version of som libraries that don't crash with the old o2x kernel.
This has lead to the following:
https://ha.xxor.net/o2x/gdm.jpg
Obviously touch screen isn't working properly (pressing it puts the pointer into the upper left corner :S) so can't get further than this currently.
3. Misc
avahi-daemon and cups seems to be crashing all the time and restarting, so removing them (apt-get purge if ubuntu/kubuntu) will make the boot much cleaner. Also I get lots of alignment trap kind of errors that shouldn't be there for different kinds of services, (due to tegra bug mentioned earlier).
edit 1: Ubuntu 10.10 with much more working X11 noted in section 2.2.1
Click to expand...
Click to collapse
Its good you got it to work.Saves me some work.I was gonna begin this project my self after the 19th when my exams end.Maybe i could help you.
ergoen said:
I can give it a try later, not that it would make any difference .
edit: 72 Hz also seems to work, cool, that's higher refresh rate than my computer screen...
Click to expand...
Click to collapse
Most computer screens usually support atleast 72hz also, it's just that it only works with d-sub, and sometimes only at a lower resolution.. It's possible to make special drivers to some screens to enable higher refresh rate through dvi also.
Anyway, it's good the screen on the phone refreshes at 72hz instead of 60 for android, but in linux I really don't see the benefit.. Doesn't hurt to have though. Btw, if we would stay on this kernel, can we use the drivers from android then? Shouldn't gpu also work? Or are the drivers limited and don't allow xorg for example? Sorry if it's stupid question, don't have that much knowledge how android works yet.
Update: X11 and touchscreen work on Ubuntu 10.10 Maverick with new kernel (just a few hacks )!
manasgirdhar: sure! Lot's of things to do new kernel is needed for anything newer than ubuntu 10.10, and even here things like sound etc (cpu scaling maybe too) don't work.
kruppin: actually i removed the xorg.conf now, the phone thinks its running at 106 Hz and it works. Unfortunately in practice it goes at more like 20 Hz because of the hack I made to enable the fbdev output in the kernel. Android doesn't use X11, so those drivers wont be of any use. (I will post the kernel modifications to github soon)
edit: kernel source up on https://github.com/ergoen/LG-Optimus-2x-linux-kernel
A List of Things working at 2nd Post would be nice.
So anybody could fast see Updates,...
Edit:
Have you tried some "cleaner" Linux like Debian?
Alpha 1 is up in the second post for anyone who wants to test it (don't ^^).
I have not tried debian no, I thought ubuntu would be the easiest to google errors and bugs for .
You are great! i was hopin' for this since I have mine. You should try to make usb(otg) work to get some devices going i will try to test it soon
That's amazing We have to test USB OTG function. If it works by default, I'll try this right now
It is possible to make a dual-boot: ubuntu and android?
I don't think usb otg works since I am basically using the android version of the kernel, I also won't be able to try since I don't have a cable... (will buy one sooner or later).
Dual boot probably works if you flash the boot.img onto the recovery partition instead of the boot partition (/dev/block/mmcblk0p7 instead of /dev/block/mmcblk0p5). I have not tried this though. That way regular booting would give android and booting while holding volume down would give ubuntu, only problem with this is that cwm will be gone and the only way to fix broken things would be to flash with nvflash.
well it is not a major deal if have cifs avail needs kernel support as well. Benee mentioned (might) some otg support, mayb u could ask.
also, you might give E17 a try, it is butter-fast, and has a touch module for keyboard (letter zooming.!..) LINK
this can be compiled on a lot of hw, and gives good response with fbdev non-accel drivers also.
and most linux apps work on it fine. ofc until we have 2d/3d accel and might try compiz/fusion as well
LINK
Great job ergoen!
I've worked on exactly the same some weeks ago but i never accomplished it. because i stuck creating a working ramdisk. Which toolchain do you use?
MfG
Since I've been mainly a lurker/reader I can't write in the threads involved:
http://forum.xda-developers.com/showthread.php?t=2224029
http://forum.xda-developers.com/showthread.php?t=2233138
http://forum.xda-developers.com/showthread.php?t=2224029&page=15
and finally:
http://forum.xda-developers.com/showthread.php?t=2216996&highlight=userdata+img+ext4
Btw, this is a screenshot of that eMMC test tool and sure enough, I've got the M8G2FA eMMC chip:
I can't get root to work and any app I try to use that require root stall and then make the Holo launcher in Slim-3.1.0-ariesve-20130403-1127-UNOFFICIAL rom (the only one I managed to get working, probably because it writes ALL partitions) drop to main screen an flash the menu window until I click the menu button.
I flashed, reflashed, tried all the "fixes" to no avail, flashed that 1.4GB userdata.img.ext4 file in odin, flashed the TEST KERNEL eMMC Brick Fix, tried replacing the boot.img in the slim package with the eMMC boot after repartitioning my external SD etc... Thing is, I tried them in so many different ways that I can't say exactly what the right procedure is and I'm not going to risk a reflash now that I've got it going until someone have a more permanent fix.
If a dev want me to do adb tests, scripts, get logs etc. just PM me and I'll supply you with what you want. I'm not all that proficient in adb usage but I learnt a thing or two when I bricked my Desire.
It is frustrating to not have a functioning Superuser/SuperSU/Rooted OS (tried flashing Root-i9001-Signed.zip among other things which does nothing) but I guess that's the price I have to pay for flashing a 3.x based CWM's without knowing about eMMC brick bugs and crap. Right now I'm running an OS with the eMMC fixed (used External SD instead of eMMC I believe) Linux kernel 3.0.70 since it's the only one I got working (albeit with a few random reboots here and there when I use the android debug bridge). Starting normal apps is quick and JB is blazing fast though. Can't change any system settings in Holo launcher (since they require root) so I edited the build.prop with the excellent adb-plugin for total commander (which I use almost exclusively to access my phone)
Good news is that it works as an unrooted phone.. Wifi, phone, e-mails etc. all work. So I'll be content for now since last night I thought I had a graveyard bricked phone I bought second hand for $95 5 days ago, esp. after bricking my Desire which made me buy this one.
Of course, Slim comes with a bunch of scripts in the init.d folder that may make things less stable/slower since I (think) I'm running my 8GB Class 10 MicroSDHC as the Internal and vice versa with that kernel fix.
I copied the logcat.txt and debuglog.txt and zipped them for anybody interested: http://www.megafileupload.com/en/file/411145/Logs-zip.html
Hi Scyphe,
I understand you do not remember the exact procedure you used but could you give me some help understanding how the "normal" procedure should work? I read all posts you linked, I've tried, but I still can't get what I'm doing wrong... What are the basic steps that are needed make it work with data on SD?
Hello everyone! Just like others here, I've been somewhat spooked by our inability to enter Ouya's Recovery partition at the earliest stage of booting, meaning a bad flash of the Boot partition would leave the device inoperable. When I heard that Ouya's stock firmware updates were possibly bricking a few units out there, I decided to block updates on mine and see if I could transform the Boot partition such that it would become a logical extension of the bootloader. What I ended up with is something close to the "Ouya Safe Recovery" project, where a user should only need to flash Boot one additional time, along with chain-loading support as well.
Chain-loading in this case refers to the booting of ROM kernel images that reside as regular IMG files under the /sdcard and/or /system filesystems. With this capability it is possible to choose an image to run when the Ouya turns on. As an example, one may wish to set up a 2nd/test kernel+ramdisk image to use with your installed ROM, or he may wish to run Tuomas Kulve's Debian project from time-to-time without having to set up the USB cable for Fastboot mode. When dealing with distinctly different ROMs (not just alternate kernels), only one of them may install to the Ouya's built-in storage (e.g., /system); others must have been designed/created to use external storage.
An image for the Recovery partition is available along with the Boot. The former may be helpful if you wish to try out the boot menu before performing the flash of the Boot partition, or are generally okay with bouncing to Recovery before invoking a chain-load. Either of these may be tested from Fastboot mode, but do note that a successful chain-load requires that the image actually be flashed to the Ouya. (Otherwise it just reboots.) The ClockworkMod (CWM) recovery application is available on both images and is accessible from the boot menu.
Additional Information
There are a few things to consider when deciding if this approach makes sense for you:
- Users of the "Ouya Safe Recovery" project may want to stay put unless the dual-boot aspect is of interest. If so then it would be cleanest to choose my Boot image; the Recovery partition (your ROM image) could be left alone.
- The images here are not compatible with Ouya's stock firmware, due to the auto-update nature of Ouya's ROM. Either your flashed Boot image would get overwritten, or an installed non-Ouya Recovery might cause that update to hang. Therefore, you should be prepared to switch to one of the ROMs here at XDA. If you're currently on stock and don't want to switch right away, that's fine; we'll go over how to block updates for the time being.
- The Ouya CM10 ROM is nice in that it provides the IMG file separately, allowing us to handle it as we wish. However, the other ROMs end up placing their boot.img in the main ZIP. This is standard practice for other devices, but we need to be careful ensuring our Boot partition doesn't get reflashed as part of the ROM installation. Therefore, it would be necessary to investigate repackaging the ROM with an alternate updater-script prior to installation. See my StockPlus post on page 2 for more. (This shouldn't affect those who've opted for my Recovery image.)
This feature is based on CWM's initial ramdisk, and includes a new boot menu application that comes up prior to CWM itself. Basically, CWM shows up later if the menu application exits for any reason. The Ouya stock kernel (561) has also been compiled with HDMI's copy protection turned off, and includes two patch sets:
- KExec-HardBoot is the key to chain-loading on our platform. It overcomes standard KExec's lack of hardware reset (and thus failed execution) by triggering a reboot in the middle of the preparation of the new kernel. This ingenious system has been developed by Tasssadar and others over in the Nexus forums. (Be sure to enable CONFIG_TEGRA_HARDBOOT_RECOVERY if interested in compiling a Recovery kernel.)
- HDMI visual stability has been improved with a little hack of mine: a significant relaxing of a timer in the driver. (The latest Android source has corrected the instability with a significant design change, but my hack seems fine enough for this project.) Also picked up specific Android fixes in the area of Framebuffer double-buffering, as that needs to be working for CWM usability.
Installation
If you're on Ouya's stock firmware, then you should make sure that any future updates do not get applied. There is a project here ("Mod Collection For Ouya") that should help. I personally side-loaded the Baxy custom launcher to avoid Ouya's update environment. It is also likely necessary to stay out of the Ouya/Discover store if going the custom launcher route as I believe the store app can trigger an update.
At this point you can download your chosen image (Boot or Recovery) and unzip to get the IMG file. Boot your Ouya to a working Root/BusyBox environment (ROM or Recovery), and then transfer the IMG to the Ouya. (An example using ADB would be "adb push boot102513.img /sdcard/boot102513.img".)
Bring up the Ouya command prompt (e.g., "adb shell") and run these commands to get started:
su [command not present on CWM - that's okay]
cd /dev/block/platform/sdhci-tegra.3/by-name
ls
You should see the various 3-letter partition names from that last command. Your command prompt should also contain the "#" character to denote root-level access. This next step will save off your current ROM image, both because we may end up overwriting it, and because the saved file will end up as your main bootable kernel for the chain-loader. Run:
cat LNX > /sdcard/kernel.img
(If configured for "Ouya Safe Recovery," then replace the preceding "LNX" with "SOS".)
We are near the flashing stage. Check to make sure your Ouya has a reliable source of power, preferrably from an uninterruptable power supply. Recall that a bad flash of my boot image can leave the device inoperable, but I feel the risk is very low provided the following directions are heeded. Fortunately the flash process only takes a few seconds.
For the Boot image option, verify by running:
md5sum /sdcard/boot102513.img
Do not proceed unless you get "e4b1b1ad553e55ad0b2ce3fb8f5bf623".
Again for the Boot image option, flash to the Ouya by running:
dd if=/sdcard/boot102513.img of=LNX
For the Recovery image option, verify by running:
md5sum /sdcard/rcvy102513.img
Do not proceed unless you get "dda0811a7e8e82a7d4ad3fa4c3ae35e4".
Again for the Recovery image option, flash to the Ouya by running:
dd if=/sdcard/rcvy102513.img of=SOS
You may optionally verify (post-flash) by running "md5sum" on the partition name. Finish up with these commands:
sync
reboot
Usage / Configuration
The menu should come up, defaulting to "kernel.img" for the Boot image and "CWM" for Recovery. That default will then launch after ten seconds of inactivity. You may also briefly press the Ouya power button during the wait to advance through the options. The option list is 1) kernel.img, 2) kernelA1.img, 3) kernelA2.img, 4) CWM, and 5) Recovery Partition.
The defaults from above should be fine for most everyone, but it is possible to fine-tune them. An optional configuration file (/sdcard/bootmenu_b.cfg for Boot, /sdcard/bootmenu_r.cfg for Recovery) may be established to specify the default menu entry as well as the inactivity timeout. As an example, the following command would make Recovery start kernelA1.img after five seconds:
echo "2 5" > /sdcard/bootmenu_r.cfg
It is hoped that the menu would never hang. If it does, then waiting a full minute should allow CWM to start. Otherwise, it may be necessary to attach a wired/USB keyboard and type in the Alt-SysRq-X sequence, similar to Ctrl-Alt-Delete on a PC. The sequence might have to be done early on in the menu startup process, and should blink the Ouya light and place it in Fastboot mode.
The menu may unexpectedly place you in CWM, which would indicate an issue with a chain-load. The reason may be due to a missing or corrupt IMG file. Otherwise you should be able to determine why by checking /tmp/bootmenu.log against the attached source code.
---
I hope this project will be of help to others!
An additional support forum that everyone should be able to post at is available: http://forum.xda-developers.com/showthread.php?t=2450711.
Wow, really great. Thanks a lot for your effort
Gesendet von meinem One X+ mit Tapatalk
nchantmnt said:
Wow, really great. Thanks a lot for your effort
Click to expand...
Click to collapse
My pleasure, nchantmnt. Hope your new Ouya is helping you feel at home!
Yes im happy it already arrived, but after a second miscarriage and lots of stress because of a lawsuit with our neighbour i didn't have time nor nerves to play or code. Seriously this year sucks
Gesendet von meinem One X+ mit Tapatalk
nchantmnt said:
Yes im happy it already arrived, but after a second miscarriage and lots of stress because of a lawsuit with our neighbour i didn't have time nor nerves to play or code. Seriously this year sucks
Click to expand...
Click to collapse
Gosh, I'm very sorry to hear that. Do think ahead to the upcoming holiday season, and may it be a time to reflect and anticipate a fruitful 2014.
@Hal9k+1 - THANK YOU!
I was so nervous flashing CWM and StockPlus as there is no real way to fix things if something goes wrong. This should give people more confidence when flashing their Ouya.
I understand the process using ADB...my question is: can this be used from CWM somehow?
PS. I assume new kernel will always be flashable from CWM, the hack does not require 561 specifically.
Ipse_Tase said:
I understand the process using ADB...my question is: can this be used from CWM somehow?
Click to expand...
Click to collapse
Hi Ipse_Tase - I do hope the feature will be helpful to you and others.
As I think about your question, I suppose I could have have created a ZIP that would have been installed by CWM. Similarly I could have worked through some form of installation shell script. But for an important operation such as flashing, I prefer the one-at-a-time approach of the interactive shell.
Note that CWM does have an ADB service running with it. Your Ouya would show up as a different device while in CWM, so you'd need to enter Device Manager (Windows) and point the unknown device to the same ADB driver as used for the main ROM.
Alternatively you could skip ADB for this Ouya Boot Menu installation and set up an SSH server on your main ROM. I personally have installed "SSH Server" (Ice Cold Apps). I recall two screens to set up (does require the trackpad in cases), where I enabled automatic start on both, and also set the port number to 2222. After an Ouya reboot I had SSH/SCP capability and could use PuTTY/pscp from Windows.
Hal9k+1...fast reply, thank you.
Just to put my ever-so-senile brain at ease: so I run StockPlus 519r1, and WHILE in the ROM, I start ADB and follow your instructions .
OR...I enter CWM, make sure I get the right ADB drivers installed for THAT instance and go from there.
For a developer, I'm sure it's easier and more familiar to run ADB commands - for people like me (5%-over-the average-user) a CVM option to flash a zip and do all this would be more in-line with the abilities to hack.
I have rooted 4-5 devices so far and the only time I type any ADB commands is at root/unlock time - sometimes not even then (Nexus 4 and the Root Toolkit).
So if you ever consider creating a recovery flashable file, it would help many. Probably not me, as by then I would have done the ADB trick
Sounds like great work! I was hoping to implement something like this myself, but I haven't made any more time for OUYA-related development in a while (due to positive life events/busyness)
I will definitely take a look at your work when I have time!
~Troop
Ipse_Tase said:
Hal9k+1...fast reply, thank you.
Just to put my ever-so-senile brain at ease: so I run StockPlus 519r1, and WHILE in the ROM, I start ADB and follow your instructions .
OR...I enter CWM, make sure I get the right ADB drivers installed for THAT instance and go from there.
Click to expand...
Click to collapse
You got it! You don't need to worry about booting to the other partition prior to flashing. That is a given partition (LNX/SOS) is no longer being accessed once the image is booted. For CWM's ADB, you'd simply point Windows to the same INF file that you originally used. Hope this helps.
StockPlus Installation
Well, I finally retired this old stock 393 ROM I was on, and moved to StockPlus 519r2. I was not able to install it the normal way given my Boot image is in place here. So I ended up modifying "updater-script" under META-INF/com/google/android, and then repackaged prior to running the install procedure. I'm attaching my changed version in case it helps anyone, and please note that it makes StockPlus the main image (kernel.img).
(You'll need to right-click to save the attachment. Once done it will need to be renamed such that it does not include the ".txt" suffix.)
The Windows "7-Zip" utility is helpful for packaging. You may start by right-clicking the downloaded ZIP, then 7-Zip --> Extract to "OUYA_[...]". Enter the newly created directory, get to the updater-script, and replace it with mine. Now back up to the area with META-INF, system, and boot.img, still in the new directory. Select all three under Windows (Ctrl+Click), right click that area, and then 7-Zip --> Add to "OUYA_[...].zip". Be sure this new ZIP is the one that makes it to the Ouya.
Still haven't tried this out yet, but I hope to soon.
I missed out on news over the holidays though and just noticed this:
Announcing Ubuntu and Android dual boot developer preview
http://developer.ubuntu.com/2013/12/announcing-ubuntu-and-android-dual-boot-developer-preview/
I'm curious of their dual boot implementation and how it compares and if we can synergize with their approach, but haven't looked into the details of how theirs works yet (its sounds like it uses a custom recovery image, and they have the ability to trigger it to reboot into Ubuntu from an Android app and vice versa, which is cool)
It'd be awesome to be able to multi-boot an Ouya ROM, an Android ROM (CyanogenMod), and Ubuntu with that kind of ease.
EDIT: This may be more our speed though: (MultiROM)
http://forum.xda-developers.com/showthread.php?t=2011403
(did you pull anything from there? Sounds like they have a modified TWRP that can flash zips to the other ROM slots, which is something I was also hoping to implement)
~Troop
Thanks, Trooper. Good to see Ubuntu moving further along in the mobile world.
I briefly looked at MultiROM since it originated from the KExec-HardBoot work, but decided not to go in that direction. The main reason is that I decided not to pursue the setup/learning of an Android build environment, but also because it wasn't clear how I'd deal with our lack of a touchscreen and lack of volume up/down buttons. I ended up creating a small application that fits within Ouya's CWM framework and starts up before CWM itself; it monitors the power button for click events and writes to the framebuffer memory region using regular Linux calls.
I'm not too concerned about the dual-boot aspect of this new Ubuntu, but the lack of touchscreen could be a hindrance if mouse/keyboard were not a viable substitute. Whether this Ubuntu is designed to work from external storage is another question, since our /system and /data would be occupied by Android. But in general I think we could boot it from my framework, and if my Boot image were selected over the Recovery one, then the Ubuntu kernel could reside in Recovery and also be bootable from the Android side with the "reboot recovery" command.
Best of luck, and hope you'll have a chance to try it all!
accidental post please delete
TL;DR: I need update logs or an idea what path might be missing that breaks the 8.1 update!
Hi all, strange for me to be asking for help here but it happens...
I've finally gotten my ATIV S (SGH-T899M) into a state where I'm willing to upgrade it to WP8.1. However, I am unable to do so. I've been able to install a few updates, but the actual 8.1 update won't install. The error I get (under the "Update status" line in Settings -> Phone Update: "The update was downloaded, but couldn't be opened. (80070003)"
The error code is an HRESULT or NTSTATUS wrapper around Win32 error code 3, which is ERROR_PATH_NOT_FOUND. Note that this is distinct from FILE_NOT_FOUND (2); you only get error 3 when a part of the path to a given file (or directory) is missing. I've searched online for any information about this error with regards to updates, to no avail. It does sometimes happen with Windows Updates on PC, but the instructions for resolving that aren't easily mappable to the phone.
Phone's current status:
OS version: 8.0.10532.166 (this is the pre-8.1 version; as I said, I did get some updates)
Firmware revision: 2212.13.11.2 (this is the Samsung GDR 3 version, except modified to not overwrite WP8Diag.xap or FCRouter, etc.; see http://forum.xda-developers.com/showthread.php?t=2537241)
Hardware revision: 15.3.1.0
Radio software: 2212.13.11.2
Radio hardware: 0.0.0.0
Bootloader version: 13.08.14.16
Chip SOC version: 1.5.32
Phone was originally branded for Telus Mobility in Canada, and still has signs of that in DeviceTargetingInfo (language is 0809 instead of 0409, for example, and MobileOperatorName is LUS-CA). It was factory SIM-unlocked and brand new when I got it. It is developer-unlocked, interop-unlocked, capability-unlocked, and has been subjected to numerous additional hacks; I've reversed a few that I can think of which could possibly impact the update (like messing with files in the System32 directory) but I probably missed a few of those.
Here's what happens when I try to update:
If Preview For Developers is not enabled, it does "Checking for updates" then says I'm up to date.
If PFD is enabled, it checks for updates and then, if I'm on WiFi, downloads the update CABs.
It then enters the "Preparing to install" step. This is very slow in some places, stalling for minutes at a time at some percentages, but eventually reaches 97%.
It then stops the update process with the error message in bold above.
It does NOT ever tell me what the update is.
It does NOT reboot, or even offer to reboot, at any point.
The "Check for updates" button re-appears and can be used to start the process over again.
So... any ideas or suggestions? I'd prefer to avoid a hard-reset if possible, simply because of the amount of time it would take to restore the phone to the condition I state I want it in, but I'll do one if nothing else works. Things I'm particularly looking for, in descending order:
1) Anybody else who has experienced this problem and found a solution (and what that solution is).
2) Any log files I could check to see what it was trying to do when the error occurred (ideally with the path that caused the error).
3) Anybody else who has encountered this problem but not gotten past it; we can compare what changes we made to our phones.
4) Anybody else who has a reasonably similarly-modified phone but has not experienced this error and was able to install 8.1 (so we can compare what we did to our phones, and I can possibly crib files off you).
Hope somebody can help! Thanks.
GoodDayToDie said:
TL;DR: I need update logs or an idea what path might be missing that breaks the 8.1 update!
Hi all, strange for me to be asking for help here but it happens...
I've finally gotten my ATIV S (SGH-T899M) into a state where I'm willing to upgrade it to WP8.1. However, I am unable to do so. I've been able to install a few updates, but the actual 8.1 update won't install. The error I get (under the "Update status" line in Settings -> Phone Update: "The update was downloaded, but couldn't be opened. (80070003)"
The error code is an HRESULT or NTSTATUS wrapper around Win32 error code 3, which is ERROR_PATH_NOT_FOUND. Note that this is distinct from FILE_NOT_FOUND (2); you only get error 3 when a part of the path to a given file (or directory) is missing. I've searched online for any information about this error with regards to updates, to no avail. It does sometimes happen with Windows Updates on PC, but the instructions for resolving that aren't easily mappable to the phone.
Phone's current status:
OS version: 8.0.10532.166 (this is the pre-8.1 version; as I said, I did get some updates)
Firmware revision: 2212.13.11.2 (this is the Samsung GDR 3 version, except modified to not overwrite WP8Diag.xap or FCRouter, etc.; see http://forum.xda-developers.com/showthread.php?t=2537241)
Hardware revision: 15.3.1.0
Radio software: 2212.13.11.2
Radio hardware: 0.0.0.0
Bootloader version: 13.08.14.16
Chip SOC version: 1.5.32
Phone was originally branded for Telus Mobility in Canada, and still has signs of that in DeviceTargetingInfo (language is 0809 instead of 0409, for example, and MobileOperatorName is LUS-CA). It was factory SIM-unlocked and brand new when I got it. It is developer-unlocked, interop-unlocked, capability-unlocked, and has been subjected to numerous additional hacks; I've reversed a few that I can think of which could possibly impact the update (like messing with files in the System32 directory) but I probably missed a few of those.
Here's what happens when I try to update:
If Preview For Developers is not enabled, it does "Checking for updates" then says I'm up to date.
If PFD is enabled, it checks for updates and then, if I'm on WiFi, downloads the update CABs.
It then enters the "Preparing to install" step. This is very slow in some places, stalling for minutes at a time at some percentages, but eventually reaches 97%.
It then stops the update process with the error message in bold above.
It does NOT ever tell me what the update is.
It does NOT reboot, or even offer to reboot, at any point.
The "Check for updates" button re-appears and can be used to start the process over again.
So... any ideas or suggestions? I'd prefer to avoid a hard-reset if possible, simply because of the amount of time it would take to restore the phone to the condition I state I want it in, but I'll do one if nothing else works. Things I'm particularly looking for, in descending order:
1) Anybody else who has experienced this problem and found a solution (and what that solution is).
2) Any log files I could check to see what it was trying to do when the error occurred (ideally with the path that caused the error).
3) Anybody else who has encountered this problem but not gotten past it; we can compare what changes we made to our phones.
4) Anybody else who has a reasonably similarly-modified phone but has not experienced this error and was able to install 8.1 (so we can compare what we did to our phones, and I can possibly crib files off you).
Hope somebody can help! Thanks.
Click to expand...
Click to collapse
I've seen this happening with many people. The only way is reset.
Huh. I didn't see any news about it, at all, when I searched. Lots of stories about *other* update errors for WP8.1. Lots of stories about this particular error when installing Windows updates on normal Windows (none of which, sadly, had helpful suggestions for the phone). When you say "many people" do you mean in general, or just lots of people with interop-unlocked ATIVs?
I would really like it if the source of the problem could be identified and fixed, but Microsoft seems unlikely to be helpful here. It's probably a really simple problem - a config file that needs to be edited, a folder created (we can do that), a registry value changed, something like that - but oh well. I can back up my app data, and my SMS are backed up automatically, so I suppose in the big scheme of things there's no reason *not* to do this... I just don't like it, and consider it a waste of time.
On the other hand, if I have to hard reset anyhow, I might take the opportunity to install a custom CSC. I normally try to stick as close to stock ROM as possible - making only runtime changes, basically - but it's quite possible that some of the changes I've made will *already* persist after reboot (part of why I'm hesitant to blindly hard-reset; what if it doesn't fix anything and is just a waste of time?). It would be nice to get some of the feature perks of the custom CSC though.
I had almost the same problem getting the error 80070003.
view those two posts if you are interested
post 217
post 218
Thanks, but that's.. mot actually very encouraging. I have the SGH-T899M, and as far as I know we still don't have a leaked ROM from one of those.
I also got the "Your phone couldn't be updated" message. But the code was: 80188308.
Any takers?
Phone's current status:
OS version: 8.0.10532.166 (with the three xml files....)
Firmware revision: 2216.14.01.2
Hardware revision: 3.19.1.0
Radio software: 1621.14.11.2
Radio hardware: 0.0.0.7
Bootloader version: 13.07.12.14
Chip SOC version: 2.0.15
-tdecision10
GoodDayToDie said:
Thanks, but that's.. mot actually very encouraging. I have the SGH-T899M, and as far as I know we still don't have a leaked ROM from one of those.
Click to expand...
Click to collapse
I've been trying to look into what's going on with the error message.
I found the particular error string within DuErrorsUIRes.dll. IDS_DU_ERROR_PREINSTALL_FAILED.
With that said, the only files that use the DuErrorsUIRes.dll are \PROGRAMS\DUACLIENT\DuaClientSettings.dll and \PROGRAMS\DUACLIENT\DuaNotification.exe.
I'm not good AT ALL with ASM, but you can either grab those files from your phone or grab them from the emu and load them into IDA and track it down.
I know that the code is the 6th code in the list that corresponds with the update error text.
Sorry I'm not able to help much, but hopefully this is of SOME value to you.
Thanks, Snickler. That's an approach I hadn't considered. Since the error code just means "Path not found" I was trying to think of paths it might attempt to access which could, for some reason, be missing from my phone... but working from the other end might work better.