Testing... Especially that CWM errors - Epic 4G Q&A, Help & Troubleshooting

Ok... Hello everyone..
I have been on the forums for quite some time... without posting. So here I am about to bash my rant for Dev'ing. For legitimate posts of 10 to post in the Dev section.
Do you personal use OneClickRoot CWM 3.0.2.5? have you used the MOD performed by Roderick?
Well for myself those did not work in the supposed Redirecter fix... They are all awesome Modderators and Dev's to this community; by all means I am pointing to a possibile batch/scritping mistake and or improvement that can be made to the run.bat/run.sh cmd to install this can be made...
If using bmlwrite cmd from the Android Sdk/Ndk is proper, then why o why does it not return a correct execution path within it to the nandrom stack, so it actually reboots to CWM Recovery from within the the OS issued IO cmd while in the GUI. Most of the consoles and actual handsets I have tested, issue a IO error resulting in a boot loop / freeze apon reboot to recovery cmd. My sugesstion - screw the bmlwrite cmd in the shell / batch script, and use the redbend_ua binary; which in my opinion is a better alternate to the bmlwrite command; (also proven stable bin), as such that it was used in the OneClickRoot v2.5.5 release ---
Meaning I have MODded the script myself with positive results; that result in proper stack execution, with no IO errors and fixed redirector flows to the Reboot to Recovery cmd in the ClockworkMod Rom Manger GUI. IF anyone would like to Share theirs thoughts on this, and also like to see my revision to this RUN shell script / batch command... By all means post me a replay and tell me your thoughts.
Thanks again, in advance; especially to all my fellow Testers and Dev's

Then why not upload your fixed cwm and tell everyone that had problems with the others to try your version instead
Sent from my Evo Killer using XDA Premium App

Related

Rooting non-standard Android

