TWRP Recovery for the LG F3Q (codenames: fx3q, d520)
Background story (who ever wants to know):
As I'm currently testing around with flashing etc I hated it to re-flash the stock ROM again and again. It is sooo time consuming..
In that kind of ROM compiling learning process I also was able to build a working TWRP recovery for the LG F3Q so that was such a good feeling But as said the caveat was that because of the locked bootloader we can reach TWRP (or CWM) only when executing "adb reboot recovery" from the running system. That was not really satisfying me though..
Some day I've done a factory reset and well I saw that this is starting my TWRP recovery when executing it! Well it isn't such a surprise as TWRP sits on the recovery partition and will be triggered by the factory reset script but... well do you think what I think? When it would be possible to start TWRP fully and not that factory reset part of TWRP than we would have a workaround to reach the recovery mode without booting the system (which is in fact not possible anymore when flashing of system.img/boot.img fails)
That said.. I was in touch with the TWRP developers bigbiff and Dees_Troy and many thanks for the hint they gave me! I have build a new TWRP version based on that information I got and well the idea of that is:
Vol Down + Power -> LG Factory Reset screen appears
Confirming with power 2 times as asked
Voila: No factory reset anymore but TWRP is here!
Well that will have a caveat - READ CAREFULLY:
As you may think of the factory reset in the boot-up process and within the ROM will not working anymore until you flash another recovery!
But if you know that it is not such a caveat because you can choose the wipe options within TWRP to do a "manual" factory reset.
v2.8.1.0 build 5
USE THAT ON YOUR OWN RISK! BACKUP BEFORE!
Working (quickly tested):
Install (to flash a custom Kernel)
Mounting partitions
Reboot Recovery | System
adb shell (also see known issues)
Backup (compressed | uncompressed | encrypted (!) | unencrypted)
Restore (unencrypted | encypted (!) | compressed | uncompressed)
Internal storage /data/media
MTP which mounts the external storage!
File Manager
Terminal Command
Power charging while in TWRP
Displaying CPU temp
Totally untested:
WIPE (should work)
decrypting /data (but should work as it do so for encrypted backups already)
Every option which is not stated as "Known issue" or "Working"
Known issues (with workarounds):
ADB works only when screen "timed out" (manual locking does not help it must time out) therefore ADB can take up to 1 minute after boot until it becomes available (because screen need to be timed out first)
Workaround: set the time limit in the screen menu to e.g. 10 sec (that is the default value for now)
Timezone is not set correctly (that seems to be a well known bug in several devices using TWRP.... )
Workaround: set a timezone which displays the most accurate timezone
Known issues (without workarounds):
When you use the "Power Off" option in the "Reboot" menu the device will reboot instead of powering off
Wiping /data not possible after "factory reset buttons" used. You need to choose "wipe" and then "format data" manually (or use mke2fs on CLI).
Vibration is not working (I will not fix that atm because I like it that way)
Hardware keys at bottom doesn't work
If you use the factory reset button /data partition will be inaccessible and need to be re-flashed (means you will LOOSE your app and system configs when you use factore reset)
Download:
Attached you will find the TWRP v2.8.1.0 version ready to use even with locked bootloader:
BACKUP EVERYTHING BEFORE USING THIS. USE AT YOUR OWN RISK!
DD Image file:twrp_v2.8.1.0_build5_fx3q_FR-OFF.img.zip = FactoryReset is disabled / TWRP will be loaded instead (also see known issues)
Read the Installation & Usage instructions in this thread on how to install that file.
Installation & Usage instructions
Pre-Requirements
Read the FAQ
YOU NEED ROOT! (check FAQ)
YOU SHOULD do a NANDroid BACKUP! (check FAQ)
You need to boot up, enable USB debugging and then connect USB cable.(check FAQ get ROOT - the link contains a guide on that)
You better doing a NANDroid backup right? (I mentioned that before - but DO it! NOW!)
For the best usage experience install the sediKERNEL or use joel's debloated stock ROM which includes it already
Bulletproof Method 1: "the average user"
Use this guide if you simply want to install & use TWRP like it should be. If you're unsure use this guide!
Install:
Download the TWRP recovery file and unzip it
copy it to your device (e.g. adb push or simply copy & paste by your file browser)
Download the loki_tool (https://github.com/djrbliss/loki/raw/master/bin/loki_tool)
copy loki_tool to your device (e.g. adb push or simply copy & paste by your file browser)
execute:
adb shell
su (you may need to grant permission)
mount -oremount,rw /system
cp /PATH-WHERE-YOU-COPIED/loki_tool /system/bin/ && chmod 755 /system/bin/loki_tool
loki_tool flash recovery /PATH-WHERE-YOU-COPIED/twrp_X.X.X.X_recovery_FRoff/off.img
reboot recovery --> you should see the TWRP screen
Usage (sediKERNEL v2.0 or higher installed):
Power on the device
when you see the LG logo the first time do NOTHING!!
When the screen goes black THEN press Volume UP + Volume DOWN. Both the same time and hold them pressed.
Release the buttons when the screen goes black again
Wait. You will see the LG logo a third time and then you will see the recovery screen!
If you see a kernel crash then you have pressed the magic keys too early! Read and follow the above steps carefully and you should be fine.
Usage (without sediKERNEL v2.0 or higher):
boot into your ROM
execute "adb reboot recovery" from your PC or open a Terminal on your device and execute "su" then "reboot recovery"
Bulletproof Method 2: "developers only"
This is the developers preferred way of installing TWRP. It ensures that even when your ROM or Kernel gets damaged that you still be able to boot into recovery. This is to the developers or heavy testers who are knowing what they do ONLY!
But even when you think this is for you: Read the important hint at the end before deciding if you want to choose this method.
Install:
flash recovery image to your RECOVERY partition:
adb shell su -c dd if=/storage/external_SD/twrp_vXXXXX_fx3q_FR-OFF.img of=/dev/block/platform/msm_sdcc.1/by-name/recovery
adb reboot recovery
A user reports the the by-name does not worked for him but this one:
adb shell su -c dd if=/storage/external_SD/twrp_vXXXXX_fx3q_FR-OFF.img of=/dev/block/mmcblk0p17
-> If you can see TWRP now everything is fine - Otherwise DO NOT continue!
BACKUP YOUR WHOLE DEVICE NOW! I highly recommend to backup everything except /data from within TWRP because it is easy and works (from TWRP v2.8build5 or higher)
BACKUP /data is recommended to be done NOW and this way:
adb shell su -c dd if=/dev/block/platform/msm_sdcc.1/by-name/userdata of=/external_sd/userdata_backup_stock.img
--> This can take a long while but it contains also the backup for the internal storage not only /data and that internal part is not backupable over TWRP
while in TWRP flash the same recovery image to your BOOT partition now (do not think that this is dangerous. The boot partition is not a magic thing or so it is only the partition which will be started from the bootloader thats all about it. So yes you can install a recovery image on the boot partition without any harm.):
adb shell su -c dd if=/external_sd/twrp_vXXXXX_fx3q_FR-OFF.img.loki of=/dev/block/platform/msm_sdcc.1/by-name/boot
watch carefully that the process ended without errors and that the size is exactly the same as it should be (about 1,3GB)
adb shell sync
power off the device by taken out the battery (do not use reboot or something we want to be sure that the next step is absolutely really the normal boot up)
Boot up normally --> you should see TWRP !! You're NOT in recovery mode you're booting the normal boot mode!
Go on with flashing the sediKERNEL into your RECOVERY partition:
Download the sediKERNEL from here (the stock one could work, too but never tested ...)
push it to your device with adb or MTP (since v2.8build5)
Flash the sediKERNEL to your RECOVERY partition:
adb shell su -c dd if=/external_sd/sediKERNEL_JB-vXXXX.img of=/dev/block/platform/msm_sdcc.1/by-name/recovery
Reboot into Recovery by using TWRP GUI or by executing "adb reboot recovery"
Your ROM will boot.
Usage:
From now on every time your device booting up you will see the TWRP screen and need to choose Reboot-->Recovery to boot your ROM.
This is the absolute best way to use TWRP if you want to be sure that you will reach the recovery even when your ROM gets damaged and is confirmed to work very well (as always guarantees are not available )
Important hint:
Be sure that you keep in mind that from now on your recovery and boot partition are not the same anymore (you can always revert back to the normal behaviour, of course!). So if you want to flash a kernel image you need to ensure that it goes to the RECOVERY partition instead of the normal BOOT partition (because on boot partition is TWRP now).
If I got my ROM working I will definitively add an option to the installer where this will be ensured and I asked @joel.maxuel for his stock ROM to add that, too. As for now we are the only ones who are developing for the F3Q so you should be save enough atm but you will need to keep that always in mind when you want to replace the kernel and/or ROM.
What would happen if you forget about that? Well nothing really bad because when you install a kernel or ROM the boot image partition simply gets overwritten and that means only that your TWRP is not there anymore but the system will boot (if the new kernel/ROM is not buggy or damaged). You then could install TWRP by method 1 or using method 2 by using the boot image/Kernel you want to install.
Damage your device - booting (NOT RECOMMENDED will loose /data ):
You probably NEVER want to use this method. It is here for reference only.
I highly recommend to choose one of the above bulletproof versions instead of this one because it WILL damage /data and you need to restore that whole partition afterwards.
All my tests has shown that this comes not from TWRP (in one of my tests I disabled everything in the sourcecode of TWRP which wipes /data) but coming from LG itself. The factory reset button/option do something with the /data partition sturucture and afterwards you cannot use that anymore. I also tried to restore the partition info by trying all backup superblocks but that doesn't worked. No backup superblock is accessible.
Restoring them by mke2fs and e2fsck does not work unfortunately.. (mke2fs -S /dev/block/platform/msm_sdcc.1/by-name/userdata && e2fsck -yf /dev/block/platform/msm_sdcc.1/by-name/userdata)
So if you have loosed your /data and/or internal storage you need to have a DD imaged backup near.
Install:
same as for "Bulletproof Method 1" above
Usage:
When you choosen FR-OFF then TWRP will be able to start without booting up the whole system (also see known issues):
Power Off the device (remove battery)
Vol Down + Power --> Then put the battery back --> LG Factory Reset screen appears
Confirming with power button 2 times as asked - if you downloaded and flashed the FRoff version of TWRP it will NOT open the normal reset procedure but /data and the internal storage are not accessible afterwards (read above about the details). That means your app configs and systems configs get lost that way. You have been warned!
Voila: No (full) factory reset anymore but TWRP is here when you have damaged your ROM or for some dev approach
If you want the factory reset back simply choose the file twrp_2.7.1.0_recovery_FRon.img.lok and follow the above instructions. Afterwards you will have TWRP but it will be reachable only when you execute "adb reboot recovery" from the running system.
XDA:DevDB Information
sediTWRP for LG Optimus F3Q, Tool/Utility for the General Discussion
Contributors
xdajog
Source Code: https://github.com/xdajog/bootable_recovery_twrp_fx3q
Version Information
Status: Stable
Current Stable Version: v2.8.1.0 build 5
Stable Release Date: 2014-11-18
Created 2015-05-19
Last Updated 2015-07-20
FAQ
Frequently Asked Questions (FAQ)
What is that "adb" thing?
adb stands for: Android Debug Bridge and can help a lot when it comes to work with your device. It is not for developers only but they use it a lot of course.
But a normal user can use this to exchange files without the need of mounting, backing up the device, reboot the device and use it as a very comfortable way of having a terminal emulator.
Normally adb itself is not available as a standalone application - it comes with the Android SDK which is very big and heavy if you want to use adb and/or fastboot (another great tool) only.
But we live in a great world with many people wanting to make things easy so here you go when you want/need only adb and fastboot:
download & install adb at lifehacker
(Direct link for Windows users: Go to easy ADB install thread)
How to get root for the F3Q?
Here is the tool and guide: Saferoot
[*]What is a "nandroid" backup?
nandroid means essentially: "a full image of all your partitions" so it is a full snapshot of your ROM including all your apps and contents.
The name NANDroid is a portmanteau of "NAND" (as in Flash memory - NAND flash) and "Android." (Source)
[*]How to create a "nandroid" backup?
(See above for the meaning of "nandroid backup")
You have several options on how to do that.
The normal and absolutely recommended way is to do that "offline" (from within recovery mode) but you can also do it "online" (while Android is running).
.
Offline nandroid backup by using TWRP recovery: Guide
If you have no custom recovery installed read on.
.
Online nandroid backup:
by using an app:
There is 1 (known to me) "online" nandroid backup tool available which will backup from within your running Android: PlayStore.
I tested it and still using it since a while and I really like it but I would not fully resist on it.
I had no problems backing up but sometimes an app is lost when restoring. This may have been fixed but well it is like imaging a running Windows or Linux system:
Do not do it online if you can - it may/will work but there could be problems/inconsistencies later!!
If you never made a nandroid before doing it online will not harm anything and should be your first start. So install the Online Nandroid backup tool and begin.
Check out this guide for some hints: Guide
(If you like the Android app do not hesitate to buy the unlock key to support the developer!)
by using commandline tools:
First of all you need "adb" installed (check out the FAQ answer number 1 above).
Then you need someone who is telling you the device partition table and you need a big sized SD card to hold the images.
The reason is that you will use a special command named "dd" which images the whole partition (not the content only!).
dd is a VERY dangerous tool because if you use it wrong your device may get bricked so it is essential that you are using the
correct command and check that twice!
Check out the next FAQ on how to do this for the F3Q.
[*]How to create a "nandroid" backup for the F3Q - WITHOUT having a custom recovery?
The whole process will take a big amount of time but it is worth to follow each step including the md5sum checks at the end.
Please read the previous FAQ first because there you will find more information about background and other options you may have.
Ensure you have a SD card inserted which is big enough and having enough free space available (4GB at least! I recommend at least 8 GB but this depends on the size of your current data partition. A completely stock ROM with nothing installed and unused will need 3 GB space).
.
Install "adb" on your pc (check out the FAQ #1 above).
root your device (check out FAQ #2 above)
connect with adb to your (running) F3Q:
adb shell
(you should see a prompt)
su
(you need to grant permission if you haven't yet)
Then backup your current ROM and data:
dd if=/dev/block/platform/msm_sdcc.1/by-name/system of=/storage/external_SD/system.2015-07-20.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/boot of=/storage/external_SD/boot.2015-07-20.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/userdata of=/storage/external_SD/userdata.2015-07-20.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/recovery of=/storage/external_SD/recovery.2015-07-20.img
# If you never backed up your EFS you really should do that once:
dd if=/dev/block/platform/msm_sdcc.1/by-name/modemst1 of=/storage/external_SD/modemst1.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/modemst2 of=/storage/external_SD/modemst2.img
Click to expand...
Click to collapse
Just to be sure you can do an online backup now, too ( Guide ) Online Nandroid backup App
.
copy the backup(s) to your device (connect USB cable - open your external storage and drag&drop) <--- DO NOT SKIP THIS STEP!!!! It is absolutely essential!
Check your copy on your device:
md5sum /storage/external_SD/system.2015-07-20.img
md5sum /storage/external_SD/boot.2015-07-20.img
md5sum /storage/external_SD/userdata.2015-07-20.img
md5sum /storage/external_SD/recovery.2015-07-20.img
md5sum /storage/external_SD/modemst1.img
md5sum /storage/external_SD/modemst2.img
Click to expand...
Click to collapse
Download a md5sum checker like this one Windows MD5 and load each file you copied to it (on Linux the "md5sum" command can be used of course).
compare the md5sums from the above output and ensure that they are all matching.
[*]Why is factory reset not working when installing TWRP? (or: AAAAaaaah my /data is inaccessible after doing a factory reset!!!!)
All my tests has shown that this comes not from TWRP (in one of my tests I disabled everything in the sourcecode of TWRP which wipes /data) but coming from LG itself. The factory reset button/option do something with the /data partition sturucture and afterwards you cannot use that anymore. I also tried to restore the partition info by trying all backup superblocks but that doesn't worked. No backup superblock is accessible.
Restoring them by mke2fs and e2fsck does not work unfortunately.. (mke2fs -S /dev/block/platform/msm_sdcc.1/by-name/userdata && e2fsck -yf /dev/block/platform/msm_sdcc.1/by-name/userdata)
So if you have loosed your /data and/or internal storage you need to have a DD imaged backup near. Sorry but you have been warned (known issues) before.
.
if you want the factory reset back simply choose the file twrp_2.7.1.0_recovery_FRon.img.lok and follow the above instructions. Afterwards you will have TWRP but it will be reachable only when you execute "adb reboot recovery" from the running system. v2.7. is not recommended to use but atm the only option if you really want that. Instead I would better try the wipe options from within TWRP and re-installing your ROM of choice or simply using the official LG flashing tool to get your F3Q fully reset.
.
History / Changelog
Previous development (v2.7.1.0)
I HIGHLY RECOMMEND USING v2.8 instead of this version!
You have been warned.. If you still want that buggy version go on here:
USE THAT ON YOUR OWN RISK! I STRONGLY RECOMMEND TO BACKUP EVERYTHING BEFORE PROCEEDING.
Working:
Install (to flash a custom Kernel)
Mounting partitions (see known issues for the internal one)
Reboot Recovery | System
adb shell
File Manager
Terminal Command
Totally untested:
WIPE (may work)
Known issues:
If the device becomes locked and then unlocked by the user adb will restart on the device (or crash and start again. haven't had looked into that yet)
When you use the "Power Off" option in the "Reboot" menu the device will reboot instead of powering off
RESTORE (will NOT work!)
BACKUP (will NOT work!)
You cannot mount the external sd via USB or MTP
Vibration is not working (I will not fix that atm because I like it that way)
Timezone is not set correctly (that seems to be a well known bug in several devices using TWRP....
Internal storage is missing (/data/media)
Hardware keys at bottom doesn't work
If you use the factory reset button /data partition will be inaccessible and need to be re-flashed (means you will LOOSE your app and system configs when you use factore reset)
Download:
Attached you will find the loki'ed TWRP version (v2.7.1.0):
AGAIN: THIS IS A PROOF-OF-CONCEPT only. It definitively WILL have bugs and problems! I want to proof that it will be possible to have TWRP on this device and also have a way to boot up into TWRP without booting the whole system.
twrp_2.7.1.0_recovery_FRoff.img.lok = FactoryReset is disabled / TWRP will be loaded instead
twrp_2.7.1.0_recovery_FRon.img.lok = FactoryReset is enabled / TWRP can be reached with "adb reboot recovery" only
Read the Installation & Usage instructions in the OP on how to install that file.
Awesome work! Saves having to risk modifying the bootloader (for now). :laugh: :highfive: Thanks!
xdajog said:
TWRP Recovery for the LG F3Q / D520
...
Click to expand...
Click to collapse
I'm unable to get logs from TWRP, it does crash reliably when messing about in settings and such.
Timezone fix is needed. (Devices time is set to the correct local time, but TWRPs timezones arent correct.)
Device does not show internal storage.
Wipe menu does not differentiate from internal storage and /data
there's no /mnt, /storage or /sdcard present while in TWRP.
Uhm, I'm sure there's some more I've missed, but that's all I've got for now.
eriklion said:
I'm unable to get logs from TWRP, it does crash reliably when messing about in settings and such.
Click to expand...
Click to collapse
Uhm what do you mean? adb shell and then open /tmp/recovery.log? Clicking on the small mini icon at middle bottom of the screen? Both working for me. Have you tested the above attached version or the one I gave you at dropbox? The above is a more current one!
Timezone fix is needed. (Devices time is set to the correct local time, but TWRPs timezones arent correct.)
Click to expand...
Click to collapse
hm I will look into that
Device does not show internal storage.
Click to expand...
Click to collapse
yeah forgot to mention that. Is that shown in CWM btw?
Wipe menu does not differentiate from internal storage and /data
Click to expand...
Click to collapse
Could you explain what does that means?
there's no /mnt, /storage or /sdcard present while in TWRP.
Click to expand...
Click to collapse
/mnt and /storage are not needed or am I wrong? /sdcard would point to the internal storage I think but I decided to use /external_sd instead which is accessible in the latest version.
Finally got around to test. Looks great, I love having TWRP over CWM!
Unfortunately the backup function is not working. TWRP errors out and reloads itself. I have a pastebin, sorry it's so long but I wanted to try a couple different backup options before I gave up and produced a log file:
http://pastebin.com/QUfNw6Rk
The portions of interest are:
Code:
Backing up Cache...
I:Creating backup...
I:Creating tar file '/external_sd/TWRP/BACKUPS/1db9cba/1970-01-24--22-43-59 JZO54K//cache.ext4.win'
I:addFile '/cache/recovery' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/cache/recovery/log' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
...
Code:
Backing up Data...
I:Creating backup...
I:Creating tar file '/external_sd/TWRP/BACKUPS/1db9cba/1970-01-24--22-43-59 JZO54K//data.ext4.win'
I:addFile '/data/dontpanic' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/last_kmsg0' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/next_count' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/last_kmsg1' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/last_kmsg2' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/last_kmsg3' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/last_kmsg4' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/last_kmsg5' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/last_kmsg6' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
I:addFile '/data/dontpanic/last_kmsg7' including root: 0
Failed to get selinux context: Operation not supported on transport endpoint
__bionic_open_tzdata: couldn't find any tzdata when looking for localtime!
__bionic_open_tzdata: couldn't find any tzdata when looking for GMT!
__bionic_open_tzdata: couldn't find any tzdata when looking for posixrules!
Starting TWRP 2.7.1.0 on Sun Jan 25 03:44:01 1970
I:Single storage only.
I:No internal storage defined.
I:No storage defined, defaulting to /sdcard.
I:Lun file '/sys/devices/platform/usb_mass_storage/lun0/file' does not exist, USB storage mode disabled
I:Found brightness file at '/sys/class/leds/lcd-backlight/brightness'
I:TWFunc::Set_Brightness: Setting brightness control to 255
Starting the UI...Pixel format: 480x800 @ 32bpp
Pixel format: RGBX_8888
Not using qualcomm overlay, 'msmfb43_80201'
framebuffer: fd 4 (480 x 800)
=> Linking mtab
=> Processing recovery.fstab
I:Processing '/boot'
I:Processing '/cache'
I:Processing '/data'
I:Processing '/misc'
I:Processing '/recovery'
I:Processing '/external_sd'
I:Processing '/system'
I:Creating Android Secure: /external_sd/.android_secure
I:Backup folder set to '/external_sd/TWRP/BACKUPS/1db9cba'
I:Settings storage is '/external_sd'
Updating partition details...
I:Unmounting main partitions...
E:Unable to unmount '/data'
I have a stock based ROM to test, and I want to make sure I can enter recovery through the bootloader should things go sour. If TWRP can backup and restore, that allows me to go back to my true stock after the test. Any ideas?
joel.maxuel said:
Finally got around to test. Looks great, I love having TWRP over CWM!
Unfortunately the backup function is not working. TWRP errors out and reloads itself. [.....] Any ideas?
Click to expand...
Click to collapse
Yes.
There are several things coming in place when it comes to backing up out of TWRP atm...
You hopefully have read the big fat red warning ? What I mean is the part regarding /data gets lost when you do a factory-reset
That said if you have entered TWRP by pressing the physical keys your /data partition will be wiped (really bad thing but that it is made for and I haven't had the time to look into that further)
The result is a cleaned /data which is not mountable until you format it with mke2fs.
(e.g.: "adb shell mke2fs -T ext4 /dev/block/mmcblk0p15")
If you do not do that what MAY happens is that TWRP failing because of missing /data (and if not then you should ensure that /data was really backed up)
But as your log told me it seems to be not the problem here 'cause the /data partition is detected by TWRP. so it could be 2)
Mounting points.
As stated the mount points are not fully working in TWRP atm. That means when it comes to /sdcard which is the internal device storage it will fail, too because it cannot be found. The reason for this is that LG mounts /sdcard by the sdcard service but that is somehow tricky thats why it is not working atm.
And on top: the internal storage normally needs to be mounted to "/data/media" especially when we want to use MultiROM later.
So +1 for /sdcard or/and internal storage related
background info: http://teamw.in/DataMedia
The last one I could imagine is "something else" which could be catched by "/proc/last_kmsg"
The important thing is that this file gets written only after a crash and when the battery was not removed. So if the device reboots to TWRP again try to adb shell to the device and then paste the last_kmsg again. Maybe we can find something here.
When I will continue on TWRP I think of upgrading to v2.8 because they enable MTP here which could be good for copying data between device and pc..
BTW:
I have no idea what CWM port which is also be available would do in case of starting a backup especially what will REALLY gets backed up!!!!
IMHO the best way on doing a nandroid backup atm is "adb shell dd ...." Takes a long time but then you can be sure. I can give you all the mountpoints if you need them.
As I currently have not such much success with porting the ROM I will now come back here to TWRP and will finish it to have a hopefully fully working recovery. I cannot say the timeline for this but it will definitively be the next what I want to do because when this is done I can better match the rest for the ROM.
xdajog said:
<SNIP>
IMHO the best way on doing a nandroid backup atm is "adb shell dd ...." Takes a long time but then you can be sure. I can give you all the mountpoints if you need them.
As I currently have not such much success with porting the ROM I will now come back here to TWRP and will finish it to have a hopefully fully working recovery. I cannot say the timeline for this but it will definitively be the next what I want to do because when this is done I can better match the rest for the ROM.
Click to expand...
Click to collapse
This should work (I've done it before for eriklion):
Code:
adb shell
dd if=/dev/block/platform/msm_sdcc.1/by-name/system of=/storage/external_SD/system.2014-11-12.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/boot of=/storage/external_SD/boot.2014-11-12.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/cache of=/storage/external_SD/cache.2014-11-12.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/userdata of=/storage/external_SD/userdata.2014-11-12.img
Now, is there a recommended adb command to wipe data and cache, since factory reset function is not the best choice? I see a few with the following process...
Code:
adb shell
su
format DATA
format CACHE
...but not much commentary on it.
I appreciate the second (third, whatever you are on) crack at TWRP. Hopefully the next version will squash the bugs. Btw, I will see if I can provide a /proc/last_kmsg tonight have posted a last_kmsg here.
joel.maxuel said:
This should work (I've done it before for eriklion):
Code:
adb shell
dd /dev/block/platform/msm_sdcc.1/by-name/system /storage/external_SD/system.2014-11-12.img
dd /dev/block/platform/msm_sdcc.1/by-name/boot /storage/external_SD/boot.2014-11-12.img
dd /dev/block/platform/msm_sdcc.1/by-name/cache /storage/external_SD/cache.2014-11-12.img
dd /dev/block/platform/msm_sdcc.1/by-name/userdata /storage/external_SD/userdata.2014-11-12.img
Click to expand...
Click to collapse
yes thats all you need to backup & restore
joel.maxuel said:
Now, is there a recommended adb command to wipe data and cache, since factory reset function is not the best choice? I see a few with the following process...
Code:
adb shell
su
format DATA
format CACHE
...but not much commentary on it.
I appreciate the second (third, whatever you are on) crack at TWRP. Hopefully the next version will squash the bugs. Btw, I will see if I can provide a /proc/last_kmsg tonight.
Click to expand...
Click to collapse
I always do it that way:
Code:
Starting TWRP
adb shell
("su" in TWRP not needed normally)
mke2fs -T ext4 /dev/block/mmcblk0p15 (for userdata)
mke2fs -T ext4 /dev/block/mmcblk0p14 (for cache)
Then you can be sure it is clean and well formatted. ext4 is for both cache and userdata and works fine for me.
twrp v2.8 with many enhancements and fixes is on its way
Stay tuned ....
if you get bored in the meanwhile ... click thanks
Is someone here with running the stock ROM (or absolutely not modified means formatted! /data partition) who is willing to give me a quick help? It must be stock or placed back to stock by using a backuped image dump if you have one.
The following need to be done in recovery so you need to have CWM or TWRP installed. Boot into recovery (adb reboot recovery) and then use "adb shell" to connect.
I need your output of this command:
Code:
mke2fs -n /dev/block/platform/msm_sdcc.1/by-name/userdata
This will not do/destroy/modify anything.
It should display some information about that partition. Read the details here http://linux.die.net/man/8/mke2fs
The reason is that LG factory reset seems to wipe superblocks (wanted by LG or not - fact is that they are thrown) and THEN forwarding to the recovery tool like TWRP but to be sure I need the above output from 1 or 2 people to be sure enough on how to proceed.
Thanks in advance
As Joel investigated that may destroy /data cause of a buggy version of mke2fs!! Oh man..
-----
Sent from my SGH-I927 using XDA Android mobile app
Ok thx to joel I'm able to investigate the LG facotry reset further.
In parallel I will try another way which will be (if I get it working) absolutely smooth and will not have such workaround character like the current idea (hijacking factory reset).
Give me some time but if that works it would be a great solution for accessing recovery..
Stay tuned some good things may happen...
-----
Sent from my SGH-I927 using XDA Android mobile app
Finally v2.8 for F3Q has arrived !!! I think a very good approach now!
Have fun and as usual any thx click.... and so on
Check out the OP for Download and details:
http://forum.xda-developers.com/showpost.php?p=55239027&postcount=1
UPDATE:
I have completely reworked the "Installation & Usage instructions" section in the OP. PLEASE READ and be happy
xdajog said:
Finally v2.8 for F3Q has arrived !!! I think a very good approach now!
Have fun and as usual any thx click.... and so on
Check out the OP for Download and details:
http://forum.xda-developers.com/showpost.php?p=55239027&postcount=1
UPDATE:
I have completely reworked the "Installation & Usage instructions" section in the OP. PLEASE READ and be happy
Click to expand...
Click to collapse
Great work.
Am looking at method two. If I was to install a ROM, wouldn't the boot partition (thus my new recovery) be overwritten by the ROM package's boot.img? And when I was cooking with the Kitchen, the ROM required a specific mount point for the boot partition. If it is supposed to point to recovery, seems to me that neither would boot (overwritten recovery, ROM pointing in the wrong location).
So, what is this solution getting around? So we have an option to load TWRP before a system we don't necessarily trust will boot? Thus avoiding the bootloader fallback even more? Or is it a broken boot.img breaks TWRP as well so even if we try to go in through the bootloader, TWRP fails to load as well?
Sorry for my confusion, still trying to grasp all this new information.
joel.maxuel said:
Great work.
Click to expand...
Click to collapse
Thanks
Am looking at method two. If I was to install a ROM, wouldn't the boot partition (thus my new recovery) be overwritten by the ROM package's boot.img?
Click to expand...
Click to collapse
Method 2 will suggest that if you install a custom ROM that you are be able to use/choose the boot.img partition (I hoped that the "hint" at the was clear enough but better to ask of course!)
And when I was cooking with the Kitchen, the ROM required a specific mount point for the boot partition. If it is supposed to point to recovery, seems to me that neither would boot (overwritten recovery, ROM pointing in the wrong location).
Click to expand...
Click to collapse
Well yes you either need to point to the recovery partition or (and that would be what I recommend) you let the user choose what he wanted to do.
So, what is this solution getting around?
Click to expand...
Click to collapse
The best we can do here (and that is what I will do for my custom ROM if I get it done some day) to use AROMA installer and ask the user if he has a recovery installed in the boot partition or not. Then you can choose what to do in the updater script.
I uploaded an example of my AROMA installation setup for the "sediROM for Samsung Captivate Glide" in this post. This one is VERY complex but you will get the idea and many input on how to do things.
So we have an option to load TWRP before a system we don't necessarily trust will boot? Thus avoiding the bootloader fallback even more?
Click to expand...
Click to collapse
Yes using method 2 we have always coming TWRP up when powering on the device. We then can choose to do things in there or to boot to "recovery" which will be the ROM. What do you meant with "bootloader fallback"?
Or is it a broken boot.img breaks TWRP as well so even if we try to go in through the bootloader, TWRP fails to load as well?
Click to expand...
Click to collapse
Not sure If I got you. When the boot partition gets overwritten TWRP and any possibility to get into TWRP will be lost because it sits only in the boot partition when using method 2. If you choose to do a factory reset when powering on the device or from within the ROM I have no idea what happens then unfortunately. That is untested but if you willing to test..
Sorry for my confusion, still trying to grasp all this new information.
Click to expand...
Click to collapse
No worry about that happy if that is useful for someone
xdajog said:
I uploaded an example of my AROMA installation setup for the "sediROM for Samsung Captivate Glide" in this post. This one is VERY complex but you will get the idea and many input on how to do things.
Click to expand...
Click to collapse
Thanks! I will take a look at this in the next few days.
xdajog said:
Yes using method 2 we have always coming TWRP up when powering on the device. We then can choose to do things in there or to boot to "recovery" which will be the ROM. What do you meant with "bootloader fallback"?
Click to expand...
Click to collapse
Bootloader fallback as in having to access TWRP via the bootloader. Our regular method is to access form the ROM, but if the ROM is bricked for whatever reason, the fallback is through the bootloader.
xdajog said:
Not sure If I got you. When the boot partition gets overwritten TWRP and any possibility to get into TWRP will be lost because it sits only in the boot partition when using method 2. If you choose to do a factory reset when powering on the device or from within the ROM I have no idea what happens then unfortunately. That is untested but if you willing to test..
Click to expand...
Click to collapse
I was alluding to the scenario if one was to choose method one, installed a ROM, and things got busted badly... Would you even be able to access TWRP with a bad boot partition? I think so, because recovery partition should be self sufficient (I think you proved it by swapping their places by way of method two), it is just getting into recovery by way of bootloader) I don't particularly like.
Had to face that fear last night, and ultimately, TWRP started up fast enough from the bootloader that it seemed like nothing happened, but when i went to dump the log, it could not recognize the sdcard. DD'ing my userdata partition back fixed that issue.
joel.maxuel said:
Bootloader fallback as in having to access TWRP via the bootloader. Our regular method is to access form the ROM, but if the ROM is bricked for whatever reason, the fallback is through the bootloader.
Click to expand...
Click to collapse
You mean "factory-reset" right? By either pressing the factory reset buttons (or by choosing from within the ROM) correct?
I was alluding to the scenario if one was to choose method one, installed a ROM, and things got busted badly... Would you even be able to access TWRP with a bad boot partition? I think so, because recovery partition should be self sufficient (I think you proved it by swapping their places by way of method two), it is just getting into recovery by way of bootloader) I don't particularly like.
Click to expand...
Click to collapse
If you install TWRP with method 1 and your boot partition gets corrupt you still be able to reach TWRP by using the factory-reset buttons. But you will loose /data then.
If you install TWRP with method 2 and your boot partition has gone you can not start TWRP anymore because it sits on there.
So you're more bulletproof by choosing method 1 because you would reach TWRP even when the boot partition gets damaged but you will loose /data then! Mentioned in the known issues in the OP.
Had to face that fear last night, and ultimately, TWRP started up fast enough from the bootloader that it seemed like nothing happened, but when i went to dump the log, it could not recognize the sdcard. DD'ing my userdata partition back fixed that issue.
Click to expand...
Click to collapse
When you have TWRP installed with method 1 you will reach TWRP by factory reset buttons and it will DO NOTHING ! Really! It simply starts TWRP because I patched TWRP that way that it will not wipe anything when triggered by the factory-reset command / button!
I can say that for double sure since today because:
1) In one of my tests I had disabled REALLY EVERY wipe option within TWRP - compiled it - installed it and even then /data gets lost!
2) I have installed the BOOT image means KERNEL on the RECOVERY partition today again and then used the factory-reset buttons again (after I restored /data of course)... and /data gets lost AGAIN--?!!
That means even when there is absolutely no custom recovery in place (like TWRP) which would normally handle wiping /data then nevertheless /data gets corrupted! I have tested that twice so I can say now for sure that this has nothing to do with TWRP but it comes from the LG bootloader instead! That bootloader is CRAP. sorry.
I had tested one approach which is build in boot image RAM disk which catches the keys which are pressed and then reboot into recovery. That would work but only as long as you have a working boot image partition. So that is the same good/bad as having TWRP sitting within the boot partition which is much easier to do so I decided to go this way for now.
One last word about the crappy factory-reset by LG: I have tried a lot to find out what really happens to the partition or partition table of /data when those keys are pressed but the only thing I can say is that the superblocks are inaccessible and the same for the backup superblocks. doing a "mke2fs -S" does not work (and wouldn't fix the root cause of the issue) and I have no idea what LG do here. Therefore cannot fix that ..
so I believe we will need to live with one of the 3 methods described in the OP....
Hope that answered some of your questions...
Bad news..
The Desire Z of my wife is completely broken now.
That means I cannot develop anymore..
- I ported and released the latest TWRP version to the F3Q
- I'm able to build AOSP JellyBean (not booting yet though),
- I compiled and released a custom AOSP Kernel (named sediKERNEL)
.... and a lot more..
I have everything I need to continue here in place...
I have the will and the ability to continue...
But no device anymore..
If someone has a F3Q to give away.. then I will continue but I'm not willing to buy a F3Q for developing only. So if you have an idea how we could continue let me know.
Update:
Check out the following link if you want to help http://forum.xda-developers.com/showthread.php?t=2952919
Otherwise that will end here for me unfortunately...
Hopefully not.
Yours
Xdajog.
-----
Sent from my SGH-I927 using XDA Android mobile app
I will update the installation instructions soon!
Because of the new sediKERNEL v2.0 the instructions will be made bullet proof only .. and i try to do it more detailed @Kediil
-----
Sent from my SGH-I927 using XDA Android mobile app
Related
This is a custom recovery based on Cyanogen's recovery source with a lot of things added by me. The purpose of this recovery is to avoid using adb by accessing all features directly from the menu.
All source code is available at github.
This recovery if for the HTC Hero only, so NOT the Sprint Hero!!!, if you have an :
- HTC Dream/G1 you should go here.
- HTC Magic/MT3G you should go here.
- HTC Sprint Hero you should go here.
- HTC Eris you should go here.
- HTC Tattoo you should go here.
- HTC Nexus One you should go here.
- HTC Evo 4G you should go here.
Important notes
Make sure your battery is at least 30% before using nandroid!!
Always check recovery.log before posting your issues!
You can do this by doing :
"cat /tmp/recovery.log" OR "cat /cache/recovery/log" right after you had the issue.
Use the "move log to sd" option in the "others" menu right after you had the issue. This will move the log to /sdcard/recovery.log so you can easily open it with a text editor.
How-to Navigate
Use the trackball (up+down) to navigate through the menu, press the trackball to select items.
You can also use the volume keys (vol-up + vol-down) to navigate, and the CALL-ANSWER key to select items (in case your trackball is broken).
Features
full ADB access in recovery mode
Busybox v1.15.3
HW-Key navigation (volume keys + CALL-ANSWER) option
Extended menu (with keyboard-shortcuts):
Reboot system now :: reboot your phone
USB-MS Toggle :: enable/disable USB mass storage (use when the phone is connected to your PC)
Backup/Restore (recovery partition not included!)
Nand backup :: Make a Nand backup
Nand + ext backup :: Make a Nand + ext backup
Nand restore :: Restore a Nand backup
BART backup :: Make a BART backup (Nand + ext)
BART restore :: Restore latest BART backup
Bck Google files :: Makes a backup of the Google proprietary system files in /cache/google
Rst Google files :: Restores the Google proprietary system files from /cache/google
Flash zip from sdcard :: Flash a zip update file from your sdcard
Wipe
Wipe data/factory reset :: Wipe /data and /cache
Wipe cache :: Wipe /cache only
Wipe Dalvik-cache :: Wipe /cache/dalvik-cache
Wipe SD:ext partition : Wipe the ext partition on your sdcard
Wipe battery stats : Wipe the battery stats in /data
Wipe rotate settings : Wipe the sensor settings in /data
Partition sdcard
Partition SD :: Interactive SD partitioning
Repair SD:ext :: Repair the ext partition
SD:ext2 to ext3 :: Convert ext2 to ext3
SD:ext3 to ext4 :: Convert ext3 to ext4
Other
Fix apk uid mismatches :: Does extacly that
Move recovery.log to SD :: Moves the recovery log file to your sdcard. (Use when you want more detailed recovery log information)
Power off :: Powers off your phone
Scripts available via adb :
Nandroid v2.2.1 : enter "nandroid-mobile.sh" to start.
BART v1.3.1 (Backup and Restore Tool) : enter "utility" or "u" to start.
switchrom.sh V1.1 : enter "switchrom" to start.
sdparted v0.6 : enter "sdparted" to start.
Install
There are several ways to install a custom recovery, choose the one that suits you most (I probably forgot a few).
via adb -> Requires a custom recovery (with test-keys) like Cyanogen's v1.4 or my previous recovery
Code:
Copy recovery-RA-hero-v1.7.0.1.img to the root of your sdcard
Boot into your current custom recovery (boot while holding HOME)
Connect your Hero via usb to your pc/mac/...
adb shell
$su (not required if you have root already)
#mount -a
#flash_image recovery /sdcard/recovery-RA-hero-v1.7.0.1.img
via fastboot + adb -> In case you don't have a custom recovery, so when you get signature fail errors
Code:
adb shell reboot bootloader
fastboot boot recovery-RA-hero-v1.7.0.1.img
adb shell mount /sdcard
adb push recovery-RA-hero-v1.7.0.1.img /sdcard/recovery-RA-hero-v1.7.0.1.img
adb shell flash_image recovery /sdcard/recovery-RA-hero-v1.7.0.1.img
adb shell reboot
Download
ALWAYS check the md5sum to make sure the zip isn't corrupted.
Only flash recovery-RA-hero-v1.6.2.img if you have a 32A Sapphire with 6.35.x.x radio and 1.76.x SPL, recovery-RA-hero-v1.7.0.1.img will NOT boot! I'll create a new Sapphire version soon.
recovery-RA-hero-v1.7.0.1.img - MD5Sum: 2c399ba2d780742c1eb8bb2710a31684
Change-log :
v1.7.0.1
Code:
- Fixed some minor bugs
- Recovery and scripts use /sd-ext instead of /system/sd as mountpoint to support the new apps2sd method (implemented mostly by Chris Soyars)
- Added an option to backup/restore Google proprietary Android system files (backuptool.sh written by Cyanogen)
- Removed "move apps2sd"-option as it's not needed anymore with the new apps2sd method
- Updated BART to v1.3.1 (updated by Dumfuq to support /sd-ext)
- Added a wipe cache only option
- Nandroid now backups/restores /cache again by default
- Dalvik-cache wipes /cache/dalvik-cache now
- Removed SDCARD: prefix in output when chosing zip to flash
- Updated kernel to fully support ext4
v1.6.2
Code:
- Added power off menu item
- New unyaffs binary patched by Koushik Dutta and Packetlss to fix the "losing root"-issue and incorrect file-time after a Nandroid restore
- New dump_image binary (by Brainaid) patched by Packetlss to fix the "bad blocks"- Nandroid restore issue.
[COLOR="Red"][B](This will not fix old corrupted Nandroid backups! Please make new backups!!)[/B][/COLOR]
- New mkyaffs2image binary
- New flash_image binary
- Updated busybox to v1.5.3
- Nandroid menu options will NOT backup or restore recovery, cache, misc, splash1+2 (to avoid issues)
- Fixed wipe option not wiping when ext was not present
- Created carebear versions after the idea of packetlss
- Switched the Nexus logo to a Green Carebear with Nexus One logo (Thanks Montalbert!)
Special thanks to :
packetlss for all the hours of support and awesome coding skills, THANKS man ^^, donate to Haiti
Koushik Dutta for the unyaffs binary code fix and help ^^
pensive for adding awesome features to Nandroid
Bkmo for his utility script!
Devsk for his switchrom script!
51dusty for his sdparted script!
k4str0 for his fix_permissions v2.03 update.
Devsk, Dumfuq, Overground for creating BART
Androidappcritics for the reboot idea in BART
rikupw for the ideas and toggle_ums script.
MLIGN for the idea to port my recovery to the Dream.
http://theunlockr.com for all the awesome video’s ^^
JesusFreke for his awesome JFv1.43's recovery , donate
ahh yes thank you! about time we get one for hero users!
again great great work and thank you!
REQUEST: can we get a wipe dalvik-cache
and
reformat ext2/3/4 option!!
this would be great thanks Amon_RA!
very nice dude! thanx will try that tomorrow
btw, is it based in cyanogen recovery?
This looks awesome! Can I use this instead of Cyanogen's recovery? This would make partitioning for apps2sd extremely easy!
Also, would the instructions here be sufficient to flash this recovery? I would just have to change the commands when using FlashRec, correct?
Thank you!
Drizzy Drake Rogers said:
REQUEST: can we get a wipe dalvik-cache
and
reformat ext2/3/4 option!!
Click to expand...
Click to collapse
Next version
felikz said:
btw, is it based in cyanogen recovery?
Click to expand...
Click to collapse
Yes, the base code is from his git.
soulonfirexx said:
This looks awesome! Can I use this instead of Cyanogen's recovery? This would make partitioning for apps2sd extremely easy!
Also, would the instructions here be sufficient to flash this recovery? I would just have to change the commands when using FlashRec, correct?
Thank you!
Click to expand...
Click to collapse
Yes and yes
What do I need to delete to avoid a conflict with the prior recovery image I permanently flashed? Just delete cm-hero-recovery.img? Thanks.
[Recovery] [16-Sept-2009] [RA-HERO-v1.2.2]
please give some details about instalation thanks.
not able to install
Hello i just tried to install but when i execute the command
"fastboot boot Recovery-RA-HERO-v1.2.2.img"
I get an error FAILED (remote not allow)
I must tell that i had installed latest official build that later i uninstalled to install MoDaCo 2.2. Because with original i wasn't able to root it.
Maybe there is a problem with the boot loader (updated i think).
Can you help me?
Thank you
another link please!? I can not download from rapidshare :-(
Perfect !! Thank You
sgreenwood99 said:
What do I need to delete to avoid a conflict with the prior recovery image I permanently flashed? Just delete cm-hero-recovery.img? Thanks.
Click to expand...
Click to collapse
You can just flash it, and delete cm-hero-recovery.img if there is one in /data or /system (I doubt that there is one there).
rangbaz said:
please give some details about instalation thanks.
Click to expand...
Click to collapse
Detailed instructions are in the first post.
macshade said:
Hello i just tried to install but when i execute the command
"fastboot boot Recovery-RA-HERO-v1.2.2.img"
I get an error FAILED (remote not allow)
I must tell that i had installed latest official build that later i uninstalled to install MoDaCo 2.2. Because with original i wasn't able to root it.
Maybe there is a problem with the boot loader (updated i think).
Can you help me?
Thank you
Click to expand...
Click to collapse
Your SPL isn't allowing you to flash it, you'll need to use the flashrec method to flash this recovery.
Great recovery image!!!
Is it possible to add an option to choose which nandroid backup to restore?
Looks good, thanks for this, I'll put it on later.
Would be good if we could change the format size of the sd partitioning so we can update the amound of storage space etc. Any chance of looking at that in the future?
Looks good though, thanks!
nicelad_uk said:
Looks good, thanks for this, I'll put it on later.
Would be good if we could change the format size of the sd partitioning so we can update the amound of storage space etc. Any chance of looking at that in the future?
Looks good though, thanks!
Click to expand...
Click to collapse
You can... open up adb, and use the sdparted script
Excellent work, makes it a lot easier! Cheers!
awesome, works really good!
I'm currently on Cyanogen 1.4.
Does this replace it?
Can I go back to Cyanogen 1.4 I I want to?
Any danger of bricking doing this?
cheers
if you flash this permanently it will overwrite cyanogen recovery..
however if u dont like it you can flash cyanogen again..
Thanks Felikz - I don't mind messing around, but always like the ability to turn back time to before I cocked it all up!!
I would like create a backup (of my entire system including boot image, data and system partitions. Is there any way I can do this without the CWM. The main reason is that I could return the phone to the original state in case if I have to return for service.
For my knowledge (and i have no knoledge! ) samsung accept rooted device on service (otherwise if the phone has broken screen it is not accepted)...but, if i were you, i would install cwm and make a nandroid backup of the whole system. If you want to have all of google system images(to restore original stock) you could set your sdk environment http://developer.android.com/sdk/index.html and download google images (bootloader, rom, radio) and put in a safe place (the SDK supply adb/fasboot which are tools that you would use to restore the google's files). that's the thread with these contents: http://forum.xda-developers.com/showthread.php?t=1366806 That's the standard (so yours) original stock files from google actually on your phone!
and also i advise you to follow these steps to save your /EFS partition (you never know) before flashing custom things, BUT IT REQUIRES ROOT: http://forum.xda-developers.com/showthread.php?t=1352371
BUT, if you don't want to install cwm, you could also see here: http://forum.xda-developers.com/showthread.php?t=1392310
Thank you. If I am right, msskip's tools will install the CWM onto my phone as well. I have just come across a guide for back-up without CWM <http://forum.xda-developers.com/showthread.php?t=1420351>. I am just not quite sure if it is the same full back-up as I get for the Nandriod or CWM. Does anyone have any experience with this?
The post you linked doens' backup /boot partition and recovery. So you can backup only /system and /data; you can obtain these EXACTLY files just downloading the google system (4.0.1 - 4.0.2 - 4.0.3) files (*.img estension) and you have the same result, plus you can get bootloader.img and recovery (evrything stock, meaning samsung galaxy nexus stock files)...these are in the post i linked and are the stock google images and these are the files that our phones has inside (also including system.img).
that' the explanation why i think that is basically useless to make a backup of /system and /data for warranty purpose, because google (or first phone users in november when the phone came out on the market) provied all .img that you need to revert (using fastboot) anytime your phone to a stock 'new'phone (which is your now, so in warranty!). Make, instead, a backup for the files and apps (apk) (usually /data) that you need if you want to try custom roms and then if you are not satisfied get back to stock...
To answer to your question, no is not the same kind of backup, you will lack /boot and recovery.
adding that you can use adb to generate .img by
Code:
cat /proc/mtd
and you will have a fs table with adresses (i have no phone now so cannot provide), then using dd (assuming boot is on mtd2):
Code:
dd if=/dev/mtd/mtd2 of=/sdcard/boot-stock.img bs=2048
and also use this for recovery partition...never tried for system and data partition (but could work, i'm not sure so not do that in this way, wait more knowing-knoledge people and also never tried on ics but, just ginger remembering...dont' know if it's the same in this new system)
but this process make use of
Code:
adb shell
su
the second one requires root....
as of now, i dont' now any method not involving root to make these things but as i stated at first post, i don't know anything
Thank you. I am wondering if the image file you have provided is for yakjuux. I have come across many posts that if I get the wrong baseband, the phone will not work correctly.
post, please, your baseband version which you can find on settings->phone info->basedand version in your phone; mine is 19250xxkl1 that i have recently updated from xxkk1 (the stock one)
My Build # is ITL41F I9250 UGKL1 and the kernel is 3.0.1-ga052f63 [email protected] #1.
Do you think you have a image of this? Thanks.
As far is i know, you have a GSM version of Galaxy Nexus. So it's safe to grab google image of /system, /boot and for the radio grab UGKL1 radio/baseband version. To better answear it's better to know also you bootloader version (which probably is primekk15): you can view this by going on bootloader on you phone doing this:
1 setup android sdk environment (include fastboot) for your pc system (windows-linux-osx)
2 enter in the settings menu of the phone and tic the 'debug usb'
3 attach the phone to the pc and let it recognize your phone (windows-osx), for linux install udev that already are in your distrib/repo
4 (assuming you are on windows) on pc... start/run/ cmd: the the terminal open up and go in your android-sdk directory, enter and then go to platform-tools; there is adb command, run: adb reboot bootloader
this will restart your phone in the bootloader menu. There, you have all of information you need...just write here your bootloader version (to have a confirmation) to understand which versione you need to download and put in a safe place in case of warranty-need...
Then wait someone better than me that knows how to make backup of all partitions without root (without exploit i think it's difficult to grant su access on the standard ics system); if there is no such possibility, just root, install cwm and do a nandroid backup and then trasnferr on a safe place on your place and you are good to go to try modding.....
now i need sleep as here is 8 in the morning and finishing compilemy l701x kernel which weight 3,4 mb lzo compressed, fine tuning.....good nite,ehm,good mornig..mmm... good is enough
Thank you. It takes some time to download the packages.
The Bootloader shows the following
Product Name: Tuna
Variant: Maguro
HW Version: 9
Bootloader Verson: Primekk14
Baseband Version: I9250UGKL1
Carrier Info: None
Signing: Production
What would be the appropriate to donload. Do you have their respective link? Thank you for your ongoing support.
Would anyone with experience please provide me with inputs if:
1. there is any way to back-up without root
OR
2. the phone has to be rooted, is there any way to have a program residing in my computer iso the phone (CWM in this case).
OR
3. there is any way to remove CWM and other rooted apps before I use GNex Toolkit to relock the phone.
Thanks.
Here you go:
http://forum.xda-developers.com/showthread.php?t=1420351
Would anyone with experience please help?
I am struggling with the same issue. Restoring the nandroid, removing su and superuser.apk and then relocking the bootloader actually brings the phone to quite factory looking mode (except for timestamps in system)
I wonder if it is possible to pull dump of system the same way it is done for boot and recovery.
Guys - it is pretty trivial to restore all partitions you would be modifying to factory conditions because Google provides the factory images for which you can use fastboot to restore. You don't even need to be unlocked much less rooted or have CWM installed because the Google images are official and have the correct signatures.
As for making image copies of your phones partitions this cannot be done w/o root access because these partitions are only available to root. If you are rooted you can use a utility such as dd on the phone to copy the partitions.
Sent from my Galaxy Nexus using XDA App
silow said:
Guys - it is pretty trivial to restore all partitions you would be modifying to factory conditions because Google provides the factory images for which you can use fastboot to restore. You don't even need to be unlocked much less rooted or have CWM installed because the Google images are official and have the correct signatures.
As for making image copies of your phones partitions this cannot be done w/o root access because these partitions are only available to root. If you are rooted you can use a utility such as dd on the phone to copy the partitions.
Sent from my Galaxy Nexus using XDA App
Click to expand...
Click to collapse
Google provides yakju images only. Phones here in Canada come with yakjuux which is even 4.0.1. It will be pretty obvious you have thinkered with your phone if you return it with yakju image instead the original one.
As for root - I think it might not be necesary - I was able to do nandroid backup without flashing neither recovery or root to my system by simply unlocking the boot loader and booting CWM off fastboot. I am thinking can we dd while in CWM (flash of phone still intact - except of bootloader which is not an issue since it can be relocked)
Anyone have the dd syntax handy and the partition that needs to be dumped?
system partition seems to be /dev/block/platform/omap/omap_hsmmc.0/by-name/system (this is the df output after I mounted it in CWM)
Would the dd command be something like
Code:
dd if=/dev/block/platform/omap/omap_hsmmc.0/by-name/system of=/sdcard/yakjuux.img
CWM provides you "root" because it has the su binaries in the ramdisk.
You can run the following when booted into CWM since CWM will mount /data:
Code:
dd if=/dev/block/mmcblk0p10 of=/data/media/system.img
leobg said:
[snip]
Anyone have the dd syntax handy and the partition that needs to be dumped?
system partition seems to be /dev/block/platform/omap/omap_hsmmc.0/by-name/system (this is the df output after I mounted it in CWM)
Would the dd command be something like
Code:
dd if=/dev/block/platform/omap/omap_hsmmc.0/by-name/system of=/sdcard/yakjuux.img
Click to expand...
Click to collapse
I think that may work. The output file may be padded with extra zeros, so you may need to trim them before flashing (this is certainly the case when you dump the radio).
EDIT: I would probably use this instead (although I am not sure it will make a difference:
Code:
dd if=/dev/block/platform/omap/omap_hsmmc.0/by-name/system of=/data/media/yakjuux.img
efrant said:
I think that may work. The output file may be padded with extra zeros, so you may need to trim them before flashing (this is certainly the case when you dump the radio).
EDIT: I would probably use this instead (although I am not sure it will make a difference:
Code:
dd if=/dev/block/platform/omap/omap_hsmmc.0/by-name/system of=/data/media/yakjuux.img
Click to expand...
Click to collapse
Yes, that was what I actually ended up doing since /sdcard was a sym link to /data/media. Resulting file is 654MB uncompressed. I wonder how can I easily check if content is right on a win machine.
---------- Post added at 09:44 PM ---------- Previous post was at 09:37 PM ----------
silow said:
CWM provides you "root" because it has the su binaries in the ramdisk.
You can run the following when booted into CWM since CWM will mount /data:
Code:
dd if=/dev/block/mmcblk0p10 of=/data/media/system.img
Click to expand...
Click to collapse
Yes, I meant it's not necessary to make any changes on the filesystem to achieve it once bootloader lock is off. And by simply relocking the device after, there are zero traces of any 'hackery' being done on the phone.
leobg said:
Yes, that was what I actually ended up doing since /sdcard was a sym link to /data/media. Resulting file is 654MB uncompressed. I wonder how can I easily check if content is right on a win machine.
Click to expand...
Click to collapse
There is obviously some extra padding in there, as the file size should be closer to half that size uncompressed.
---------- Post added at 09:08 AM ---------- Previous post was at 08:51 AM ----------
leobg said:
[snip]
And by simply relocking the device after, there are zero traces of any 'hackery' being done on the phone.
Click to expand...
Click to collapse
Not sure why so many people are worried about "traces of hackery". I can't speak from personal experience, but many Nexus One owners (if not all of who have attempted), had NO issues returning devices to HTC that were unlocked... Remember, the N1 did not have a relockable bootloader, so they obviously knew you were messing around.
You don't have to FLASH CWM to USE CWM.
Just BOOT CWM. Simple.
Anybody else had this issue? I tried it on Shiny Rom and now CM 10.2 nightly. Get in one time with no issues, if I reboot I get stuck at the Google screen. The one way to get the phone usable is to do a completely factory data wipe and start all over.
I'm using TWRP, I've flashed tons of roms and I'm doing it no different than any of them. I do a complete wipe, install CM, GApps, reboot I get in one time. Do a reboot and then get stuck at Google screen.
This happened with both ShinyROM and 10.2 both are 4.3. They both had a valid MD5.
I have flashed PRIMEMD04_Bootloader-signed - One that came from Shiny ROM bootloader-toro-primelc03 - Stock (I believe)
Nothing worked, got the same issue.
GiZiM said:
Anybody else had this issue? I tried it on Shiny Rom and now CM 10.2 nightly. Get in one time with no issues, if I reboot I get stuck at the Google screen. The one way to get the phone usable is to do a completely factory data wipe and start all over.
I'm using TWRP, I've flashed tons of roms and I'm doing it no different than any of them. I do a complete wipe, install CM, GApps, reboot I get in one time. Do a reboot and then get stuck at Google screen.
This happened with both ShinyROM and 10.2 both are 4.3. They both had a valid MD5.
I have flashed PRIMEMD04_Bootloader-signed - One that came from Shiny ROM bootloader-toro-primelc03 - Stock (I believe)
Nothing worked, got the same issue.
Click to expand...
Click to collapse
The only time I get persistent Google screen is when I have a corrupt /userdata partition.
Try running e2fsck on mmcblk0p12 if you have one of those devices that get emmc corruption by changes in sdcard free space.
In case you need more information on this :
1. In TWRP Mount options, unmount Data. The command won't work on mounted partition.
2. In Advanced > Terminal Command, select the /dev/block folder. Then type in
Code:
e2fsck -n mmcblk0p12
("-n" option will cause no changes to your filesystem, it just shows a simulation of the file system correction tool's result.) If the result says the filesystem is "clean", then you have something else to worry about and its not corrupted /userdata.
3. If it starts checking for errors (there's a KILL button while running the command), your filesystem has errors. You can kill it, and then run
Code:
e2fsck -f -C 0 -y mmcblk0p12
(-f is for forced run, -C 0 will give you progress of completion of task, -y will say yes to all prompts (necessary), and mmcblk0p12 is the /userdata partition)
4. Let the command run until you don't see the KILL button (shouldn't be more than a couple of minutes). On running
Code:
e2fsck -n mmcblk0p12
again, it must show you a "clean" filesystem.
5. Just reboot to System. If your /userdata was corrupt, running this will mostly solve your problem.
Damn, I wish I had found such instructions to get over my horrendous time with corrupt partitions over six months from November 2012-April 2013.
Thank you! I will look into this but I would love to fix the cause.
I'm sure this is the issue because I cannot get the phone back into a working state until after doing a full factory wipe.
What would be causing 4.3 roms to corrupt my /userdata? Whatever it is it is happening after the first reboot after I get into the rom.
desktopfusion said:
The only time I get persistent Google screen is when I have a corrupt /userdata partition.
Try running e2fsck on mmcblk0p12 if you have one of those devices that get emmc corruption by changes in sdcard free space.
In case you need more information on this :
1. In TWRP Mount options, unmount Data. The command won't work on mounted partition.
2. In Advanced > Terminal Command, select the /dev/block folder. Then type in
Code:
e2fsck -n mmcblk0p12
("-n" option will cause no changes to your filesystem, it just shows a simulation of the file system correction tool's result.) If the result says the filesystem is "clean", then you have something else to worry about and its not corrupted /userdata.
3. If it starts checking for errors (there's a KILL button while running the command), your filesystem has errors. You can kill it, and then run
Code:
e2fsck -f -C 0 -y mmcblk0p12
(-f is for forced run, -C 0 will give you progress of completion of task, -y will say yes to all prompts (necessary), and mmcblk0p12 is the /userdata partition)
4. Let the command run until you don't see the KILL button. On running
Code:
e2fsck -n mmcblk0p12
again, it must show you a "clean" filesystem.
5. Just reboot to System. If your /userdata was corrupt, running this will mostly solve your problem.
Damn, I wish I had found such instructions to get over my horrendous time with corrupt partitions over six months from November 2012-April 2013.
Click to expand...
Click to collapse
Whatever my phone faces is not limited to 4.3. It has been happening since 4.1. Something to do with the eMMC of the phone itself. Gets corrupt too easily when the decreasing free sdcard space approaches 3 GB. Sometimes a battery pull can also cause it, sometimes a random reboot can cause it. Technically, 4.3 is supposed to solve this issue with TRIM execution in the background, but it hasn't helped me definitively yet.
It has been documented on these forums for this to happen to phones produced in August, September, October 2012.
In my case, I am quite sure that adding and/or deleting files larger than say 500 MB (for example Nandroid backups) causes this problem to happen at any time afterwards without notice (preceded by random reboot straight into stuck Google screen). I guess new ROMs can cause such issues if there is a large amount of app data deleted everytime, but this is just uninformed speculation.
I've setup Tasker profiles to autorun e2fsck through TWRP every morning before I wake up so I don't have these issues while awake. And one more profile to tell me every 8 hours if my sdcard has changed by a lot.
I hope this is all there is to your phone's problem!
Thanks this is very helpful, I will work on this tonight after work and see what I can come up with.
Right now it is showing as CLEAN but i'm running 4.2.2. Is there anything special to go from 4.2.2 to 4.3?
desktopfusion said:
Whatever my phone faces is not limited to 4.3. It has been happening since 4.1. Something to do with the eMMC of the phone itself. Gets corrupt too easily when the decreasing free sdcard space approaches 3 GB. Sometimes a battery pull can also cause it, sometimes a random reboot can cause it. Technically, 4.3 is supposed to solve this issue with TRIM execution in the background, but it hasn't helped me definitively yet.
It has been documented on these forums for this to happen to phones produced in August, September, October 2012.
In my case, I am quite sure that adding and/or deleting files larger than say 500 MB (for example Nandroid backups) causes this problem to happen at any time afterwards without notice (preceded by random reboot straight into stuck Google screen). I guess new ROMs can cause such issues if there is a large amount of app data deleted everytime, but this is just uninformed speculation.
I've setup Tasker profiles to autorun e2fsck through TWRP every morning before I wake up so I don't have these issues while awake. And one more profile to tell me every 8 hours if my sdcard has changed by a lot.
I hope this is all there is to your phone's problem!
Click to expand...
Click to collapse
Nothing special really.
Was the result Clean after a stuck Google logo?
You could pull battery at the stuck logo and go to TWRP and then check if it is clean. If it is indeed clean, then there's something else wrong that is completely different!
I'm going to give it a go tonight when I get home.
1. So pretty much backup everything, do a complete factory wipe of all data.
2. I'll do a adb push of the .zip for the rom and everything.
3. Flash rom and any other packages needed
4. Run that command see if it comes back clean
5. Reboot go into the rom
6. Reboot, if i get stuck at the Google screen run that script if it's not clean just keep running it?
desktopfusion said:
Nothing special really.
Was the result Clean after a stuck Google logo?
You could pull battery at the stuck logo and go to TWRP and then check if it is clean. If it is indeed clean, then there's something else wrong that is completely different!
Click to expand...
Click to collapse
It's running, it says "clone multiply-claimed blocks? <yes>"
How long does this normally run?
Edit: Running now for 4hrs
GiZiM said:
It's running, it says "clone multiply-claimed blocks? <yes>"
How long does this normally run?
Edit: Running now for 4hrs
Click to expand...
Click to collapse
Hey, sorry.
4 hours?! I've not had it run for more than 2 minutes, ever!
Did you run the -n option and let it say whether there is a corrupt partition? If yes then there may be a problem with the eMMC since its taking so long.
As a last resort, you could go completely stock via fastboot. [Formats /userdata partition, erases SDcard as well - take backup]
Lifesaving string of code.
desktopfusion said:
The only time I get persistent Google screen is when I have a corrupt /userdata partition.
Try running e2fsck on mmcblk0p12 if you have one of those devices that get emmc corruption by changes in sdcard free space.
In case you need more information on this :
1. In TWRP Mount options, unmount Data. The command won't work on mounted partition.
2. In Advanced > Terminal Command, select the /dev/block folder. Then type in
Code:
e2fsck -n mmcblk0p12
("-n" option will cause no changes to your filesystem, it just shows a simulation of the file system correction tool's result.) If the result says the filesystem is "clean", then you have something else to worry about and its not corrupted /userdata.
3. If it starts checking for errors (there's a KILL button while running the command), your filesystem has errors. You can kill it, and then run
Code:
e2fsck -f -C 0 -y mmcblk0p12
(-f is for forced run, -C 0 will give you progress of completion of task, -y will say yes to all prompts (necessary), and mmcblk0p12 is the /userdata partition)
4. Let the command run until you don't see the KILL button. On running
Code:
e2fsck -n mmcblk0p12
again, it must show you a "clean" filesystem.
5. Just reboot to System. If your /userdata was corrupt, running this will mostly solve your problem.
Damn, I wish I had found such instructions to get over my horrendous time with corrupt partitions over six months from November 2012-April 2013.
Click to expand...
Click to collapse
Holy mother of god.
This was a lifesaving string of code. I was convinced that I was going to have to buy a brand new phone. Kudos to you DesktopFusion. Thanks a lot!
Explanation as to why a corrupt userdata partition causes this issue
So, in case anybody was wondering, I would like to explain how I see the issue at hand (corrupt userdata partition).
Upon first boot, the ROM is getting set up and doesn't have any orders to check /userdata because well, there is none on the device. So why waste precious time being redundant (smart coders, right?). So the userdata partition is not checked.
However, now that the second boot is being performed, there is, by default in the system's repertoir, data put in by the user, so the bootloader is told to check the partition containing user data. Since the partition is corrupt, and the free space is technically "modified", it errors up and gets stuck.
I could be wrong, I'm not a developer of any sorts. Just a dude giving my point of view.
I got this trouble too last night. I'm flashing elia's 4.3 custom rom with under 5 gb free space. Got it boot twice,then got stuck at google's logo after trying flashing slim bean gapps. Flashing whole 4.3 stock firmware finally solve this. Maybe there is correlation between upgrading from 4.2.2 without upgrading the bootloader with this problem.
Sent from my Galaxy Nexus using Tapatalk 4
It ended up running for 6hrs and never finished, I did do the -n and it said it was CLEAN but still could not boot into the 4.3 ROM.
So ran it any way for 6hrs and no change as of right now I am unable to boot into ANY 4.3 ROM.
If eMMC was screwed up why can 4.2.2 roms work fine but not 4.3 roms? what's the difference?
desktopfusion said:
Hey, sorry.
4 hours?! I've not had it run for more than 2 minutes, ever!
Did you run the -n option and let it say whether there is a corrupt partition? If yes then there may be a problem with the eMMC since its taking so long.
As a last resort, you could go completely stock via fastboot. [Formats /userdata partition, erases SDcard as well - take backup]
Click to expand...
Click to collapse
BUMP still no 4.3 love
GiZiM said:
BUMP still no 4.3 love
Click to expand...
Click to collapse
Still not resolved?
Have you tried flashing completely stock factory image via fastboot?
Consider checking your flash memory with this app, "eMMC Brickbug Check"
Could you also put in here what Type and Date the eMMC chip was made as per the application?
desktopfusion said:
Still not resolved?
Have you tried flashing completely stock factory image via fastboot?
Consider checking your flash memory with this app, "eMMC Brickbug Check"
Could you also put in here what Type and Date the eMMC chip was made as per the application?
Click to expand...
Click to collapse
Sane chip
Ran memory check no issues
Type: SEM32G
Date: 10/2011
FW: 0x90
GiZiM said:
Sane chip
Ran memory check no issues
Type: SEM32G
Date: 10/2011
FW: 0x90
Click to expand...
Click to collapse
Rats. Falling short of ideas.
I might have missed your answer on whether you've tried flashing a stock Nexus image through fastboot, though.
I had basically the same problem coming from 4.2.2 to 4.3. I'm not sure if it was the bootloader upgrade, 4.3 CM alpha from early August, or the small amount of free space under 5GB, but it was definitely userdata corruption like desktopfusion is saying. I was finally able to fix the problem after a "fastboot -w" userdata and cache*format. This has to be done in fastboot, so hook your computer to your phone in twrp, run "adb pull /sdcard "drive:\pc_backup_location"" to backup your sdcard data (grab what you can if errors come up from badly named or corrupted files). Make sure you got md5verified recovery & bootloader images renamed to recovery.img & bootloader.img, and a rom.zip in your adb folder on the computer. Reboot to bootloader, still connected. **And make sure you're not forgetting any sdcard backup, or twrp backup if still functional, before this erase and format. Run "fastboot -w". Then "fastboot flash recovery recovery.img" and you should be good to reboot, adb transfer ROM.zip and other files to fresh sdcard, etc. There's info on this around to double check, and I just posted a little more detailed walkthrough on this a couple days ago. This definitely saved me though with an identical problem, so if the emmc error check doesn't pan out, I would give this a try. May the fastboot gods be with you.
@desktopfusion -Thanks for your post on the previous page! Copied and saved to mygiant android useful infos text file ... which will one day end up corrupting my userdata partition with my luck.
7175 said:
I had basically the same problem coming from 4.2.2 to 4.3. I'm not sure if it was the bootloader upgrade, 4.3 CM alpha from early August, or the small amount of free space under 5GB, but it was definitely userdata corruption like desktopfusion is saying. I was finally able to fix the problem after a "fastboot -w" userdata and cache*format. This has to be done in fastboot, so hook your computer to your phone in twrp, run "adb pull /sdcard "drive:\pc_backup_location"" to backup your sdcard data (grab what you can if errors come up from badly named or corrupted files). Make sure you got md5verified recovery & bootloader images renamed to recovery.img & bootloader.img, and a rom.zip in your adb folder on the computer. Reboot to bootloader, still connected. **And make sure you're not forgetting any sdcard backup, or twrp backup if still functional, before this erase and format. Run "fastboot -w". Then "fastboot flash recovery recovery.img" and you should be good to reboot, adb transfer ROM.zip and other files to fresh sdcard, etc. There's info on this around to double check, and I just posted a little more detailed walkthrough on this a couple days ago. This definitely saved me though with an identical problem, so if the emmc error check doesn't pan out, I would give this a try. May the fastboot gods be with you.http://forum.xda-developers.com/images/smilies/highfive.gif
@desktopfusion -Thanks for your post on the previous page! Copied and saved to mygiant android useful infos text file ... which will one day end up corrupting my userdata partition with my luck.
Click to expand...
Click to collapse
7175 nailed it. I tried flashing all sorts of different ROMs/gapps/Super SU combinations and tried different wipes/formats to no avail. I wish I would have found the instructions to "fastboot cleanse" the phone 4 or 5 hours ago. I have been reading through forums for several hours today and every suggested fix failed. 7175's fix was spot on for me. My phone was locking up at the Google screen with the lock every time I rebooted after installing a 4.3 ROM.
:highfive:
7175 said:
I had basically the same problem coming from 4.2.2 to 4.3. I'm not sure if it was the bootloader upgrade, 4.3 CM alpha from early August, or the small amount of free space under 5GB, but it was definitely userdata corruption like desktopfusion is saying. I was finally able to fix the problem after a "fastboot -w" userdata and cache*format. This has to be done in fastboot, so hook your computer to your phone in twrp, run "adb pull /sdcard "drive:\pc_backup_location"" to backup your sdcard data (grab what you can if errors come up from badly named or corrupted files). Make sure you got md5verified recovery & bootloader images renamed to recovery.img & bootloader.img, and a rom.zip in your adb folder on the computer. Reboot to bootloader, still connected. **And make sure you're not forgetting any sdcard backup, or twrp backup if still functional, before this erase and format. Run "fastboot -w". Then "fastboot flash recovery recovery.img" and you should be good to reboot, adb transfer ROM.zip and other files to fresh sdcard, etc. There's info on this around to double check, and I just posted a little more detailed walkthrough on this a couple days ago. This definitely saved me though with an identical problem, so if the emmc error check doesn't pan out, I would give this a try. May the fastboot gods be with you.
@desktopfusion -Thanks for your post on the previous page! Copied and saved to mygiant android useful infos text file ... which will one day end up corrupting my userdata partition with my luck.
Click to expand...
Click to collapse
Thanks for this...
First thought it was an issue with SlimRom, tried different kernels, problem wouldn't go away, then realised it was happening with every rom I flashed...
EFIDroid
A UEFI based Android bootloader.
EFIDroid provides an easy Installer, good looking Material Design user interfaces and uses very dynamic code.
Homepage: efidroid.org
Take over control before loading the Operating system.
EFIDroid attempts to make it easy for both users and developers to control their boot experience.
Multiboot
Install and boot any number of operating systems and recovery tools.
Boot plugins
Change the boot behavior without modifying ROM's. Swapping internal/external memory, overclocking or modifying the ramdisk. Live and without any permanent modifications.
UEFI Apps
EFIDroid uses UEFI in the background which means that you can boot other bootloaders like GRUB or rEFInd and even small games
Download
see Installation section
Requirements
The main OS (that one you currently use) must be rooted to use the efidroid app.
You may be able to install magisk later in a secondary ROM (never tried it though)
Hint:
lineageos root add-on works (tested on LOS 15.1) and magisk will NOT work. Use supersu.
TWRP / FlashFire installable ZIP:
Stable: supersu-stable
Beta: supersu-beta
Latest: supersu
At the moment the only TWRP which is working for efidroid is: twrp-3.1.1 - any newer TWRP release will fail with a ramdisk size error which is not due to a missing kernel patch. It's a known issue for efidroid and one of the reasons for the efidroid rewrite
I maybe find a workaround to get newer TWRP versions installed.. we will see..
So if you have a newer version of TWRP installed currently: upgrade/downgrade to that version first.
Installation
A full howto with screenshots can be found here
Unlock your device! This will NOT work with a locked bootloader (you know about UsU?)
Download the EFIDroid Manager from Google Play Store - Has been removed..
Efidroid manager download: main efidroid thread
Download the latest version by opening the "Downloads" tab of this thread (requires to open this thread in a browser)
Activate my efidroid OTA server:
Option 1 (permanent): modify /system/build.prop
Boot to TWRP
Make a backup (including system partition)!
Mount System partition in TWRP
enable the efidroid OTA server:
Code:
adb shell
echo "efidroid.server_url=https://raw.githubusercontent.com/steadfasterX/efidroid_ota_lgg4/master" >> /system/build.prop
reboot
verify that the efidroid server URL has been set properly:
Code:
adb shell getprop efidroid.server_url
Option 2 (will be lost on reboot): using setprop
Set the efidroid OTA server:
Code:
adb shell
setprop efidroid.server_url https://raw.githubusercontent.com/steadfasterX/efidroid_ota_lgg4/master
verify that the efidroid server URL has been set properly:
Code:
adb shell getprop efidroid.server_url
Open EFIDroid Manager
HINT: If you see an error like "cannot load device info, please check your connection : no value for lge/H815" then the above OTA url has not been set or is set wrong.
Go to Install/Update
Click Install --> HINT: THIS WILL MOVE YOUR BOOT AND RECOVERY PARTITION CONTENT
This means
1. from now on EFIDroid will boot each time u power on the device.
2. the recovery partition gets backed up and you will see it in EFIDroid again as (if TWRP): TWRP (internal).
3. you can still boot your main ROM by just choosing it from the list --> your ROM name - (internal)
If you don't like this you can install EFIDroid to either: recovery or boot partition only. But this is a manual process and when you upgrade with EFIDroid Manager it may overwrite your changes.
Install a custom ROM
A full howto with screenshots can be found here
Open EFIDroid Manager
Open the menu "Operating Systems" and click the FAB (Floating Action Button) at the bottom
Choose in the screen /data/media/0/multiboot as location.
Enter a name for the ROM
Optional: Choose another icon for the ROM
You can leave the partitions as they are (Schema LoopSystem + BindOther) Press the tab "PARTITIONS" and choose "LoopAll". You will see that the data partition is quite big (the g4 internal storage is just 23 GB so you choose a smaller size for each ROM to fit all your ROM slots).
Tip "data" and select GB in the drop down. Choose a proper size (i.e. 2 GB) depending on what you wanna do with that ROM and how many you wanna install (each ROM will take 4 GB for system + the data size you choose here)
In the tab "REPLACEMENTS" click the floating plus button and add a new cmdline override:
Code:
Name = androidboot.selinux
Value = permissive
press the tick in the top right corner to finish the setup
Now you can see your newly created ROM slot in the list
Reboot
Once you are in the efidroid, you can navigate around with volume down to go down, volume up to go up and the power button to confirm your selection.
To flash a ROM to the new empty slot, select TWRP (Internal) , press power and select the slot name with power again
At the moment the system partition is just empty and needs to be formatted before you can use it!
In TWRP:
select WIPE -> Advanced Wipe -> select "system" and "cache", then swipe to wipe.
select WIPE -> "Format Data" button
Reboot -> System. When you see efidroid again choose TWRP and select the new ROM slot again to boot TWRP again.
Install your ROM of your choice.
Hint: If you get an error regarding device detection you have to remove the assert line(s) within the ROM zip first
Supported devices
Any LG G4 model which can be unlocked (yea even UsU ones but that still requires some more work to detect them properly)
Known Issues
The Operating System list in the EFIDroid Manager is empty just upgrade to the latest EFIDroid manager app..
after installing a ROM it may bootloop under some circumstances
AROMA installer flickers extremely. Workaround: press power to turn off screen then turn it on again. It still flickers but u can see and use the installer at least.
As we need to use TWRP 3.1.1 (see requirements) UsU devices get not detected correctly!
The state of this project is ALPHA so expect issues and even data loss is possible (so do a TWRP backup often)
Booting a secondary ROM and working in a secondary ROM may feel slower (that's by design)
if a ROM has set selinux to enforcing it will not boot! --> If you setup the ROM slot properly (see above REPLACEMENTS tab) you do not need to care about.
Without that adjustment in the efidroid manager you have to modify the boot.img of every ROM:
change the cmdline from
androidboot.selinux=enforcing
to
androidboot.selinux=permissive
I started a while ago to make selinux policies for efidroid but it's not that easy and so atm no ROM which has selinux set to enforcing will boot.
Credits
@m11kkaa for EFIDroid
@J0SH1X for bringing a first port for the G4
@steadfasterX for being steadfast and optimizing efidroid
XDA:DevDB Information
EFIDroid for the LG G4, Tool/Utility for the LG G4
Contributors
steadfasterX, @m11kkaa, @J0SH1X
Source Code: https://github.com/steadfasterX/efidroid_device_lge_g4
Version Information
Status: Alpha
Created 2017-04-14
Last Updated 2018-12-17
Workarounds for known issues
1) random app crashes, settings do not persist on reboot
The reason is that file permissions get not set correctly on the bind mounted data partition.
So nothing can be stored there (or what get stored will be stored with the wrong perms).
When creating a new ROM slot it is important (atm) that you choose LoopAll .
This would create a data partition image with 23 GB which is way too much so you need to touch the data partition in the partitions tab and set the size to GB and choose e.g. 2 GB.
2) no WiFi
First boot TWRP internal / primary slot
Code:
adb shell cp /data/misc/wifi/config /external_sd/data_misc_wifi_config
Then for each slot you created you must reboot TWRP in its slot and:
Code:
adb shell cp /external_sd/data_misc_wifi_config /data/misc/wifi/config
adb shell chown system.wifi /data/misc/wifi/config
adb shell chattr +i /data/misc/wifi/config
Reserved
I tried to install Efidroid on my LG G4 (H815, bootloader unlocked, ResurrectionRemix 5.8.2). I install the App and modify the build.prop with the efidroid url, but every time i start the app i get the error-massage:
Error. Can't load device info. Please check your connection. No value for lge/h815.
Could you help me fixing this?
jokuu said:
I tried to install Efidroid on my LG G4 (H815, bootloader unlocked, ResurrectionRemix 5.8.2). I install the App and modify the build.prop with the efidroid url, but every time i start the app i get the error-massage:
Error. Can't load device info. Please check your connection. No value for lge/h815.
Could you help me fixing this?
Click to expand...
Click to collapse
Oh damn. I forgot to update the OTA for the other devices..
There is nothing you can do on your site atm.. Sorry I will fix it asap and let you know..
.
Sent from my LG-H815 using XDA Labs
still hard at it heck yea
jokuu said:
I tried to install Efidroid on my LG G4 (H815, bootloader unlocked, ResurrectionRemix 5.8.2). I install the App and modify the build.prop with the efidroid url, but every time i start the app i get the error-massage:
Error. Can't load device info. Please check your connection. No value for lge/h815.
Could you help me fixing this?
Click to expand...
Click to collapse
ok done. please try again
.
steadfasterX said:
ok done. please try again
.
Click to expand...
Click to collapse
Now it works. Thank you! :good:
ok .. im able to boot a LL based ROM now (Imperium ROM).. but only ONCE. lol..
Well I can boot into it again after booting in the TWRP version of that ROM and doing a factory reset from within TWRP...
Cleaning /data, /cache and dalvik cache manually does NOT work.. interesting. <-- I tested with a special (FIsH) TWRP version which does not WIPE but RM only.. Once I switched to a regular TWRP it is still strange but at least behaves the same now: When I wipe /data and /cache I can boot (but only when wiping both).
Update:
Keeping strange:
When I wipe /data only -> no boot
When I wipe /cache only -> no boot
When I wipe both -> boot ok .. wtf.?!
I will look into /misc - maybe the reason can be found here!
.
I just booted a second rom successfully using efi on my h811
My primary rom: lineage nougat
My secondary rom: resurrection remix (mm)
First boot was slow, second a little less slow, third and so on boot at normal speed.
Anyone else with an h811 care to try it coz @steadfasterX thinks mine booted coz i have an h811.
So if anyone else with an h811 can test it, that would help.
Btw, you all jelly? :victory:
Update: i have a complex sort of bootloop.
I decided to flash gapps.
Now when i try to boot the rom, i get the optimizing apps screen, then starting apps, then the boot logo, then again starting apps, and again boot logo and it goes on like that.
If i clear cache and dalvik i get the optimizing apps again, then the circle continues.
Maybe its gapps?
Or maybe its coz you all were too much jelly
tanveer7652 said:
Update: i have a complex sort of bootloop.
I decided to flash gapps.
Now when i try to boot the rom, i get the optimizing apps screen, then starting apps, then the boot logo, then again starting apps, and again boot logo and it goes on like that.
If i clear cache and dalvik i get the optimizing apps again, then the circle continues.
Maybe its gapps?
Or maybe its coz you all were too much jelly
Click to expand...
Click to collapse
heat
kevp75 said:
heat
Click to expand...
Click to collapse
Heat? What do you mean
tanveer7652 said:
Heat? What do you mean
Click to expand...
Click to collapse
I believe he thinks you have the ilapo because he don't know what efidroid is.
have you tried to wipe /data as mentioned (on IRC) ?
.
tanveer7652 said:
Heat? What do you mean
Click to expand...
Click to collapse
steadfasterX said:
I believe he thinks you have the ilapo because he don't know what efidroid is.
have you tried to wipe /data as mentioned (on IRC) ?
.
Click to expand...
Click to collapse
LOL I have a good idea with efidroid is
Everytime you wipe cache/dalvik your device has to rebuild the dalvik.
When your device rebuilds dalvik it has to work.. and work hard... as a result of the device working harder than normal, it generates heat. if it gets too hot, it will reboot.
I sometimes get it on a plain ol' stock rom
@steadfasterX im back to work on it just bought a new g4 today and currently im in unlock progress
J0SH1X said:
@steadfasterX im back to work on it just bought a new g4 today and currently im in unlock progress
Click to expand...
Click to collapse
Congrats. Please remember some of us poor guys when u buy another g4 ?
---------- Post added at 03:31 PM ---------- Previous post was at 03:30 PM ----------
kevp75 said:
LOL I have a good idea with efidroid is
Everytime you wipe cache/dalvik your device has to rebuild the dalvik.
When your device rebuilds dalvik it has to work.. and work hard... as a result of the device working harder than normal, it generates heat. if it gets too hot, it will reboot.
I sometimes get it on a plain ol' stock rom
Click to expand...
Click to collapse
But it doesn't get hot.
kevp75 said:
LOL I have a good idea with efidroid is
Click to expand...
Click to collapse
oh that's good
kevp75 said:
Everytime you wipe cache/dalvik your device has to rebuild the dalvik.
When your device rebuilds dalvik it has to work.. and work hard... as a result of the device working harder than normal, it generates heat. if it gets too hot, it will reboot.
I sometimes get it on a plain ol' stock rom
Click to expand...
Click to collapse
tbh I don't think that this is the case here. We have bootloops when something changes in /data. This is not heat related. It is something efidroid related..
J0SH1X said:
@steadfasterX im back to work on it just bought a new g4 today and currently im in unlock progress
Click to expand...
Click to collapse
u like pain do u ?
steadfasterX said:
oh that's good
tbh I don't think that this is the case here. We have bootloops when something changes in /data. This is not heat related. It is something efidroid related..
Click to expand...
Click to collapse
theres software bootloop and hardware bootloop. i only get software when i install something or say remove gapps. or mess with system . flashing rom fix it..
Nexus 5 Repartition
No one is responsible for your actions except yourself. Everything written further may potentially brick your device, although risk is reduced to minimum.
This repartition package offers 1.5G /system; a /vendor partition and it is fully backward compatible with any ROM (including stock system.img).
Known-issues
HTML:
- If repartition pack says that device isn't correct,
than, if partition table wasn't modified before,
congrats! your device has different memory chip
that those I worked with. No worry, PM me and
I'll add support for it.
DO THE BACKUPs. Repartition will erase all your data
USB connection to PC is MANDATORY else you will not have opportunity to push ROM to your device
Installation
HTML:
# Before processing further we highly recommend you backup persist using terminal and dd comand and EFS
# Or you might lose your IMEI/WIFI + BT mac addresses
# This mod is backwards compatible with any ROM so we highly recommend NOT to reverse it if repartition went well.
# You should use ONLY recovery from this thread since other don't support all benefits of this mod.
# When installing ROM just after you flashed zip and before installing GAPPs you MUST make a resize in TWRP since all roms are build for ~1G system.
# To restore stock layout use same zip and steps as for repartition.
1. Boot into recovery (You need to allow system partition modification to be able resize /system in recovery).
2. Backup your data & Move your files from flash to your PC.
3. Flash repartition pack zip.
4. Do the actions asked by repartition pack (go to Terminal in ordinary recovery and input word that pack will tell you. Everything else will be done automatically).
5. Phone will reboot into recovery.
6. Install TWRP from below (it is build with support of new partitions layout and sizes. It can be differed from official TWRP by next format 3.x.x-1 UA).
7. Format everything. (mount errors will not affect formatting!)
- In TWRP: Wipe > Format data
- Type yes
- Once this completes go to: Wipe > Advanced Wipe
- Tick all the boxes and wipe. There should be no further mount errors.
8. Install ROM which you like.
9. Enjoy better flash partition layout.
If something gone wrong - we recommend you NOT to do anything by yourself. Write here for help, else you may do only worse.
Downloads:
Repartitioning package: GitHub
Credits:
Special thanks to
- Unlegacy-Android team;
- Sudokamikaze;
- surfrock66 for his gide for Nexus 5;
As usual, feedback is appreciated
XDA:DevDB Information
Nexus 5 Repartition, Tool/Utility for the Google Nexus 5
Contributors
Clamor
Source Code: https://github.com/clamor95/android_device_unlegacy_recovery
Version Information
Status: Stable
Created 2018-09-19
Last Updated 2019-01-18
Common issues and F. A. Q.
Repartition pack should be safe for most devices. Common mistakes, issues and their solution will be published here.
1. You shouldn't flash any internal parts of repartition pack (*.sh files) only flash whole zip using TWRP. You may use my scripts for personal use or projects but authorship should to be kept.
2. If something isn't mounting after repartition try to format partitions that don't mount using Wipe -> Advanced Wipe in TWPR. Ideally you should format in that way all partitions in Advanced Wipe menu (see 5-th step of installation guide).
3. To be sure that repartition went well I enclose loging zip. Flash it after repartition (when device reboots into TWRP). It won't modify anything only generates a partition.log in root of internal storage and outputs your current partition layout to screen. You shoud check if your layout is same as those fragments I provide under spoiler (file systems doesn't matter). If there are any differences you have to discribe what you did and enclose partition.log to your post.
HAMMERHEAD STOCK
Code:
25 192937984B 1266679807B 1073741824B system
26 1266679808B 1298137087B 31457280B crypto
27 1298137088B 2032140287B 734003200B cache
HAMMERHEAD MODIFIED
Code:
25 192937984B 1803551231B 1610613248B system
26 1803551232B 2065695231B 262144000B vendor
27 2065695232B 2097152511B 31457280B crypto
28 2097152512B 2306867711B 209715200B cache
4. Flashable resize zip for ROMs that support addon.d (automatic resize when dirty flashing updates).
5. To backup persist partition you need PC with installed adb. Boot your hammerhead in TWRP and plug to PC. Than use next commands.
Code:
adb root
adb shell
dd if=/dev/block/mmcblk0p16 of=/sdcard/persist.img
Than copy .img file from root of internal storage to your PC. Although, script doesn't affect that area, backup of this partition may help in case of any problems with mac address etc.
Thank you for this zip!!! It works fine but I used nano package gapps for the face unlock but still does not work on LOS 15.1. Any suggestions
Vendor partition means support for treble.... Right?
---------- Post added at 04:11 AM ---------- Previous post was at 03:44 AM ----------
After flashing a ROM the system partition resizes back to 1009mb...
Can this be fixed?
@sinkoo1979 try bigger gapps, alse, it may be Lineage problem.
@getrooted0019 you didn't read Installation part carefully, did you? You need to use resize option in TWRP to restore original size after flashing ROMs since they are build for 1G /system partition.
getting a message in twrp "this is not a nexus 5" and won't let me switch back to stock.
@sinkoo1979 send me your partition table in bytes
Clamor said:
@sinkoo1979 send me your partition table in bytes
Click to expand...
Click to collapse
Data and vendor partitions in my nexus 5 are 0mb and not present. System showing about 1028mb while cache is on 29mb.
Thank you for your help but can't change the cache storage back to stock. Can't access the internal storage in TWRP. I think I corrupted my partitions on the nexus 5. Nexus 5 boots into TWRP but can't access nothing. Tried to flash different rom with OTG but bootloops. Can't flash stock because the cache partition is too small.
@sinkoo1979 just stop. I'd ask you to create a telegram account and PM it to me here. I'll help you, just don't do anything
Clamor said:
@sinkoo1979 just stop. I'd ask you to create a telegram account and PM it to me here. I'll help you, just don't do anything
Click to expand...
Click to collapse
Thank you for your help
This is fixable! I was a noob and didn't resize my system partition after flashing rom. Flashed the hh repartition to go back to stock in the ua twrp and got a bunch of errors. Then flashed stock recovery and tried again. This is not a Nexus 5 popped up. The backup file is inside the flashable zip. I just used adb shell and parted to execute the commands listed in backup and viola my Nexus 5 is back. So those freaking out that they messed up their phone...don't worry it's fixable just listen to Clamor. Anyone can pm me too if you need help.
@typow102 if repartition pack says "It is not Nexus 5" than you shouldn't continue without asking here. Using scripts from pack on them own is dangerous as well. Currently I don't know how many types of MMC installed in our Nexus 5 and "It is not Nexus 5" on repartition or on returning to stock may indicate a new type MMC chip like it was with Nexus 7 (2013)
Clamor said:
@typow102 if repartition pack says "It is not Nexus 5" than you shouldn't continue without asking here. Using scripts from pack on them own is dangerous as well. Currently I don't know how many types of MMC installed in our Nexus 5 and "It is not Nexus 5" on repartition or on returning to stock may indicate a new type MMC chip like it was with Nexus 7 (2013)
Click to expand...
Click to collapse
That's the thing though It worked perfectly the first time I flashed it. No errors. Luckily I have had quite a bit of experience with terminal and parted so I felt confident in what I was doing. Can I help you in any way with this? There very well maybe a different mmc chip we don't know about yet.
@typow102 feel free to help if you are certain you can.
For those who downloaded repartition pack before this message is published, please redownload pack since previous version might have a problems with repartition. If repartition was already made, don't worry everything should be fine. Just use up-to-date pack.
Do I need to resize the partition in twrp every time after flashing any ROM and then flash gapps package?
@bagajohny yeah, till devs decide to support it officially.
When I install the ROM (crDroid 4.6) after change the partitions, when I go to TWRP, Wipe > Advanced Wipe, selecting system and pushing over Repair or Change File System button and then over Resize File System, this message was shown:
Repairing system before resizing.
Repairing system using e2fsck...
Done.
Resizing...
/sbin/resize2fs /dev/block/mmcblk0p25 process ended with ERROR: 1
Unable to resize system.
So no resizing is made.
@froilson resize once more, if fails, change mounting state of system and try once more
@Clamor with this can we have treble support ?