Model number: GM_DSTL1
Firmware version: 1.5
Baseband version: 20/05/09,st32,x2a.m1
Kernel version: 2.6.28-svn1368
Build number: CUPCAKE.eng.long.20090720.210535.r1368
Trying to figure out how this could be rooted because I can't seem to use traditional methods like downgrading and 1-click rooting.
If I understand correctly this is possible for me due to CVE-2009-2692
In an effort to try and cover my butt I have backed up all that "adb shell" permission would let me.
Zinx's "Recovery partition flasher for Android" has not been helpful.
Getting my device to use FastBoot seems to be my first step.
Constructive comments?
still no luck
Ruled out the telnetd hack, bummer:
I run telnetd in terminal and it gives me no errors but a port scan doesn't return anything besides port 110(pop3), 25(smtp), and 21(ftp) - none of which have proved useful thus far. Must have been patched with cupcake... or something I'm missing.
Also ran cat /proc/cpuinfo for fun
--------------------------------
Processor : XScale-V3 based processor rev 2 (v5l)
BogoMIPS : 103.58
Features : swp half thumb fastmult edsp iwmmxt
CPU implementer : 0x69
CPU architecture: 5TE
CPU variant : 0x0
CPU part : 0x689
CPU revision : 2
Hardware : yuhua X2_V4 on Marvell (Littleton)
Revision : 0004
Serial : 0000000000000000
-----------------------------------------------------
103.58 is weak sauce... but apparently that is the minimum for the Marvell PXA310 RISC Microprocessor
I wonder if anyone else on this board is bumpin the DSTL1? I may be the lone fish out here
Following this guide to get Fastboot aka Engineering Bootloader
I skipped flashing the radio because I figured it had to do with the OTA stuff which doesn't affect my model...
So I downloaded spl-signed.zip and renamed it to update.zip, placed it on my sdcard in the folder "update" (these instructions are specific to my model). In recovery mode I tried to update it but it FAIL.
update.log from failed update
Starting recovery on Thu Oct 8 01:22:51 2009
framebuffer: fd 4 (240 x 400)
I:text_cols 24 text_rows 22
E:Can't open /cache/recovery/command
Command: "/sbin/recovery"
ro.secure=1
ro.allow.mock.location=0
ro.debuggable=0
persist.service.adb.enable=1
ro.build.id=CUPCAKE
ro.build.display.id=CUPCAKE.eng.long.20090710.190105.r1322
ro.build.version.incremental=eng.long.20090710.190105.r1322
ro.build.version.sdk=3
ro.build.version.release=1.5
ro.build.date=Fri Jul 10 19:15:42 CST 2009
ro.build.date.utc=1247224542
ro.build.type=user
ro.build.user=long
ro.build.host=long-desktop
ro.build.tags=ota-rel-keys,test-keys
ro.product.model=GM_DSTL1
ro.product.brand=generic
ro.product.name=gm_x2
ro.product.device=x2
ro.product.board=x2a_v4
ro.product.manufacturer=yh
ro.product.locale.language=en
ro.product.locale.region=US
ro.board.platform=
ro.build.product=x2
ro.build.description=gm_x2-user 1.5 CUPCAKE eng.long.20090710.190105.r1322 ota-rel-keys,test-keys
rild.libpath=/system/lib/libyh-ril.so
rild.libargs=-d /dev/ttyp1
persist.gsm.dual.mode.phone=1
persist.gsm.sim.active.phone=GSM1
sms.supports.national.lang=1
wifi.interface=eth0
ro.config.sm_notification_snd=notf_gm_02.ogg
ro.config.sm_notification_snd_2=notf_gm_02.ogg
ro.config.notification_sound=F1_New_SMS.ogg
ro.config.ringtone=GM_01.ogg
ro.config.ringtone_2=GM_01.ogg
ro.config.sync=yes
net.bt.name=Android
net.change=net.bt.name
dalvik.vm.stack-trace-file=/data/anr/traces.txt
ro.factorytest=0
ro.serialno=
ro.bootmode=unknown
ro.baseband=unknown
ro.carrier=unknown
ro.bootloader=unknown
ro.hardware=yuhua
ro.revision=4
init.svc.recovery=running
init.svc.adbd=running
init.svc.yuhua-board-init=stopped
ro.kernel.android.qemud=0
ro.radio.use-ppp=no
ro.com.google.locationfeatures=1
RecVer:Fri Jul 10 19:15:42 CST 2009
Recovery tools:
HOME: Sd-card update
CALL: Board test
BACK: Factory reset
POWER: Reboot system
I:Key 102 pressed, alt 0
Search /sdcard/update/*
I:Find file . in /sdcard/update/
I:Find file .. in /sdcard/update/
I:Find file update.log in /sdcard/update/
I:Find file update.zip in /sdcard/update/
Find update.zip, Home to update
I:Update package /sdcard/update/update.zip
Installing /sdcard/update/update.zip
Installation failed.
Another Fastboot attempt
http://android-dls.com/wiki/index.php?title=Engineering_Bootloader
Downloaded update.xxx, renamed it to update.zip, placed it on my sdcard in the folder "update" (these instructions are specific to my model). In recovery mode I tried to update it but it FAIL... again.
From the log files it seems this stock recovery system SUCKS...
Another FAIL
Revisiting http://forum.xda-developers.com/showthread.php?t=532719 from my earlier post (#3). Tried to do the Radio Update... Downloaded ota-radio-2_22_19_26I.zip and renamed it to update.zip... yada yada yada, you know the rest.
Visit "http://www.generalmobile.com/index.asp?action=Android_Phones/DSTL1_support", and you can find how the update system work(it is not a G1). Also take some time to see the install package and hack it.
1. Unzip the package.
unzip Android_20090826_r1502.zip
2. Copy some missed property app(http://www.sendspace.com/file/dii80c get from adp1.5) to /system/app/ after diff it with the ADP image.
3. zip the new package.
zip Android_20090826_r1502_hack.zip -ry system boot.img
4. update package and wait it bootup.
Very cool!
@wineleven
THANKS!
That was very cool! Finally some progress
So I was not too off from that path, I had already downloaded the update from General Mobile and had been inspecting the zip file they were trying to shove in my face as a quick fix to their buggy ROM. I was asking the support some very hard questions, which is probably why it has taken them more than their 48 hours to reply to me. (its been 5 days now)
General Mobile's update is Android_20090826_r1502.zip
containing the following particularly interesting (to me) files:
/system/build.prop
/system/system-update-post-script
/boot.img
/update-validate-script
Attempt 1
Here I tried to zip up their unmodified package with the suggested -ry arguments and hope that stock recovery takes it and runs with it.
FAIL
I reviewed wineleven's suggestions noticed he omitted the file update-validate-script
This was probably my problem
Attempt 2
Here I omitted update-validate-script
SUCCESS!
Attempt 3
Spirits high I go for the gusto:
I downloaded superuser.zip from this forum and embedded it in the location /system/app
Flash SUCCESS, functionality FAIL
I got too excited and put Superuser.apk and su both in the same directory... silly mistake
Attempt 4
This time I put Superuser.apk in /system/app and su in /system/bin
Flash SUCCESS, functionality FAIL
running su in terminal gave me "permission denied" with the following carriage return:
here1here2here3here4$
obviously I'm missing something here... but have made progress and feel more confident about this.
More attempts to come. Suggestions and advice is welcome!
Question to those knowledgeable
Why are certain files in the /system/bin included as "links" and not actual files? save space in zip?
Can boot.img be modified? Replaced with a better (more useful) one?
Any ideas on obtaining root?
Root idea and shortcommings
After reviewing http://android-dls.com/wiki/index.php?title=Magic_Root_Access
I may have bin (lol) too hasty with slapping su in /system/bin
But logic tells me it shouldn't matter... bin or xbin
And I feel like permissions are my real issue because my current su (residing in /system/bin)
command
ls -l /system/bin/su
returns
-rwxr-xr-x root shell 34612 2008-08-01 08:00 su
command
chmod 6755 /system/bin/su
returns
Unable to chmod su: Read-only file system
^--- in hindsight I see that as a DUH, because I can't remount the /system partition as read/write
More questions
I have always understood chmod to use three digits, why are there four digits now?
Also, what is 's' in terms of permission... is that to see? like hidden files?
Main task accomplished!
After reviewing Cyanogen's experimental ROM I can see where and how he sets permission for su
Trying to emulate his method for myself has been plenty of trial and error, but I have finally done it.
system-update-post-script was the key file that set permissions.
One MUST keep the carriage return at the end of the file - I have a neatfreak habit of cleaning them up.
Also, using the su and Superuser.apk in Cyanogen's latest build kept restarting my device, must be because his kernel is newer than mine.
RapidShare is hosting for 90 days Android_20090826_r1502_rooted.zip - NEW BUILD HERE
MD5: F1DE9A270CDDF01ADEE708B6660B7AFA
PM me if not avail.
NOTE:
I am not responsible for your new paper-weight mode...
This has worked fine on my device, but I guarantee nothing for yours...
My device is General Mobile's DSTL1 - details in post #1
What you get:
Root access via su and Superuser.apk - procured from XDA forums: http://forum.xda-developers.com/attachment.php?attachmentid=211569&d=1249225060
To use:
Your sdcard must contain "update" folder, this is where you will place the zip file after you have renamed it to "update.zip"
Happy ROOT
------------------------------------------
My next task will be to get Cyanogen's ROM to work on my device... seeing as how Cyanogen codes for the popular HTC models, I am left out - and I don't like being left out.
Side quests will be to play with the boot.img, flash the SPL, and maybe get a nice recovery
Particularly I would love to try out nandroid.
@wineleven THANK YOU for the nudge in the right direction!
Thank you:
Google for the open source Android OS - without the free SDK wouldn't have been possible for me
General Mobile for the nifty device
Remote Exploit for BackTrack3/4 - I did most of my work on this Live CD distro
XDA-Developers Forum for info and resources: superuser files and Cyanogen's ROM for info
congratulation to you.
Some notice:
As this devices is deeply modified based on Android open source and hardware different to G1. So you can not rebuild any system framework APK from open source unless you can get the DSTL1 source code. As i now, one thing we can do is to add some external APK file (API compatible to device, now SDK 1.5) to system. Like the Superuser.apk you do.
crzyruski said:
After reviewing Cyanogen's experimental ROM I can see where and how he sets permission for su
Trying to emulate his method for myself has been plenty of trial and error, but I have finally done it.
system-update-post-script was the key file that set permissions.
One MUST keep the carriage return at the end of the file - I have a neatfreak habit of cleaning them up.
Also, using the su and Superuser.apk in Cyanogen's latest build kept restarting my device, must be because his kernel is newer than mine.
RapidShare is hosting for 90 days Android_20090826_r1502_rooted.zip
MD5: C3C13F6DC75BF6F86E5C9E41D7FB4C59
PM me if not avail.
NOTE:
I am not responsible for your new paper-weight mode...
This has worked fine on my device, but I guarantee nothing for yours...
My device is General Mobile's DSTL1 - details in post #1
What you get:
Root access via su and Superuser.apk - procured from XDA forums: http://forum.xda-developers.com/attachment.php?attachmentid=211569&d=1249225060
To use:
Your sdcard must contain "update" folder, this is where you will place the zip file after you have renamed it to "update.zip"
Happy ROOT
------------------------------------------
My next task will be to get Cyanogen's ROM to work on my device... seeing as how Cyanogen codes for the popular HTC models, I am left out - and I don't like being left out.
Side quests will be to play with the boot.img, flash the SPL, and maybe get a nice recovery
Particularly I would love to try out nandroid.
Click to expand...
Click to collapse
Hi crzyruski
I'm a new android and DSTL1 user and this information is cool
it's easy to do for a newbie as I?
What do you mean easy? What would you like to do?
I took General Mobile's only update: http://www.generalmobile.com/index.asp?action=Android_Phones/DSTL1_support and gave it ROOT. If this is all you want to do, I have compiled the package already for you in my post above. If you want to do it manually then read the whole thread to see how I did it.
If you want to use my compiled package, it is easy.
Then again, I don't know if anyone else has tried it. It worked for me.
You are only the second individual to inquire about it, I am not sure if the other fellow had any luck - he hasn't replied to me.
Hope this helps.
Keep in touch!
I only have 3 days with Android, but I think that I want to get root access. The only thing I have to do is a second "update" with your package, isn't it?
I'm going to look for a backup system program first...
Can I have problems to update from General Mobile support web in a future? (i.e Android 2.0)
It does not need to be second. That is your choice. You can use it in any order. This is not a patch so order is no relevant.
My package is basically the original General Mobile update + 2 files.
These two files are su and Superuser.apk - nothing special (except that you will obtain root access on demand)
I currently only utilize root access to run Advanced Task Manager.
And in the future I want to overclock because I feel the DSTL1 is greatly underclocked though it should max out at ~600Mhz.
Good luck with a backup program as I have not found any free versions and NAndroid is ideal but not not yet possible as you have to flash the SPL and I am not aware how to do this for DSTL1 though I am sure it is possible.
Please let me know what you end up using to backup, if you do.
I would like to note that I am not all knowing and if something goes wrong I am sorry, but can't take responsibility.
There is no reason you should not be able to update from my package to another like: original 1.5 or new 1.6 or future 2.0 (whenever it comes out).
Hopefully when those come out I will be able to modify them similarly and make them available.
But you mentioned you will only have the device for 3 days, do you suppose 2.0 will be released within this time?
-crzyruski
crzyruski said:
Please let me know what you end up using to backup, if you do.
But you mentioned you will only have the device for 3 days, do you suppose 2.0 will be released within this time?
-crzyruski
Click to expand...
Click to collapse
I'm going to try with My Backup Pro
And about 2.0 this all I know...
http://www.boygeniusreport.com/2009/10/16/android-2-0-screenshot-walkthrough/
Good luck to you.
I think I may begin working on some more DSTL1 hacks.
Please keep me updated with your progress
I only have to do ALL this process with your zip, isn't it?
How to Install the Product Update:
Create a folder at the top-level of your memory card called 'update' , and copy file '*.zip' into your phone's memory card.
Make sure your phone is off, and press the Home key together with the Power & End key to enter the recovery mode, do the operations following the UI indication:
1- Press the Home key to search the zip file from your memory card, and press the Home key again to update the software.
2- Press the Call key to do board test.
3- Press the Back key to restore the factory settings.
4- Press the Power & End key to reboot your phone after update finishes.
Click to expand...
Click to collapse
Looks correct to me. Tell me how it works out.
crzyruski said:
Looks correct to me. Tell me how it works out.
Click to expand...
Click to collapse
I've done it! and all seems to be ok...
Thank you crzyruski.
I'll be waitng for your future DSTL1 hacks.

update 18-may dualizer major update: full toolkit(beta)!

major update here, the dualizer has become a feature rich toolkit for dualbooting. this includes a modified version of amon ra's recovery image. you need it to use the dualizer toolkit, it is included and can be flashed with one command.
it is a beta version for now. i have tested each option, but i cannot foresee all conditions you might have on your phone... have a backup at all time! and don't forget to backup the stuff from your sdcard before installing dualboot, during the creation of this toolkit i accidently deleted everything on mine...
there is no logging at the moment, if you get any error messages please paste them here in full.
i haven't tried a nandroid backup at all yet, and wouldn't advice you to do it either. please use apps like titanium backup to backup your stuff. i will be looking into getting some kind of nandroid capability, but that is not a trivial topic. i can however imagine to have full pc-based backup capabilites, sometime in the future...
before you use any of the romX options make sure you have installed the dualboot environment, i have no idea what happens otherwise...
i have tried to include a full description, please let me know if something is unclear (i hope it is obvious that romX needs to be replaced with either rom1 or rom2):
Code:
kendon's dualboot toolkit for the HTC Hero
usage: ./dualizer <option>
place the two roms you want to use for dualbooting in the
rom1 and rom2 subdirectories. make sure directories do
contain other files. you can use the temp/ subdir of the
two rom folders to store your roms while you want to flash
another update.zip
you need a modified version of Amon_Ra's custom recovery image.
it can be installed with this tool, see the options.
options are:
help show this information
vmsetup prepare ubuntu vm for usage
check-dev check if your device is properly attached and connected via adb
boot-rec reboot hero to currently flashed recovery
check-rec check if RA-hero-v1.6.2-DBmod is currently flashed
boot-dbmod put hero in fastboot mode (back+power) first!
fastboot hero with RA-hero-v1.6.2-DBmod
no permanent changes are done, works with unlocked spl only
NOTE: the trackball doesn't select, use green key instead
unlocked-spl copies update.zip for unlocked spl to sdcard, so you can flash it.
if this goes wrong it can brick your phone, make sure you do it right!
flash-dbmod flash RA-hero-v1.6.2-DBmod to recovery partition (permanently)
NOTE: the trackball doesn't select, use green key instead
install-db ALL your data will be lost, so you better have a backup!
install dualboot environment on htc hero
this includes partitioning of the sdcard
place roms in folders rom1 and rom2 first!
romX wipedata wipe data/factory reset romX
romX wipedalvik wipe dalvik-cache for romX
for the following options place update.zip file in folder romX first!
romX flash flashes update.zip from folder romX
romX makeboot create boot.img-update.zip files for romX
romX makeboot push create boot.img-update.zip files for romX and push it to /sdcard
i don't see any potential to brick your phone, even if it fails, as the critical parts (spl, radio) are not touched at all. worst that could happen is that you have to do a full wipe and flash a rom... be careful while flashing recovery and/or bootloader though!
as always: use at own risk!
note: first (and maybe second) boot maybe painfully slow. after that it gets better, see for yourself if it is too slow for you. i have been using villainrom and slidevillain in a dualboot for a few days now, i haven't noticed too much slowdown. then again i don't care too much about this.
credits: huge thx to the ppl in this thread: http://forum.xda-developers.com/showthread.php?t=594077 the information in there helped a lot.
changelog:
v0.2: major update, toolkit for flashing, wiping etc.
v0.1: initial release
installation & usage instructions
please read the first post before you install dualboot!
instructions for windows:
instructions for windows said:
the dualboot install can now set up all necessary stuff in a fresh installed ubuntu virtual machine in virtualbox. you must have adb access to your hero from the windows command line, if you need help check theunlockr.com for their awesome video tutorials.
here is a great howto install virtual box in windows: http://www.psychocats.net/ubuntu/virtualbox
and this is the second part, howto install ubuntu in a virtual machine: http://www.psychocats.net/ubuntu/installing
once you are done installing ubuntu download the archive from the first post and follow these steps (the default download directory is "Downloads", so i'm gonna use that in this example):
- go to "Downloads", you find it in "Places" in the upper menu bar
- rightclick the zipfile you just downloaded and select "Extract Here"
- open a terminal window: goto Applications, Accessoires, Terminal
- execute these commands:
Code:
cd ~/Downloads/dualizer/
chmod +x dualizer
./dualizer setup
it will ask for your password once, then do some stuff and finally reboot the virtual machine.
once rebooted, connect your hero to your pc, rightclick on the usb sign in the lower right corner of the virtual machine window and select the "HTC Android Phone". some hardware installations from windows might pop up (happened to me), just click on next and let them do their stuff. if it doesn't work at first shut down ubuntu, then restart your pc and continue. "reboot tut gut", as the german likes to say
back to ubuntu, with your hero connected to pc and virtualbox, open a terminal and check if your hero is detected by adb with the following commands:
Code:
cd ~/Downloads/dualizer/
./dualizer check-dev
this will tell you if your device is properly connected. you can now continue with the options you can get from
Code:
./dualizer help
Click to expand...
Click to collapse
instructions for linux:
instructions for linux said:
you need java, perl and zip setup, make sure that these are available. then follow these steps:
- extract the attached zipfile from the first post on your pc (for this example i'll assume you extracted it on your desktop).
- get the two roms you want to dualboot, do not extract them.
- put one rom in the rom1 folder, the other rom in the rom2 folder inside the dualizer folder on your desktop.
- open a terminal, cd to the folder and make the main file executable by typing:
Code:
cd ~/Desktop/dualizer
chmod +x dualizer
- turn on your hero (recovery or normal, doesn't matter)
- connect your hero to your pc and check if your hero is detected by adb with the following commands:
Code:
./dualizer check-dev
this will tell you if your device is properly connected. you can now continue with the options you can get from
Code:
./dualizer help
Click to expand...
Click to collapse
reserved...
Holy... this is incredible. Great job on getting this out.
I use a virtual box and ubuntu 10.04 lts.The method seems to work but in step 3 on partition card my hero restarts and boots in recovery and i don't have time to mount the usb/htc device into virtual box so i get in step 5 an no device found error.The time is very short.I have to press USB-MS toggle on my hero and after that i have to mount it in virtual box.I've tried it over 20 times but i don't have time and in terminal get me the error.Is there a way to pause the process or a solution to my problem?
Sorry for my bad english
EDIT:SOLVED.Set the sleep from dualizer in step3 from 15 to 30.Wainting for setup to finish.Cross my fingers
EDIT2: Ok now this is getting awkward.Waiting on step 4 (push to sd) for 25 minutes now.I have checked the log.Last line says mounting /dev/block/mmcblk0p1 on /sdcard failed: No such file or directory.Should I wait for it any longer?Or what should I do now?
As I have said on the VillainROM forum; this is really outstanding work.
Well done, Kendon.
Zero00SM said:
EDIT2: Ok now this is getting awkward.Waiting on step 4 (push to sd) for 25 minutes now.I have checked the log.Last line says mounting /dev/block/mmcblk0p1 on /sdcard failed: No such file or directory.Should I wait for it any longer?Or what should I do now?
Click to expand...
Click to collapse
that shouldn't happen, and the pushing shouldn't take longer than a few minutes. you should cancel it by pressing ctrl-c, if you fancy debugging then check why it wouldn't mount. otherwise you can partition your sdcard, do a full wipe and should be able to flash a regular rom.
i guess i underestimated the complexity of the virtual machine solution, gotta look deeper into this... *sigh*
Hi, regarding the Apps2SD issue... Would it ever be possible for the two ROMs that are dual booting to have the same apps sourced from one place... if that makes any sense...
Like in windows... you can "install for all users" so if you log off and someone else logs in with there account the very same apps are there...
Ok bad analogy since we are talking about dual booting different versions like (Vista & Windows 7) ... but the same data on hdd is accessible...
is this possible with the dual booting scenario?
If I had Slide Villain and Villain 5.5 .. both being 2.1 ROMs which would make app compatibility a non-issue...
If I booted up Villain 5.5 and made changes to an app / save data .. could this not be accessible with the slide rom.. I would hate having to install the very same apps on another partition..worst of all if you have save data (such as a game) and wanted to play it on one of the ROMs your game progress would be different?
you could just use Titanium to transfer over the data but agaqin it is a long procedure.
It would be fantastic if we could mirror image exactly what we have on our main Roms to our "secondary roms" ...
Amazing !
Ciao
Fred
Yeah this is really amazing. I have read this on villainRom forum, and i was stupified .
But, if i want to flash another Rom as primary and need to wipe cache, i need to do this process again! Am i right?
for the shared apps:
a shared apps2sd directoy/partition is possible, although you'd have the problem that apps are installed to one market only, and idk what would happen when you update an app in one rom, would the update get market-linked in the other? you can solve this with titanium backup, but it isn't really comfortable at all. i'll think about this.
for shared data: in theory possible as well, but i don't think it would work out well. you cannot distinguish between system data and apps data that easily, and i don't think it would work to share system data (sense settings etc) between two different roms...
@masterxiter: easiest way to do this is to use the installer script again. you can wipe the cache manually, installing another rom would be really complicated (about as complicated as the installer script )...
Sweet. But is there any way i can run this in cygwin? every version of linux ive tried so far doesnt support my crap compaq wifi card or most things, or even wired for that matter, and running ubuntu in a virtual machine gives a reboot every time after step 1 (maybe cos i suck at terminal)
i'll try some time, but i have never used cygwin... so don't expect anything too soon.
joshman99 said:
Sweet. But is there any way i can run this in cygwin? every version of linux ive tried so far doesnt support my crap compaq wifi card or most things, or even wired for that matter, and running ubuntu in a virtual machine gives a reboot every time after step 1 (maybe cos i suck at terminal)
Click to expand...
Click to collapse
if you install ubuntu in an virtual machine like VMware(paid) or virtualbox(free) you can just use linux, it will automatically grab all your internet settings and stuff from the windows installation(main computer) so your windows will be like some kind of router for your virtual machine with everyhing working.
Very nice tutorial, i'm not going to try it.. because my phone has to be resend to HTC for fixing some dead pixels, there just messers with screens
BTW. you can also try another linux version sounds crazy, maybe try backtrack?? the only thing you need is linux, backtrack is..
I have backtrack 4 (I could never get wifi on that either, but tbh i couldnt work out how to try (that distro is soo confusing imo). I got backtrack 3 to work a while back, so if i can find the disk im gnna try that.
Also virtualbox didnt put my internet settings at all (maybe co im on win7 ultimate?)
Thanks for the suggestions, cos i know cygwin aint the most elegant solution
changing rom 1 and rom 2
i test lotz of roms.... everyday they are being updated...
say if i dualize with ahero0.8 and Kimera 1.7....
wud i be able to update aHero to 0.9 and leave kimera as it is???
simply can i update JUST ONE rom???
manual setup??
i tried it got error in step 3 and then 'Device not found errors...'
can u make a tutorial for doing it manually.....
kendong2 said:
please read the first post before you install dualboot!
instructions for linux:
you need java, perl and zip setup, make sure that these are available. then
Click to expand...
Click to collapse
hihi.. i am trying to do a dual boot, so im wondering what u mean by.. need java , perl and zip setup... can advice me?
He means that you need to have Java, perl and zip installed and configured on your Linux system. If you dont have that installed and configured correctly than the install script wont be able to run.
lolnl said:
He means that you need to have Java, perl and zip installed and configured on your Linux system. If you dont have that installed and configured correctly than the install script wont be able to run.
Click to expand...
Click to collapse
oh noes.. .i do not have those in my ubuntu, does that mean i cant do a dual boot? btw, i saw post 2 and post 3 ... are they the same instruction ? or different? (one for windows user and one for linux?)

[Guide] preparation guide to running Ubuntu/debian on desire z

Ok , I know there is thread about debian running fine on desire z but the tutorial there is highly unfriendly and there are some other stuff you need to do to your desire z. This is my first guide. The reason for posting in dev thread is because chroot and loop requires specific kernel support to power Ubuntu.
Just to explain certain terms here...
Kernel - the interface for android to access hardware. Note that andorid is stripped down version of ubuntu and it does not have loopdevice support
Loopdevice - Imagine virtual disk mount program such as Daemon tools. This requires specifically supported kernels such
Following tutorial will void your warrenty (root and s off) but you can change to warrenty friendly state of course XD Check out xda wiki for more info( study to know what you are doing there.)
There are plenty of guides to get su and busybox( allows android system to be able to utilise more advanced commands) so check out comprehensive guides for g2 and desirez in this wiki below is my version
-------------------------------------------------------------------------
If your phone is stock, do a lot of research before doing root and s off. cyanogenmod has good guide on wiki for you to s off and get permanet root. Just for you to know, s off is to disable security for us to flash new kernel with loopback support and root is well... needed for most of hacks in XDA XD
*note for noobs: this is tested with desire z but G2 should not have problems. just be careful of which device's gfree you are using to s off.
ENGINEERING HBOOT IS NOT REQUIRED FOR THIS AND IS NOT RECOMMENDED FOR YOU TO DO SO AS IT MAY BRICK YOUR PHONE YOU SHOULD NOT HAVE PROBLEMS FLASHING CUSTOM ROM/KERNEL WITHOUT IT (guides are confusing if custom roms require flashing hboot)
Preparation:
1. busybox (install titanium backup and under problems? you can install busybox in a easy way)
2. Recommended: Clockwork recovery(rom manager in market)
3.Root and S off
4.Optional : remove or move sd card installed apps to internal memory or else LOOPDEVICE may be occupied and you may not be able to mount ubuntu. Do this if you encounter error (caused by app2 sd) please note that recent builds in xda mount loop device as 255 to avoid this problem.
You might want to use adb if necessary
5. android terminal from market
6. 2gb free space in sdcard (certain builds use 4gb as storage image, which is limit for fat32 system)
---------Kernel preparation ---------------------------------
Flashing necessary kernel
1. Download suitable kernel with loop device support. I am using cyanogen -> virtuous-kernel-cyanogen kernel from ://files.virtuousrom.com/vision/kernels/
(add http infront) on Stock HTC Sense Rom
2. To flash this, from rom manager, boot into clockworkmod recovery and select zip file to flash. Nandroid backup is recommended beforehand
-------------------------------------------------------------------
Now your phone has loopback support to chroot into UBUNTU or DEBIAN
Well, this method is not native ubuntu but it works fine.
You can now follow any guide on XDA like G1,nexus 1etc on running linux in android. I recommend nexus 1 hacks .com for ubuntu setup or thread "Debian for Desire" for debian setup (note debian seems to have problem with vnc) there are a lot of newbie frendly guides to do this without partitioning your sd card.
What can you do with them? You can use full android terminal , use vim , open office, gcc or eclipse etc ... makes your HTC Vision true small computer with keyboard . Enjoy
Possible solution to errors you encounter while following chroot tutorial for other android devices:
-----------------trouble shoot--------------------------------
Errors:
/device/loop is busy etc.... chroot: cannot execute /bin/bash etc... shutting down ubnutu etc....
Solution: 1. Get loopback support by flashing above kernel i mentioned
if not 2. TYPE SU BEFORE YOU RUN BOOTSCRIPT ON ANDROID TERMINAL
or if they say the bootscript is not found then type sh ./*your boot script name*
if not 3. move sd apps to phone as i mentioned eariler
Other errors could be from not installing busybox.
Note that in some cases, busybox is included inside the custom rom so you dont need to install it.
Post names of kernels with ability to run ubuntu for others to know.I did not test all of them.
This is my first guide on xda and i hope this helped xda in constructive way...
Post script: I will try my best to maintain quality of the posts to be up to xda standard. Thank you for constructive feedbacks...
quick problem i noticed
I'm running post ota de-odexed and I installed virtuous-kernel_vision_advanced-v1.0.9.zip in attempts to get loopdevice but now my phone doesn't react to an touch... hahaha it's no biggie I can't fix, just wanted to state out a weird outcome I have never seen before
But hey! Your prep guide is much appreciated!
EDIT: All of the 1.0.9 kernels seem to break my touch :/
you need virtuous-cyanogen 1.3 not standard vituous kennel. it is under cyanogen. Since it is developed for cyanogen, it should be fine for wide range of roms including sense roms but yes, it is buggy. I am looking for better kennel now....
squarememory said:
Ok , I know there is thread about debian running fine on desire z but the tutorial there is highly unfriendly and there are some other stuff you need to do to your desire z. This is my first guide. The reason for posting in dev thread is because chroot and loop requires specific kennel support to power Ubuntu. Well, do not attempt this unless you can use computer well XD
Following tutorial will void your warrenty (root and s off) but you can change to warrenty friendly state of course XD Check out xda wiki for more info( study to know what you are doing there.)
-------------------------------------------------------------------------
If your phone is stock, do a lot of research before doing root and s off. cyanogenmod has good guide on wiki for you to s off and get permanet root. Just for you to know, s off is to disable security for us to flash new kennel with loopback support and root is well... needed for most of hacks in XDA XD
*note for noobs: this is tested with desire z but G2 should not have problems. just be careful of which device's gfree you are using to s off.
ENGINEERING HBOOT IS NOT REQUIRED FOR THIS AND IS NOT RECOMMENDED FOR YOU TO DO SO AS IT MAY BRICK YOUR PHONE YOU SHOULD NOT HAVE PROBLEMS FLASHING CUSTOM ROM/KENNEL WITHOUT IT (guides are confusing if custom roms require flashing hboot)
----------------------------------------------------------------
Preparation:
1. busybox (install titanium backup and under problems? you can install busybox in a easy way)
2. Recommended: Clockwork recovery(rom manager in market)
3.Root and S off
4.Optional : remove or move sd card installed apps to internal memory or else LOOPDEVICE may be occupied and you may not be able to mount ubuntu. Do this if you encounter error (caused by app2 sd)...
adb if you want to type things in cmd
5. android terminal from market
6. 2gb free space in sdcard
---------Kernel preparation (may not be needed in some custom roms)---------------------------------
Flashing necessary kernel
1. Download suitable kernel with loop device support. I am using cyanogen -> virtuous-kennel-cyanogen kennel from ://files.virtuousrom.com/vision/kernels/
(add http infront) on Stock HTC Sense Rom
2. To flash this, from rom manager, boot into clockworkmod recovery and select zip file to flash. Nandroid backup is recommended beforehand
-------------------------------------------------------------------
Now your phone has loopback support to chroot into UBUNTU or DEBIAN
You can now follow any guide on XDA like G1,nexus 1etc on running linux in android. I recommend nexus 1 hacks .com for ubuntu setup or thread "Debian for Desire" for debian setup (note debian seems to have problem with vnc)
What can you do with them? You can use full android terminal , use vim , open office, gcc or eclipse etc ... makes your HTC Vision true small computer with keyboard . Enjoy
Possible solution to errors you encounter while following chroot tutorial for other android devices:
-----------------trouble shoot--------------------------------
Errors:
/device/loop is busy etc.... chroot: cannot execute /bin/bash etc... shutting down ubnutu etc....
Solution: 1. Get loopback support by flashing above kennel i mentioned
if not 2. TYPE SU BEFORE YOU RUN BOOTSCRIPT ON ANDROID TERMINAL
or if they say the bootscript is not found then type sh ./*your boot script name*
if not 3. move sd apps to phone as i mentioned eariler
Other errors could be from not installing busybox.
Note that in some cases, busybox is included inside the custom rom so you dont need to install it.
Post names of kennels with ability to run ubuntu for others to know.I did not test all of them.
This is my first guide on xda and i hope this helped xda in constructive way...
Click to expand...
Click to collapse
it's KERNEL! not KENNEL!
teh5abiking said:
it's KERNEL! not KENNEL!
Click to expand...
Click to collapse
Really dude? That was the only time he mispelled it and you the spelling police make a lousey post as if he mispelled it everytime...get a life
Sent from my HTC Vision using XDA Premium App
Well thanks for spelling correction. English is not my primary language
Spastic909 said:
Really dude? That was the only time he mispelled it and you the spelling police make a lousey post as if he mispelled it everytime...get a life
Sent from my HTC Vision using XDA Premium App
Click to expand...
Click to collapse
Tell it spastic tell it!
xsteven77x said:
Tell it spastic tell it!
Click to expand...
Click to collapse
I thought you were insulting him XD
I have installed ubuntu without a hitch, but how do i fix the incorrect key bindings?
im thinking of using the technique that uses vnc to access ubuntu on my desire z. i am running 2.3.3 (cyanogenmod-7.1.0) on it. now forgive me for asking this its nearly 1am and im exhausted so my brain is not working right. which version of the kernel am i best getting for this? im a novice at it all but i do want to make sure i do it properly and dont brick my phone.
traumatism said:
im thinking of using the technique that uses vnc to access ubuntu on my desire z. i am running 2.3.3 (cyanogenmod-7.0.0) on it. now forgive me for asking this its nearly 1am and im exhausted so my brain is not working right. which version of the kernel am i best getting for this? im a novice at it all but i do want to make sure i do it properly and dont brick my phone.
Click to expand...
Click to collapse
This is a thread about installing ubuntu on the phone, not accessing it from the phone.
tsubus said:
This is a thread about installing ubuntu on the phone, not accessing it from the phone.
Click to expand...
Click to collapse
*facepalms* yes i know that. i will be installing it along side android and using vnc to access it locally. its a method i wish to use but i need the kernel for installing ubuntu and want to know which one. i shoulda made it more clear really.
ive just tried flashing the latest kernel for cyanogen with 7.1 but it freezes at the HTC screen on boot. any assistance will be apreciated

[GUIDE][All-In-One]LG Optimus Me P350

So, I decided to write this guide here as I couldn't find a complete one and had to jump from thread to thread (and sometimes even the sub-forum) for finding the answer.
First I wrote it in my blog and I decided to post it here. Maybe some steps are vague in details but I'm planning to detail it even more (remember, I wrote it in my personal blog first). So, here it is:
AIO LG Optimus Me P350 Guide​
Some Personal History
My experience with Android. UF! Where to start? So, I got my phone from the United States. You have no idea how wonderful it was to have the phone in my hands. Anxiety and curiosity. For some reason I always read that the first thing anyone does is root the phone and then continue doing everyday activities that do not require root, so I tried to live without rooting the phone, but I couldn’t wait for the week to go by. I had to get the best! Small problems, fixes and updates. And since I have my phone on sale, I publish this step by step guide to modify it and not die trying.
Tech Specs
Let’s start from the beginning, know the phone. Mid/low-range phone created by LG for those in a short budget but want to have a good Android experience. It has a 600 MHz processor, 256 MB RAM and ROM capacity of 512 (140 MB available for applications and data). 2.8 inch capacitive screen, 240 × 320 screen resolution. Wi-Fi b/g wireless connection, Bluetooth 2.1 with EDR, and USB 2.0 up to 480 Mbit/s. 3.1 MP camera (no flash) and FM Radio. Not bad for a basic device. Complete specifications can be found here. Enough for a casual user. But if you’re not a casual user (hence a XDA member), read on.
First of all, everything you do on the phone number is on your own. You yourself are responsible for what you do, not do, stop doing, fail, fail to read and/or shortcut you may have taken. These steps are the ones that worked for me. I am not responsible if the phone dies in the process, the cat bites the cable in the middle process, the heavens begins to fall, the 3rd world war starts or if the neighbor has a heart attack … You’ll be calling 911 afterwards… You’ve been warned!
USB Debugging
The first thing you have to learn is to turn on USB debugging. Here is a guide how to do it (If you wanna see a pictorial guide). But essentially you have to go to Settings > Application > Development and check where it says USB Debugging. Pretty easy. What is this good for? Well, for starters. modify the phone however we see fit. But most important USB Debugging allows the phone to communicate verbosely with PC with the Android SDK installed. More on this later.
KDZ Updater
KDZ Updater is an application used by LG for flashing official operating systems themselves. How did this application saw daylight outside the company, I don’t know very well, but apparently a leak appeared on LG India, but not sure. In any case, this application is our last line of salvation and the main tool for our little friend.
To install official KDZs must follow these steps:
Install the updated drivers by following the steps listed on this page.
Connect the phone with USB Debugging activated
IMPORTANT: Disable the Virtual USB Modem device from Windows Device Manager. Omit this step and the device may brick in the upgrade process.
Run the application in Administrator mode (only required on Windows Vista / 7).
In the Type drop-down list select 3GQCT and in PhoneMode, DIAG. Where it says Version, will appear the version that is installed on the phone.
Select the KDZ file to install by clicking on the button with the folder icon. Preferably save the file KDZ in the root of the hard drive as there will be little chance for error when reading the file.
Press the button “Launch Software Update”. The phone will reboot into Emergency Mode. This is normal.
Pray all you know and go for a cup of tea. The process takes about 8 to 10 minutes.
If all went well, the phone will turn off and the program displays a line that says = FINISHED =.
To start, first go into recovery mode by pressing the following buttons: Vol- & Power. This will make any old or unnecessary information to be removed. The phone will reboot into the system normally.
Original Thread
Root (Gingerbreak and SuperOneClick)
Ok, what we came here for. Rooting the phone. How do I do? It’s scary! Says who?! Lets start with the choices we have. Ok, we have the phone, but we have not updated anything, How do I get root? Gingerbreak comes on the scene. Pretty simple process: download, Enable USB Debugging, run, press Root, wait for the restart, confirm. Simple, right? Also read the instructions and warning on the link above in case something I overlooked, but that basically is the process. By the way, install Busybox, very important for future processes.
Stop, stop, stop … And if I upgraded the phone? Gingerbreak seems not to work! What do I do?! Mainly, DO NOT PANIC! First things first. Go to “About phone” and see that version it says; something different than 2.2? Cool, no problem. SuperOneClick comes on scene. Download the application, unzip. I assume you already installed the drivers, right? Otherwise, do it and come back when you have done so. Ready? Continue. Turn on USB Debugging and connect the phone to the computer. Execute the application and press the button that says “Root”. Need more information? Here is a video explaining step by step (its in spanish, but graphics needs no language) and if the antivirus gets all paranoid, read the explanation here.
Recovery (Amon-RA and CWM)
Ok, moving on. Just as clarification: From this step on, the phone should already be rooted. Otherwise, you will mourn at the very end because the phone will brick and you’ll end with a very good and expensive paperweight. What is a Recovery? Here the answer.
This is essential before changing the insides of the phone and a step that I believe needs to be forever linked to rooting process. Why? Simple! Installing a Recovery allows full system backup and restore if something goes wrong. That linking to rooting process? Because if you install a root application, modify the system, and damage the system, it can be restored to a previous time and we’re all happy campers. See?
So this is where we get our hands dirty. Initially, I ask again, have you installed the drivers? (From this point on I shouldn’t ask) Have you rooted the phone? Responded twice yes? Perfect. Now, download the Android SDK or only the .zip attached here (unzip preferably in C:\ADB\) to continue this process. Also download the Recovery that you will install, we have Amon-RA and ClockworkMod (CWM) v5, v5 touch, and v6, extract the recovery.img file to the folder where adb.exe is (If you used the SDK installer, should be at C:\Program Files\Android\android-sdk\platform-tools\; if you used the .zip, and extracted as recommended, C:\ADB\). Which to choose? My recommendation, CWM v5 (either one). Connect the phone to the computer in with USB Debugging activated. By the way, how do you feel using command line in Windows? Moving on…
Open a command window, go to where adb.exe is and run the following commands:
Code:
adb push recovery.img /sdcard/
adb push flash_image /sdcard/
With this we have copied what we need into the phone’s SD card. Just to clarify: 1) the flash_image file can only be found in the recovery Amon-RA zip (not sure if it is generic or modified exclusively for the P350, then I’d rather play it safe) and 2) CWM recovery v5 and v5 touch files come in zip-installable, but you can open the file and use recovery.img in it. In CWM v6 there is an installable zip and another to follow this same process. Lets continue…
Code:
adb shell
$ su
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock1 /system
# cat /sdcard/flash_image > /system/bin/flash_image
# chmod 755 /system/bin/flash_image
# sync
Up to this we have only prepared the area to install the Recovery. It it recommended to reboot the phone in this step, in case you run out of virtual memory but is not really so necessary (If you see an error message, then reboot). That’s yours decision. Continue…
Code:
adb shell
$ su
# flash_image recovery /sdcard/recovery.img
# sync
To confirm that everything is installed without issues it must happen one thing and do another thing. What must happen is when you execute the flash_image command, no errors should appear, if otherwise reboot and repeat the last block of commands. What must be done is execute the command reboot recovery and if everything is alright, you should go into Recovery menu, if not then all the information has been erased and back to square 1 (it happened to me the first time).
Kernel
Just for safety: are drivers installed? Root acquired? Recovery installed? Already made a backup of the ROM in use at the moment (so far should be the LG ROM)? Do it!!
So, what’s a kernel? Here’s the answer. What choices do we have? Well not too many, it depends. Are we still on the LG Stock ROM or a Froyo-based ROM (oh, getting ahead aren’t we?!)? Well, the truth, with this ROMs there are not many: Team Pecan Kernel would be my recommendation, RoQ Kernel which also works quite well. CM7 ROM or any other Gingerbread-based? Ron's RM CAF Kernel (updated weekly), pax0r kernel (discontinued), Vivek Kernel (also discontinued but higher than pax0r). Read how to use Recovery for the installation of installable zip files from Recovery. This is also applicable for the installation of ROMs.
ROM
Still with me? Still no cardiac arrest? Relax, breathe! As we reach the last modification process of the phone. After surviving this, you will have the full capacity to recover the phone from any eventuality. Dictionary, which is a ROM? Here the answer.
ROM, What options do we have? Well, although it may seems, there are many options to choose from! We have some created from source code, based-on and others that have been “ported” to work with the device. Among those created from the source we have: CyanogenMod 7.2, Pure CM Invasion and CyanogenMod 9 (Work in Progress, not quite stable), based-on: Androm x4.2 (CM7) Arc XP (CM7), Gingerbread Optimus UI (CM7) Gingerblur (CM7) and MIUI v4 (based on CM7, Arc XP with a theme very close to the real MIUI, Japanese ROM). Ports: JoyOS, ICS (Discontinued unstable), BeautySense (Decent and functional).
Further Development/Tweaks
At the moment a new tool has been released called LG P350 Pecan Toolkit, developed by antdking. Its in early development and so far it roots, unroots and installs recovery. Saves some the hassle of the command line but if we haven’t gone through all the problems and commands, what have we learned? Anyways, here’s the original thread where you can follow the development and post ideas or bugs.
If you wanna go all-in into ROM cracking and research, we have also the LGExtract tool, which unpacks the KDZ file into bits and pieces. DZ Extract Tool extracts the files within a DZ package very much into source code. I've used these tools but as my experience with coding and android development is very close to none all I've done is extract the files and read them. Antdking reminded me of a simple yet powerful tool to continue decompiling the LG filesystem called unyaffsmbn. I came across it when we were trying to decompile baseband (amss.mbn) for CM9 without success, just lo later know that the tool just decompiled system.mbn. Oh well. Antdking compiled unyaffsmbn into a nice little tool ready to work, here it is.
The volume on this phone, as many may know, is low. But there is a way to elevate it. Execute the phone app and press: 3845#*350#. This will bring up a Hidden Menu. Go to: Device Test > Sound Test > Audio CAL Tool > Subsystem Calibration. In the Gain Type dropdown list, select Speaker Gain. Set Data textbox gets focus, input the number 90 and press OK button. In Gain Type, select Input1 Gain, and we press Ok button again. Exit the Hidden Menu. This will elevate the speaker volume but just temporary, it will be restored to default values when rebooted. So either don't reboot or repeat this process everytime you reboot.
And that would be all. Happy hacking!
Great kudos to the real developers here:
drapalyuk: For the first ever recovery for P350, Amon-RA
pax0r: Started it all, Kernel, ROM
ron gokhle: ROMs, Kernel and Recovery builds
vivekkalady: Kernel, Touch Recovery, first ICS port, and some other fix work
nikhil4186: For the KDZ Guide (although written originally for LG P500
antdking: For a great-to-be toolkit
great guide good job
Nicely written.Its a really good guide for all those who are new to P-350 and I believe that it will help them to learn some of the basic stuff.Well done!
to go on the end of this guide, how to extract the files out of the system.mbn to get the system files
http://db.tt/7VruqEzr
it returns similar files to what you find in a rom
I did not make unyaffsmbn
I made the tool that uses unyaffsmbn
enjoy
antdking said:
to go on the end of this guide, how to extract the files out of the system.mbn to get the system files
http://db.tt/7VruqEzr
it returns similar files to what you find in a rom
I did not make unyaffsmbn
I made the tool that uses unyaffsmbn
enjoy
Click to expand...
Click to collapse
got the PM and you reminded me of that tool (I remembder I came across it when we were trying to crack amss.mbn for CM9)... I'll post the original thread and the tool you just mentioned...
Updated adding unyaffsmbn tool... Thanks antdking!
Added Volume tweak for speaker to sound harder.
Added P350 (and guide) to XDA wiki. http://forum.xda-developers.com/wiki/LG_Optimus_Me
dbarrera said:
Added P350 (and guide) to XDA wiki. http://forum.xda-developers.com/wiki/LG_Optimus_Me
Click to expand...
Click to collapse
thanks man :good::good::good::good::good::good::good::good:
Guys We have got Official Support From XDA Please Move This Thread To Our Device Section
Very good!!!
I placed some problem I am having, just in case you have time an patience for this case.
Tks
http://forum.xda-developers.com/showthread.php?t=2461183
Great Guide Man! Thanks a lot.

[BOOT-ON-CHARGE] LG Pro Lite D680 - Developer help needed.

LG Pro Lite D680
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Boot On Charge
Non-generic feature for commercial purposes
URGENT NEED! - WILL DONATE​
What we need:
I am looking for an urgent solution to boot-on-charge LG D680 cell phone, I am asking for help to developers who have experience on this area. The subject is related to unlock the bootlaoder, fastboot and custom rom. I understand the task is not simple, I am looking forward to donate whoever hacks the non generic feature.
What we do:
We provide video service through LG D680 cell phone (Also known as LG Pro Lite D680), the phone has 3G connection and is plugged to the power supply when is working.
Problem:
Most of the day the phone is plugged and working properly, however when the weekend comes the cell phone is unplugged and the energy is completely consumed. Currently, when the power is back to the cell phone we need to start the cell phone MANUALLY by pressing the power on button.
Goal:
We need the phone to be booted into the OS automatically when is plugged into the power USB cable (the phone initial status is powered off).
Possible Solutions / Alternatives:
Unlock the bootloader and run fastboot command fastboot oem off-mode-charge 0.
Continue our research, based on the steps described below (see LG D680 experience)
Replace charge animation with boot file command /system/bin/reboot (see Huawei experience below replacing ipod file).
Finding a custom ROM that already contains a Boot on Charge behaviour.
Finding a custom ROM that at least has “Power On Schedule” feature (AOSP certificate permissions level).
Finding a generic Android vestion with “Power On Schedule”.
Cellphone specifications:
PLATFORM
OS - Android OS, v4.1.2 (Jelly Bean), upgradаble to v4.4.2 (KitKat)
Chipset - Mediatek MT6577
CPU - Dual-core 1 GHz Cortex-A9
GPU - PowerVR SGX531
Previous work and research:
We did this "boot on charge" research in two types of cell phones. One is HUAWEI G730 and the other is LG D680. Fortunately, it worked fine in G730, but we haven’t the same results up to now on LG D680.
In Huawei G730, we replaced charging animation located at /system/bin/ipod with an ipod file containing “/system/bin/reboot” and worked like charm!
LG D680, we could not find the animation file, but we found that it might be inside the boot image. We did some research in order to modify it, but we got blocked (someone might continue our steps if useful).
HUAWEI G730 Extended Procedure:
Since this phone has a Mediatek chipset, the “battery animation” app is running on /system/bin folder. Is running with the filename ipod. The main task is to exchange ipod content (which is originally binary) to an ipod file with this content: /system/bin/reboot.
So, create a brand new file called ipod, and wrote the line in there. We transferred the file to the phone via adb push, as shown in next steps below.
Copy procedure: So, we set our phone to USB Debugging Mode, then we connected it to the PC, and run the following script:
adb shell mkdir /storage/sdcard0/carga/ (We created a folder to store files being pushed from the PC to the phone)
adb push ipod /storage/sdcard0/carga/ (We are pushing the file to the storage folder within the phone)
adb shell "su -c 'mount -o rw,remount -t ext4 /dev/block/mmcblk0p5 /system'" (This step is very important, here we remount the /system folder with read-write permissions. Only doing this we will be able to copy programmatically the “hacked” file ipod to /system/app. Look out that we used mmcblk0p5 because the system folder is mapped there in this phone. You can check this running cat /proc/dumchar_info)
adb shell "su -c 'chattr -i /system/bin/ipod'" (doing this we took out immutability to the original file ipod)
adb shell "su -c 'cp /system/bin/ipod /storage/sdcard0/carga/ipod.old'" (just creating a backup file from the original ipod)
adb shell "su -c 'rm /system/bin/ipod'" (here we are removing original ipod file)
adb shell "su -c 'cp /storage/sdcard0/carga/ipod /system/bin/'" (now we copy the new file ipod to the destination folder)
adb shell "su -c 'chmod 755 /system/bin/ipod'" (change the permission ro rwx-rx-rx)
adb shell "su -c 'mount -o ro,remount -t ext4 /dev/block/mmcblk0p5 /system'" (we remount the /system folder with read-only permissions)
adb shell "su -c 'reboot'" (Finally we reboot the phone)
RESULT: Whenever you plug in the phone to the charger when it is off, it will try to boot on the battery animation, but instead, it will be redirected to a “reboot” command, which in turn will be redirecting execution to the O.S.
LG D680 Procedure:
We found that this phone also has a Mediatek chipset. Moreover, it also has a file called ipod within /system/bin. But in this case, the bootloader image doesn’t call ipod whenever it displays the battery animation. So we had to check where is mapped the boot image on the phone by executing adb shell "cat /proc/dumchar_info". As the picture shows, the boot image (bootimg) is mapped in /dev/block/mmcblk0, from offset 0x1200000, and with size 0x900000.
We tried the following steps, in order to test if we were able to download / upload booting without bricking the phone:
We copy bootimg partition to boot.img by doing adb shell "su -c dd if=/dev/block/mmcblk0 of=/storage/sdcard0/boot.img bs=1024 skip=18432 count=9216’. (Skip and Count are measured on KBytes, and those values are offset and size translated from hexa to dec).
Then we did the inverse operation by executing: adb shell "su -c dd if=/storage/sdcard0/boot.img of=/dev/block/mmcblk0 bs=1024 seek=18432”
RESULT: The phone WASN’T bricked, and reboot normally (obviously without any change on bootimg).
Because these steps worked, we went even further, this time by unpacking and repacking boot.img file. The steps done were:
Same as (b)
We pulled boot.img file from the phone to a folder within the PC, and then we unpacked the image with bootimg.exe as the picture shows below. One interesting fact is that the pulled file sized almost 9MB.
Then we repacked it without any change inside the image, as the picture shows below. The “repacked” image is now on file “boot-new.img”, but its size is almost 7.4MB. We don’t know why we have this difference.
Same as step (ii) on (b).
RESULT: The phone resulted in a SECURITY_ERROR. It is weird because we didn’t change anything. We didn’t tried further since we are not able to unpack-repack the same image, and loading it successfully.
Edited: The security error can be avoided please follow the just below instructions.
Avoid Security Error:
In order to avoid the security error above mentioned, you need to edit the default.prop file (located at /bootimg/initrd)
Change the value from 1 to 0.
FastBoot Note LG:
Fastboot is a solution performing these commands, the problem is that the bootloader is locked for these operations on the generic vesion:
fastboot oem unlock
fastboot oem off-mode-charge 0
fastboot oem lock
fastboot reboot
The command "adb reboot bootloader" does not enter on fastboot upon reboot. There seems to be an opened option while booting on "Download Mode". What I did find out is that when you go into "Download Mode" a new ADB Device is detected on my computer however no driver matched the device. I assume fastboot could be avilable on Download Mode. I have been suggested by romulocarlos to Install the drivers on LG's website however did not work out.
Files:
For making the tests your will need the system.img, boot.img images files. If you brick your phone and want to un-brick the phone please follow this guide [Guide] LG G PRO LITE- Unroot/Unbrick - flash official factory firmware. Currently we are using this kdz image.
Forum:
G Pro Lite D680 Android Development at Android General.
XDA considered the case and opened a new forum for the phone. Thanks very much laufersteppenwolf (aka Wolf), MikeChannon (forum moderator) and svetius.
Conclusion:
We have reached this spot and need help from more advanced hackers. As you guys can see, we have been working hard to trying to hack the boot-on-charge feature on the D680 however has not been yet possible. There is no precedent on this phone on custom CWM & TWRP and custom roms yet therefore the is no out of the box solution as on many other phones (i.e. cyanogen list). We have also tried XDA University practices with no results.
I am ready to donate whoever would help us in solving this problem, its an urgent matter that needs to be solved as soon as possible. I will reward a developer by making a donation.
Appreciate very much the help in advance and reading.
Best,
Jose
Well, it's not that easy without having the actual device, but it'd help quite a bit if you could upload a system dump as well as the boot.img
laufersteppenwolf said:
Well, it's not that easy without having the actual device, but it'd help quite a bit if you could upload a system dump as well as the boot.img
Click to expand...
Click to collapse
Hi laufersteppenwolf,
Congratulations for your achievements and career, amazing.
I am hereby sharing two link resoruces to download what you have asked for, system.html containing the system.img and boot.html containing boot.img. Please let me know if you have problems downloading.
I understand the side effects of not having the cellphone by your side, hope we can mitigate it with the image files you are asking. As extended solution I can open a vnc session or whatever remote tool you can consider.
Thanks so much for the answer and support.
Best,
Jose
JoseVigil said:
Hi laufersteppenwolf,
Congratulations for your achievements and career, amazing.
I am hereby sharing two link resoruces to download what you have asked for, system.html containing the system.img and boot.html containing boot.img. Please let me know if you have problems downloading.
I understand the side effects of not having the cellphone by your side, hope we can mitigate it with the image files you are asking. As extended solution I can open a vnc session or whatever remote tool you can consider.
Thanks so much for the answer and support.
Best,
Jose
Click to expand...
Click to collapse
I am DL'ing the files now, but please use another hoster, as 4shared is not allowed on XDA
laufersteppenwolf said:
I am DL'ing the files now, but please use another hoster, as 4shared is not allowed on XDA
Click to expand...
Click to collapse
Hi laufersteppenwolf,
Thanks for clarifying, I was not aware 4shared was not allowed. I am changing the hosting and updating the link.
Cheers,
Jose
Alright, what I have done so far is I have unpacked the boot image and the ramdisk, edited the ramdisk so it shoud execute /system/bin/reboot when the phone boots because of the charger. Then I repacked both and signed the boot.img again so the bootloader would accept it.
The result, however, is a bootloop. I am just not yet sure whether it is caused by a "false alarm" (the ramdisk always thinking the phone is being booted because of a plugged in charger) or caused by either the bootloader or other low-level security checks. But I also doubt that, as the bootloader seems to accept the repacked image (doesn't show the security error screen).
But I currently do not have any logs, which is why all this is wild guessing. So the highest priority now is to get some proper logs so I know what's going on
laufersteppenwolf said:
Alright, what I have done so far is I have unpacked the boot image and the ramdisk, edited the ramdisk so it shoud execute /system/bin/reboot when the phone boots because of the charger. Then I repacked both and signed the boot.img again so the bootloader would accept it.
The result, however, is a bootloop. I am just not yet sure whether it is caused by a "false alarm" (the ramdisk always thinking the phone is being booted because of a plugged in charger) or caused by either the bootloader or other low-level security checks. But I also doubt that, as the bootloader seems to accept the repacked image (doesn't show the security error screen).
But I currently do not have any logs, which is why all this is wild guessing. So the highest priority now is to get some proper logs so I know what's going on
Click to expand...
Click to collapse
Hi Wolf,
Great advance! Keep the great work up .
I have made some modifications on the original post. Yes you are right, the bootloader friendly accepts the original image and we have figured out the security error. We have found on our end that you need to edit the default.prop file (located at /bootimg/initrd) and set ro.secure to value 0. I also added the files to the post (yet to change the server origin on the boot.image though), added the kdz image to unbrick. Also appended the new forum for the phone.
I appreciate that you have favored to create the forum for the G Pro Lite D680 Android Development. Its great that we can help the community with our achievements.
Best,
Jose
JoseVigil said:
Hi Wolf,
Great advance! Keep the great work up .
I have made some modifications on the original post. Yes you are right, the bootloader friendly accepts the original image and we have figured out the security error. We have found on our end that you need to edit the default.prop file (located at /bootimg/initrd) and set ro.secure to value 0. I also added the files to the post (yet to change the server origin on the boot.image though), added the kdz image to unbrick. Also appended the new forum for the phone.
I appreciate that you have favored to create the forum for the G Pro Lite D680 Android Development. Its great that we can help the community with our achievements.
Best,
Jose
Click to expand...
Click to collapse
ro.secure doesn't trigger the security checks, this prop is only for other things like adb on early boot, enabling adb remount, adb as root by default,...
I also set ro.secure to 0 in the builds I sent you, so that's not the cause of the issue
@JoseVigil
I have some pretty good news The phone now does exactly what you want it to do, as soon as you plug in the charger, the phone boots into offline charging mode, but then directly reboots again into the normal system.
The reboot is not that nice, but it's by far the easiest, as well as safest, way to do it.
Turns out, LG did a pretty sloppy job, giving me adb access to the device when in offline charging mode, giving me the chance to read which process is running and patching the binary to run my hack before actually executing the binary. And that's it. A few lines of bash code and you're good to go
Now my question, do you want me to write a tiny script to do all the work patching the system, or shall I just explain what to do?
laufersteppenwolf said:
@JoseVigil
I have some pretty good news The phone now does exactly what you want it to do, as soon as you plug in the charger, the phone boots into offline charging mode, but then directly reboots again into the normal system.
The reboot is not that nice, but it's by far the easiest, as well as safest, way to do it.
Turns out, LG did a pretty sloppy job, giving me adb access to the device when in offline charging mode, giving me the chance to read which process is running and patching the binary to run my hack before actually executing the binary. And that's it. A few lines of bash code and you're good to go
Now my question, do you want me to write a tiny script to do all the work patching the system, or shall I just explain what to do?
Click to expand...
Click to collapse
You are the man Wolf!
Its great that you have been able to find a workaround.
Yes, ideally both. I would appreciate if you can write the script so we can run it on our rooted phones pragmatically and a brief description of what it does (comprehensive from reading the script too) with implementation steps to reproduce too.
With the script I will do the proper test on my end and provide you feedback in case we have an issue. I will place the donation the coming week early on right after the test, I will be pleased that you get your reaward .
Once that, I think It would be pertinent though that we can expose how far we have reached with our research. If you agree, we can set the ground for someone (either me or you or anyone) to get a bootable customized boot image and unlock the door for CM.
I would love to see this running on CM. But I also know we have to be realistic, as you mentioned, this could be a hell of a work to have a working custom recovery, the device tree and blobs with kernel (almost XDA University I have not been able to deal with too).
It has been a lot of fun and a pleasure to know you and interact with you. I hope this is our first experience.
Thanks very much for the great work.
Best,
Jose
JoseVigil said:
You are the man Wolf!
Its great that you have been able to find a workaround.
Yes, ideally both. I would appreciate if you can write the script so we can run it on our rooted phones pragmatically and a brief description of what it does (comprehensive from reading the script too) with implementation steps to reproduce too.
With the script I will do the proper test on my end and provide you feedback in case we have an issue. I will place the donation the coming week early on right after the test, I will be pleased that you get your reaward .
Once that, I think It would be pertinent though that we can expose how far we have reached with our research. If you agree, we can set the ground for someone (either me or you or anyone) to get a bootable customized boot image and unlock the door for CM.
I would love to see this running on CM. But I also know we have to be realistic, as you mentioned, this could be a hell of a work to have a working custom recovery, the device tree and blobs with kernel (almost XDA University I have not been able to deal with too).
It has been a lot of fun and a pleasure to know you and interact with you. I hope this is our first experience.
Thanks very much for the great work.
Best,
Jose
Click to expand...
Click to collapse
Alright, in the attachment I have uploaded the script, including all needed files in order to execute it. The script will also tell you what it's about to do before doing it, so in case you run into issues, you know where to look into
So, what the installer script is going to do:
It will first of all push a script temporarily to the internal sdcard, then it will back up /system/bin/rtcd to /system/bin/rtcd_original, as we need to execute it later again. Next it will copy the script over from the sdcard to /system/bin/rtcd, replacing the original binary (and setting the correct permissions to both modified files). As the last step it will delete the temp file from the sdcard again.
That's all the installer script does.
The actual "magic" is inside the script being pushed to /system. It gets executed before starting chargemon and reads out the devices boot mode. If the boot mode is charger, it executes /system/bin/reboot. Otherwise it executes the original binary in /system/bin/rtcd_original.
And that's about it As simple as it could only be
Regarding further development, up until now, every device I own received a werewolf kernel, and I'm not planning on making an exception for this phone
I will definitely keep on looking into it, though it will not be as high on my priorities list as this workaround was
I will most likely open a new thread in the next couple of days, stating my findings regarding the phone/boot image/bootloader.
@JoseVigil @laufersteppenwolf
I'm New In Rom Developing . But I Think This Can Help You To Find Security Checks
I need lg g pro lite dual d686 custom twrp recovery i cant find anywhere plz provide working recovery link for d686 as iam new it seems custom recovery for specific d686 dosnt exits so share tested link for d686
Sent from my LG-D686 using xda Forums PRO
Hello I need boot on charge on my LG E460 with MTK. I done ipod change, rctd replace from laufersteppenwolf file without results. I can't went into fastboot mode of course to set oem mode charge for 0
Phone have root, bootloader unlock, busybox and supersu. Any suggestions?
Maxjimme said:
I need lg g pro lite dual d686 custom twrp recovery i cant find anywhere plz provide working recovery link for d686 as iam new it seems custom recovery for specific d686 dosnt exits so share tested link for d686
Sent from my LG-D686 using xda Forums PRO
Click to expand...
Click to collapse
TWRP RECOVERY
http://forum.xda-developers.com/optimus-g-pro/d680-development/d686-unsecured-boot-img-twrp-2-8-7-x-t3163144
Same Problem here with LG E460. Is there a solution for fastboot mode with this device?
hi, do you think this script could work on a LG G Pro 2 ?
hi guys, any chance i could get this working on a chinese mediatek device running kitkat 4.4.2 ??

Categories

Resources