Question Recommendations for Best/Easiest(?) update S4? - Galaxy S 4 Q&A, Help & Troubleshooting

Hi. I need some information and help. I'm a complete newbie to any of this android hacking.
I've had a Samsung S4 since 2013, came with Jelly Bean. Apps are no longer supported, and most new ones aren't allowed, but my S4 works too great to toss! -I took the plunge and recently updated to official KitKat... A downgrade that doesn't allow apps to write to SD cards, gps is dodgy now... -I stopped there, since I've seen too many horror stories from 5.0 updates, -so I know I've got to look elsewhere, and this forum seems the best place for this! -I'm hoping mine is one of the "supported S4's" here!
-Is my Samsung one of the "Galaxy S4 LTE-A" phones that you have a lot of potential updates for??
Mine is an Aussie phone currently with a 64mb SD card, and via the Droid Info App, here's what I know about it:
Model: GT-I9506 (ks01ltexx)
Manufacturer: samsung
Baseband Version: I9506XXUCNJ1
RIL Version: Samsung RIL v3.0
Build Number: KOT49H.I9506XXUCNJ2
Build Fingerprint: samsung/ks01ltexx/ks01lte:4.4.2/KOT49H/I9506XXUCNJ2:user/release-keys
Bootloader: I9506XXUCNJ2
Java VM: Dalvik 1.6.0
OS Version: Kitkat (4.4.2)
SDK: 19
CPU Architecture: ARMv7 Processor rev 0 (v7l)
Board: MSM8974
Chipset: Qualcomm MSM 8974 (Flattened Device Tree)
Cores: 4
Clock Speed: 1190 MHz - 2265 MHz
Instruction Sets: armeabi-v7a, armeabi
CPU Features: swp half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt
CPU Governor: interactive
Kernel Version: 3.4.0-2587343
Kernel Architecture: armv7l
1) If this fits in with the 9506 models that are on this system, then which option is the best-working? -Least experimental? Please voice your opinions and experience!
-I'm hoping to get to at least OS 8 or 9 so that I can finally use the current covid government tracking apps (no joke!), and to keep my S4 viable for longer still, and, maybe stuff all working, battery holding, gps, phone, wifi, nfc... maybe access to the sd card by apps ;-) .
I notice there seem to be many routes like LineageOS, HavocOS, CrDroid... Official vs unofficial. For a newbie who's only messed around w APK's, I definitely need some advice
2) And lastly, how much space for these (Windows 10) programs and the chunks of "ROM's" that are needed? -Got to make sure I have plenty of room on my trusty laptop, I think!
3) For an expert, how long to complete all of the run(s)?
Thanks!!

Hi,
I tell you what I use and what is trending right now, than you need to do some digging to know how to do it.
You need first a custom recovery for your phone. This one will work for you, I have the same:
TWRP 3.1
Then a custom Rom, you can use this one, it's the most updated:
LineageOS 18.1
Try to see look for how to flash a Recovery (TWRP), then once that done, the other part is easy.
Good Luck.

himseslf said:
Hi. I need some information and help. I'm a complete newbie to any of this android hacking.
I've had a Samsung S4 since 2013, came with Jelly Bean. Apps are no longer supported, and most new ones aren't allowed, but my S4 works too great to toss! -I took the plunge and recently updated to official KitKat... A downgrade that doesn't allow apps to write to SD cards, gps is dodgy now... -I stopped there, since I've seen too many horror stories from 5.0 updates, -so I know I've got to look elsewhere, and this forum seems the best place for this! -I'm hoping mine is one of the "supported S4's" here!
-Is my Samsung one of the "Galaxy S4 LTE-A" phones that you have a lot of potential updates for??
Mine is an Aussie phone currently with a 64mb SD card, and via the Droid Info App, here's what I know about it:
Model: GT-I9506 (ks01ltexx)
Manufacturer: samsung
Baseband Version: I9506XXUCNJ1
RIL Version: Samsung RIL v3.0
Build Number: KOT49H.I9506XXUCNJ2
Build Fingerprint: samsung/ks01ltexx/ks01lte:4.4.2/KOT49H/I9506XXUCNJ2:user/release-keys
Bootloader: I9506XXUCNJ2
Java VM: Dalvik 1.6.0
OS Version: Kitkat (4.4.2)
SDK: 19
CPU Architecture: ARMv7 Processor rev 0 (v7l)
Board: MSM8974
Chipset: Qualcomm MSM 8974 (Flattened Device Tree)
Cores: 4
Clock Speed: 1190 MHz - 2265 MHz
Instruction Sets: armeabi-v7a, armeabi
CPU Features: swp half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt
CPU Governor: interactive
Kernel Version: 3.4.0-2587343
Kernel Architecture: armv7l
1) If this fits in with the 9506 models that are on this system, then which option is the best-working? -Least experimental? Please voice your opinions and experience!
-I'm hoping to get to at least OS 8 or 9 so that I can finally use the current covid government tracking apps (no joke!), and to keep my S4 viable for longer still, and, maybe stuff all working, battery holding, gps, phone, wifi, nfc... maybe access to the sd card by apps ;-) .
I notice there seem to be many routes like LineageOS, HavocOS, CrDroid... Official vs unofficial. For a newbie who's only messed around w APK's, I definitely need some advice
2) And lastly, how much space for these (Windows 10) programs and the chunks of "ROM's" that are needed? -Got to make sure I have plenty of room on my trusty laptop, I think!
3) For an expert, how long to complete all of the run(s)?
Thanks!!
Click to expand...
Click to collapse
Hello,
You can find everything you need in my S4 Unified Collection & Guides.
Follow the "Clean Install Custom ROM" Guide step by step and choose a ROM for your variant at Recommended ROMs section.

Reading and trying to digest this stuff now.
-A quick question: by the wording, I gather that one would use TWRP to back-up the current OS and all that is on your phone (so, if necessary, the current one can come back on)?
-One more: I gather from ruadus, that my phone is one of those 9506 TLE-A phones that these posts all talk about, so that I can go forward?
Thanks!

himseslf said:
Reading and trying to digest this stuff now.
-A quick question: by the wording, I gather that one would use TWRP to back-up the current OS and all that is on your phone (so, if necessary, the current one can come back on)?
-One more: I gather from ruadus, that my phone is one of those 9506 TLE-A phones that these posts all talk about, so that I can go forward?
Thanks!
Click to expand...
Click to collapse
- Yes, you can use TWRP to Backup and Restore current OS and all that's inside the phone. (move the backup to an SDCard or to external storage)
- Yes, you can go forward. You can find the latest version of everything you need in my Collection & Guides I linked above.

Retrial said:
- Yes, you can use TWRP to Backup and Restore current OS and all that's inside the phone. (move the backup to an SDCard or to external storage)
- Yes, you can go forward. You can find the latest version of everything you need in my Collection & Guides I linked above.
Click to expand...
Click to collapse
Thanks!
I've looked at your Collection & Guides page, and I can find downloads for "ks01lte" (like https://androidfilehost.com/?fid=1899786940962577903).
Mine says it's a "ks01ltexx".
-I can't find any info online as to thee difference between ks01ltexx and ks01lte, so...
1) -Will the ks01lte-labelled files (programs) of yours also work for the "xx" that I have?
2) Lastly, I now have access to an old windows 7 32-bit laptop w more diskspace (but only 1gb of ram) that I could try to use as the mainframe for Odin, etc. -This older machine will work OK for that??
Thanks again for your taking the time to help!

himseslf said:
Thanks!
I've looked at your Collection & Guides page, and I can find downloads for "ks01lte" (like https://androidfilehost.com/?fid=1899786940962577903).
Mine says it's a "ks01ltexx".
-I can't find any info online as to thee difference between ks01ltexx and ks01lte, so...
1) -Will the ks01lte-labelled files (programs) of yours also work for the "xx" that I have?
2) Lastly, I now have access to an old windows 7 32-bit laptop w more diskspace (but only 1gb of ram) that I could try to use as the mainframe for Odin, etc. -This older machine will work OK for that??
Thanks again for your taking the time to help!
Click to expand...
Click to collapse
Hi,
I believe ks01lte will work. is it the model I9506? if it is so it will work.
I don't see why it won't work with your Win7, maybe it will be slow, just stop any unnecessary program running to avoid crashing your machine.

himseslf said:
Thanks!
I've looked at your Collection & Guides page, and I can find downloads for "ks01lte" (like https://androidfilehost.com/?fid=1899786940962577903).
Mine says it's a "ks01ltexx".
-I can't find any info online as to thee difference between ks01ltexx and ks01lte, so...
1) -Will the ks01lte-labelled files (programs) of yours also work for the "xx" that I have?
2) Lastly, I now have access to an old windows 7 32-bit laptop w more diskspace (but only 1gb of ram) that I could try to use as the mainframe for Odin, etc. -This older machine will work OK for that??
Thanks again for your taking the time to help!
Click to expand...
Click to collapse
As ruadus said, these files will work fine for your variant.
Odin is portable and small program, no need installation or any special hardware to work. You will be fine.
Just follow the steps on my guides, if u have any other question don't hesitate to ask

Ok, so I'll be starting pretty soon.Am using a WIN 7 machine that I have kicking around,because it has a lot of empty disk, so that I can store the back-up copy of my Samsung S4 I9506 ks01ltexx phone.
-I've got ODIN on my PC and it seems to come up fine. Got the combo bootloader+modem tar file and the TRWP tar file also downloaded... -Haven't yet dragged down the updating OS file yet.
-I've downloaded the Samsung USB driver, but haven't installed it since the phone loads instantly on the laptop w the current driver...
So,if I'm correct, my first step should be to get TWRP onto my PC,and (via ODIN) then onto the S4, and then use TRWP to back it all up to my PC?
-Or should I follow the order of the steps in the guide and do the Bootloader and Modem "flash" first and then follow w TRWP??
Thanks!

himseslf said:
Ok, so I'll be starting pretty soon.Am using a WIN 7 machine that I have kicking around,because it has a lot of empty disk, so that I can store the back-up copy of my Samsung S4 I9506 ks01ltexx phone.
-I've got ODIN on my PC and it seems to come up fine. Got the combo bootloader+modem tar file and the TRWP tar file also downloaded... -Haven't yet dragged down the updating OS file yet.
-I've downloaded the Samsung USB driver, but haven't installed it since the phone loads instantly on the laptop w the current driver...
So,if I'm correct, my first step should be to get TWRP onto my PC,and (via ODIN) then onto the S4, and then use TRWP to back it all up to my PC?
-Or should I follow the order of the steps in the guide and do the Bootloader and Modem "flash" first and then follow w TRWP??
Thanks!
Click to expand...
Click to collapse
You can just take backup of ur personal files (if you have any) from your device to your PC. No need TWRP for that.
Doesn't matter if you will flash first or later Bootloader & Modem. Just follow the steps in the guide if you are unsure for something.

Retrial said:
You can just take backup of ur personal files (if you have any) from your device to your PC. No need TWRP for that.
Doesn't matter if you will flash first or later Bootloader & Modem. Just follow the steps in the guide if you are unsure for something.
Click to expand...
Click to collapse
Thanks (have already backed up my 20GB of pictures and SMS, etc.), but I just want to make sure I can back up the current "working" OS, and be able to put it all back the way it was, if something just doesn't work at the moment after my upgrade attempts. I understand that I'd need TWRP for that, correct? -Which can still be done in the order your guide suggests?
Thanks

himseslf said:
Thanks (have already backed up my 20GB of pictures and SMS, etc.), but I just want to make sure I can back up the current "working" OS, and be able to put it all back the way it was, if something just doesn't work at the moment after my upgrade attempts. I understand that I'd need TWRP for that, correct? -Which can still be done in the order your guide suggests?
Thanks
Click to expand...
Click to collapse
Oh yeah, if you want to backup your OS with data and all these, use TWRP and put the backup into an external storage like sd card or into your pc. If u ever want to restore just go to TWRP, chose Restore and select the backup file.

Retrial said:
Oh yeah, if you want to backup your OS with data and all these, use TWRP and put the backup into an external storage like sd card or into your pc. If u ever want to restore just go to TWRP, chose Restore and select the backup file.
Click to expand...
Click to collapse
Hi,
Thanks again !
Just to get a bit more info: I'll necessarily have to backup my S4 to my laptop's disk (via TWRP). -Apparently the usual is to an SD, but won't have that.
I've googled,and have seen that (at least a couple years ago), I'd need to run something called ADB (Android Debug Bridge) on my PC and droid to allow for that. -And with that and TWRP, I can do a safety backup of the current OS, etc. directly to my PC (and if necessary, put that older OS back on my S4 w ADB).
An example web blog is: https://nerdschalk.com/twrp-backup-pc-adb/
-I didn't see mention of ADB usage in here; is it still necessary as an "add-on", or is it already taken care of in the newer versions of TWRP, Odin, etc?
Thanks!!

Hi,
I've never done that before, I usually use my SDCARD.
Did you follow the steps on the link you shared? What was the issue?
You can go to the TWRP thread to ask more question if you're having probelm.

Related

[REF} All in One guide for NOOBS! With Videos Now!

If you just switched from iPhone or BB or this is ur first android. Read this thoroughly and see ur questions get eliminated by this guide. if you find this helpful than show your appreciation and hit that thnx button.
All Credit Goes to appdroid for this amazing post.
I don't take any credit I Googled everything. I do take credit of modifying some stuff in word. I won't have this Phone but I am just being helpful to the community.
Little in-depth information about Android. Must Read. Thank You Pirateghost.
ADB → Android Debug Bridge (adb) is a versatile command line tool that lets you communicate with an emulator instance or connected Android-powered device..
Android →Unveiled on 5 November 2007, Android is a mobile operating system running on the Linux kernel developed by Google.
AOSP → Android Open Source Project
Apps2SD → Move applications from the internal NAND memory on the device to a removable SD Card.
BLN → BackLight Notification
Bloatware → Software bloat is a process whereby successive versions of apps include an increasing proportion of unnecessary features that are not used by end users, or generally use more system resources than necessary, while offering little or no benefit to its users. Like all the crap that comes from At&t
Brick → When used in reference to consumer electronics, "brick" describes a device that cannot function in any capacity (such as a device with damaged firmware). This usage derives from the fact that some electronic devices (and their detachable power supplies) are vaguely brick-shaped, and so those which do not function are useful only as actual bricks. The term can also be used as a verb. For example, "I bricked my phone when I tried to modify its firmware."[
Hard Brick → When your phone does not turn on at all. When you can’t get in to CWR/CWM Or Stock recovery. You are basically screwed.
Soft Brick → When your phone bootloops. When you can get into CWR/CWM. When You can use jigtag to get into download mode.
Busybox → BusyBox provides several stripped-down Unix tools in a single executable. It runs in a variety of POSIX environments such as Linux, Android, FreeBSD and others, such as proprietary kernels, although many of the tools it provides are designed to work with interfaces provided by the Linux kernel. It was specifically created for embedded operating systems with very limited resources. Platforms counterparts, but they are pretty close and useful nonetheless.
CWR OR CWM ClockworkMod Recovery →A custom recovery for Android phones and tablets that allows you to perform several advanced recovery, restoration, installation and maintenance operations on your Android device that aren’t possible with the stock recovery.
DEODEX → Apk files have respective odexes that devs use to supposedly save space. Deodexing means you convert it back to a .dex file and put it back inside the apk. This allows you to easily replace file (not having to worry about odexes), but the main point was to deodex services.jar so that you can change all text to different colors (such as the clock color to white) and to deodex services.jar, you need to deodex everything.
Flashing → The process of applying a firmware image (or ROM) to a device. It generally entails a very specific order of steps. Failing to complete any one of these steps properly may result in bricking the device.
Firmware → is a term often used to denote the fixed, usually rather small, programs and/or data structures that internally control various electronic devices. Programs stored in the ROM, EPROM, or flash memory that usually control various internal electronic devices (Hard Drives, Keyboards, Displays, etc). Firmware is typically 'fixed' software that is not updated in consumer devices, however it is often updated (or 'flashed') by advanced users to fix bugs or add features to the device. Flashing firmware designed for one device onto a different device, or not following a specific procedure while flashing will often render the device unusable.
Kernel → is the main component of most computer operating systems; it is a bridge between applications and the actual data processing done at the hardware level. The kernel's responsibilities include managing the system's resources (the communication between hardware and software components
Radio → The cellular radio on the device which needs control software called firmware to control it.
ROM → Read Only Memory. In the context of an Android device, ROM is the internal flash memory where the core operating system resides. It can also refer to a specific version firmware that can be applied to a device through a process usually referred to as flashing. An improperly flashed ROM can often brick the device, rendering it unusable.
Superuser→ A program, which gives unlimited access privileges to perform any or all operations on the operating system.
ODIN → Odin is the Samsung software used to update Samsung phones. It does not work with any other devices other than official Samsung phones.
OTA or FOTA → (F)OTA stands for (Firmware) Over The Air and is the process by which required updates and enhancements to your phone's basic operating system can be sent to you through the cellular network. The Galaxy S II software update will be sent via FOTA and is available through Samsung Kies mini.0
ODEX → In Android file system, applications come in packages with the extension .apk. These application packages, or APKs contain certain .odex files whose supposed function is to save space. These ‘odex’ files are actually collections of parts of an application that are optimized before booting. Doing so speeds up the boot process, as it preloads part of an application. On the other hand, it also makes hacking those applications difficult because a part of the coding has already been extracted to another location before execution.
SDK → Software Development Kit.
Logcat → A debugging tool built into Android devices that displays system logs as they occur. See Logcat.
NANDroid → A set of tools that will enable anyone who has root on their Android device to make FULL system backups, in case something goes wrong or you want to try out that new experimental ROM/theme. NANDroid will backup (and restore) /system, /data, /cache, and /boot partitions.
Recovery Mode → A special environment that you can boot into for troubleshooting and upgrading purposes.
Kang → The process of creating a code based of someone else's code or reapplying code that someone else created into your own code (e.g. git cherry-pick)
Rooting → is a process that allows users of mobile phones and other devices running the Android operating system to attain privileged control (known as "root access") within Android's Linux subsystem with the goal of overcoming limitations that carriers and manufacturers put on some devices.
HOW TO ROOT YOUR GALAXY SII I9100
For those of you who want to root your Galaxy S2 GT-i9100 on ICS (Ice Cream Sandwich Android 4.0+), here’s how to do it by flashing a new kernel.
Step 1. First, put your Galaxy S2 into download mode by holding down Volume Down, Center, and Power button together for about 10 seconds.
Step 2. When you see the warning screen, hit Volume Up button to enter download mode.
Step 3. Connect a micro-USB cable from your Galaxy S2 to your computer.
Step 4. Download ODIN program and CF Kernel. Then unzip both files. - Odin3v1.85.zip - CF Kernel
Step 5. Run the ODIN program. You should see a yellow highlighted rectangle box with a number. If you don’t, you need to install Samsung Kies. - Samsung Kies
Step 6. Hit “PDA” and choose the “CF-Root-SGS2_XX_XEO_LPQ-v5.3-CWM5.tar” file you unzipped earlier.
Step 7. Hit “Start” and the kernel will start flashing to your phone.
Step 8. Your phone will reboot when it’s done.
Step 9. Once you reboot, check that you have the SuperSU app. If you do, you are rooted. Congrats!
HOW TO DO A NANDROID BACKUP
For those of you who’ve recently rooted your Samsung Galaxy S2 Android smartphone, you will probably want to learn how to backup/restore ROMs on your phone using ClockworkMod Recovery. By backing up your rooted ROM, you will have an insurance in case something goes wrong in the future such as bricking your phone while installing a new kernel or ROM.
After rooting, we highly advise you to backup your rooted stock ROM as you will also need this to unroot if needed later on.
Here’s how to backup/restore ROM on your Galaxy S2:
Step 1. Power off your phone then reboot into ClockworkMod Recovery by holding down Volume Up, Home button, and Power button together
Step 2. Once in ClockworkMod Recovery, choose “Backup and Restore” and hit the Power button.
Step 3. Choose “Backup” and hit the Power button.
Step 4. When backup is done, it will be backed up to a folder with current date and time. You can always change this folder name to something more memorable like “rooted stock ROM”.
HOW TO RESTORE FROM A BACKUP
Step 1. To restore, simply hit “Restore” instead of “Backup” and choose the backup folder you want to restore.
Backup will backup everything including your ROM, kernel, contacts, apps, etc…etc… The only thing that won’t be backed up are the contents of your SD card.
HOW TO FLASH A ROM
Basic Steps
! Choose the ROM that you want and download its .zip file
!! Transfer the zip file to your phone’s sd card. Do not put it into any folder.
!!! Turn off your phone and reboot into recovery, usually by holding the down button and power button at the same time.
!!!! Do a Nandroid backup
!!!!! Do a full Data wipe, wipe the Cache and also wipe Dalvik
!!!!!! Flash the zip file that you put on your sd card
!!!!!!! Reboot phone
You can find all ROMS Here
HOW TO FLASH A KERNEL WITH CMW
_Download the Kernel You want to flash and put it in sd card.
__Boot in to CWM!
___Wipe cache & Dalvik Cache
____Press install from Sd card!
_____Select the kernel that you dloaded!
______Flash it!
_______Reboot!
________Check in CPU SPY to see if you successfully flashed Kernel.
All Kernels Can Be Found In The Development Section
HOW TO GO BACK TO UNROOTED STOCK
Step 1. Download and UNZIP Latest Stock Rom Here
Step 2. Put your Galaxy S2 i9100 into download mode by holding down Volume Down, Center button, and Power button together for about 10 seconds until your phone reboots and you see the warning sign. Press Volume Up button to enter download mode.
Step 3. Connect a micro-USB cable to your Galaxy S2 from your computer.
Step 4. Download ODIN, unzip, and run the program - Odin3v1.85.zip
Step 5. When ODIN runs, you should see a yellow highlight with a COM appearing. If you don’t see it, Download Samsung Kies Here and install. Then plug-out and plug in your micro-USB cable to your phone, you should see it now.
Step 6. Choose “PDA” in ODIN and choose the stock ROM file you downloaded/unzipped earlier.
Step 7. Hit “Start” and your phone should start unrooting/unbricking back to ICS official stock ROM.
Step 8. Your Galaxy S2 i9100 will reboot after 5-10 minutes.
Step 9. Your phone should now be on stock ICS.
Great idea for a thread.
I hope it will help all the noobs out there.
If anyone finds that any of the information above is incorrect or needs updating then please let me know and I will get the Guide updated.
Thank You for reading.
Thanks. Indeed a helpful guide. The stock rom for ICS is applicable for all regions ?
Sent from my GT-I9100
kt_samuel said:
Thanks. Indeed a helpful guide. The stock rom for ICS is applicable for all regions ?
Sent from my GT-I9100
Click to expand...
Click to collapse
Each stock ROM has a different modem inside for a specific model/region . Quick answer, it should work for all i9100 models. If you are on other variants like G or P or T, get the specific stock ROMs meant for them, the i9100 stock will not work.
Very nicely done OP.
I think this has been one of the better ideas on forums, making threads like this that explain the basics to people. Now, if we can just get people to READ them! haha.
thanks guys! this is very helpful
Hi I'm trying to root my sg2 for step 6 does it matter that the last 3 letters don't match my existing kernel?
I'm on Ics 4.0.4 my letters are LPT.
I've been reading and reading all these posts and guides and I'm confused :-\
Sent from my GT-I9100 using Tapatalk 2
brilliant idea & big thanks for the effort involved.
I have just acquired the phone (moved from the HTC Desire)
The links in post #6 are not working - ?any mirrors
Cheers
shamonee said:
Hi I'm trying to root my sg2 for step 6 does it matter that the last 3 letters don't match my existing kernel?
I'm on Ics 4.0.4 my letters are LPT.
I've been reading and reading all these posts and guides and I'm confused :-\
Sent from my GT-I9100 using Tapatalk 2
Click to expand...
Click to collapse
No it doesnt matter about the last 3 letters. And by flashing the CF Root Kernel only roots the device and gives Root Access for the user. Hope this clears things up abit mate.
cifa said:
brilliant idea & big thanks for the effort involved.
I have just acquired the phone (moved from the HTC Desire)
The links in post #6 are not working - ?any mirrors
Cheers
Click to expand...
Click to collapse
Hi I have just personally tested all the download links provided in all posts and can confirm them all to be working.
Hooe the problem is sorted for you now.
If you are still unable to download the files needed then please let me know and i will provide alternative links
Thanks
Sent from my GT-I9300 using xda premium
@ Nick Fury
Thanks for the headsup - links working again - & files downloaded.
what version of ICS is in the stock - I want to take my S2 which is on 2.3 up to ICS - but want to avoid ICS 4.04 (been reading about hard brick potential)
my S2 Model number is GT-I9100P - the stock you link to is definitely compatible with my model?
Thanks in advance....
cifa said:
@ Nick Fury
Thanks for the headsup - links working again - & files downloaded.
what version of ICS is in the stock - I want to take my S2 which is on 2.3 up to ICS - but want to avoid ICS 4.04 (been reading about hard brick potential)
my S2 Model number is GT-I9100P - the stock you link to is definitely compatible with my model?
Thanks in advance....
Click to expand...
Click to collapse
Im not completely sure if the linked Rom is compatable with your version 100% as I dont own this device any longer.
Might be worth asking around for the compatability listing.
I confirm that all information is correct with GT-I9100.
I honestly wish I could help more but its just the compatibility with your Model im unsure of.
If you find that listed Rom is compatible with your Device then please follow all the steps as listed in the Posts and there will be no problems.
But if this is your first time then I do advice to also download the Android Stock 2.3 Firmware aswell as a backup.
So if something does go wrong then you can always Flash back to 2.3 through odin and be back up and running again.
Hope this helps.
Sent from my GT-I9300 using xda premium
Great mate, nice to see someone helpful instead of the usual "get lost n00b" crap!
Everyone had to start somewhere!
Is there a CWM flashable easy root, as there is on galaxy ace, i found it much easier and less daunting than odin?
NeatROM -The Best!
@ Nick Fury
Thanks mate - your attitude & info much appreciated. Whilst I am a noob with the S2 - I had a lot of experience of ROM'ing the Desire.
I dont want to f**k this up - hence the questions
I'll research it out more.
Cheers

★★★★[INFO]ANDROID ROM & How they Work★★★★

★★★★[INFO]ANDROID ROM & How they Work★★★★
Parts of a ROM
i. The kernel.
Android (like many other Smartphone operating systems) runs on the Linux kernel. The Linux kernel was created in the early 1990’s by a gentleman named Linus Torvalds in Helsinki, Finland. It’s incredibly stable, incredibly friendly, and incredibly difficult for the layman to understand and modify. Thankfully it’s also very popular so it has been ported on to a multitude of hardware, including our Android devices.
Think of the kernel as an interface layer between the hardware and software on your device. The kernel decides when things happen, such as the LED indicator gets lit or when the soft button's LED gets lit. An application sends a request to the operating system to blink the LED. The operating system then sends the request to the kernel, which makes the light flash for the amount of time requested by the OS.
What sounds like a round-about way to get things done is also what makes the system so scalable and robust. Application developers only have to code in a way the operating system understands and the kernel makes it work on the hardware. This also keeps the application running in it’s own user-space and separate from the kernel. That means when you run the latest uber-cool app that wasn’t designed for your particular OS version, or is still very beta and it crashes, the kernel gives you the option to Force Close the application and the kernel can run untouched.
In a standard Android ROM (we will leave developer images and the like for another discussion) the kernel is bundled along with a set of instructions that tell the device how to load the kernel and the OS during boot. This is the boot.img that you see inside a zipped ROM that your not able to easily open. The device knows to extract this image to internal memory (the ramdisk) and follow a series of scripts (init scripts) to load the kernel and then the other portions of the OS. That’s what’s happening while you’re watching the boot animation. Interestingly enough this is done the same way for a PC, your smartphone, an Android tablet, or even a smart Linux powered toaster. If you’re feeling exceptionally geeky, plug your Android phone into the USB port on your PC and let the PC boot from the USB device. No, it doesn’t actually load, but you can watch the animation while it tries to match up the hardware support with what’s inside your PC. As I said, Linux is amazingly scalable and as a result so is Android.
What is a kernel? If you spend any time reading Android forums, blogs, how-to posts or online discussion you'll soon hear people talking about the kernel. A kernel isn't something unique to Android -- iOS and MacOS have one, Windows has one, BlackBerry's QNX has one, in fact all high level operating systems have one. The one we're interested in is Linux, as it's the one Android uses. Let's try to break down what it is and what it does.
Android devices use the Linux kernel, but it's not the exact same kernel other Linux-based operating systems use. There's a lot of Android specific code built in, and Google's Android kernel maintainers have their work cut out for them. OEMs have to contribute as well, because they need to develop hardware drivers for the parts they're using for the kernel version they're using. This is why it takes a while for independent Android developers and hackers to port new versions to older devices and get everything working. Drivers written to work with the Gingerbread kernel on a phone won't necessarily work with the Ice Cream Sandwich kernel. And that's important, because one of the kernel's main functions is to control the hardware. It's a whole lot of source code, with more options while building it than you can imagine, but in the end it's just the intermediary between the hardware and the software.
When software needs the hardware to do anything, it sends a request to the kernel. And when we say anything, we mean anything. From the brightness of the screen, to the volume level, to initiating a call through the radio, even what's drawn on the display is ultimately controlled by the kernel. For example -- when you tap the search button on your phone, you tell the software to open the search application. What happens is that you touched a certain point on the digitizer, which tells the software that you've touched the screen at those coordinates. The software knows that when that particular spot is touched, the search dialog is supposed to open. The kernel is what tells the digitizer to look (or listen, events are "listened" for) for touches, helps figure out where you touched, and tells the system you touched it. In turn, when the system receives a touch event at a specific point from the kernel (through the driver) it knows what to draw on your screen. Both the hardware and the software communicate both ways with the kernel, and that's how your phone knows when to do something. Input from one side is sent as output to the other, whether it's you playing Angry Birds, or connecting to your car's Bluetooth.
It sounds complicated, and it is. But it's also pretty standard computer logic -- there's an action of some sort generated for every event. Without the kernel to accept and send information, developers would have to write code for every single event for every single piece of hardware in your device. With the kernel, all they have to do is communicate with it through the Android system API's, and hardware developers only have to make the device hardware communicate with the kernel. The good thing is that you don't need to know exactly how or why the kernel does what it does, just understanding that it's the go-between from software to hardware gives you a pretty good grasp of what's happening under the glass. Sort of gives a whole new outlook towards those fellows who stay up all night to work on kernels for your phone, doesn't it?
Click to expand...
Click to collapse
ii. The operating system.
Once the kernel is loaded, the init scripts tell the Operating System to load. Android is the user interface for a custom built Java virtual machine called Dalvik. Dalvik was written by Dan Bornstein, who named it after the fishing village of Dalvik in Iceland, where his family originated from. The debate of which Java VM is superior is best left for another discussion, so I’ll simply say that DalvikVM is a register-based machine versus true JavaVMs which are stack based.
The Dalvik machine creates executable files (.dex files) which can be interpreted by the OS and run by the end user. These .dex files are OS version dependant. That simply means that applications and core functions built to work with one version of Android may or may not work well with other versions. Google provides the tools through it’s Software Development Kit (SDK) for applications to communicate with the OS.
Click to expand...
Click to collapse
iii. Core functions.
No smartphone would be complete without a set of functions that allow the device to be used as intended. Things like the phone and dialer interface, the calendar, the messaging system are core functions of the Operating System. In Android, these are run on top of the kernel as separate applications. The merits (or lack of) of providing these needed functions as separate applications is once again best left for another discussion, but this is what allows developers like HTC or Motorola to replace the standard functions with alternatives that provide a different look and feel from stock. HTC’s onscreen keyboard or Motorola’s MotoBlur contact list are great examples of this. The “little guy” isn’t left out of the mix either. Handcent SMS or Chomp SMS can integrate into the OS very well, as most of us already know.
An additional set of Core Functions are provided by Google. Popularly called GoogleBits, things like Gmail, sync, Gtalk and the Android Market are applications written by Google that give an extra set of useful functions to the OS. You’ll find these on all smartphones, as well as many other Android devices.
Click to expand...
Click to collapse
iv. Optional applications.
These are applications provided by the manufacturer to give the device even more usability. Things like the Amazon MP3 store, PDF readers, Corporate Calendar etc. allow you to do even more with your device. Remember - Droid Does
Click to expand...
Click to collapse
B. How is a ROM packaged?
In most cases a ROM will come packaged in a .zip file. The recovery image’s kernel (yes, it has one too!) has the ability to unzip and copy the contents into the correct place. Inside this zip file is a folder (META-INF\com\google\android\) that contains a script prepared by the ROM “cooker” (another of those techie terms - it means the person(s) who developed the ROM) that tells the system what to format, what to copy and where, and any file operations that need to be done. Each device does things a bit differently, but this script is where it all gets done. More on this folder later.
You’ll also see a /system folder. This is the meat of the ROM. It has the necessary OS files, the Core functions, and any optional applications the cooker decided to include. The folder is structured the same way it is on your device - /system/app, /system/framework, etc. The whole tree is usually copied over and the existing /system folder is overwritten. The cooker uses the script to tell the kernel to erase the existing system folder, copy the new folder over, and set the file permissions.
Sometimes you will also see a data folder. This usually is space set up for optional applications, including optional system tools like busybox or SuperUser white list. These applications could be placed in the /system folder, but placing them in the data folder makes it easier for the end user (you and I) to remove or update them as needed.
You’ll also notice a META-INF folder. This contains the update script we talked about earlier, as well as secure keys that need to be provided so the device knows the update can be trusted. A special note needs made here. Trusted means that the update is trusted to be in the correct form to load the device. It in no way means the ROM is safe from malicious code. Anyone is able to use a set of test keys and create a ROM that will flash and run your device - even those people with bad intentions. Flashing and running a custom 3rd party ROM is putting faith in the cooker that he or she not only knows what they are doing, but are honest as well. Also, some Motorola custom ROMs will have a small update.zip stored inside this folder to be run on first boot of the device.
Finally we are left with the boot.img file. This is the kernel and ramdisk image we discussed earlier. Your phone copies this over to be decompressed and run when the device boots.
Click to expand...
Click to collapse
2. How do I install a ROM?
In this section we’re discussing how to install a custom 3rd party ROM. ROMs from the manufacturer usually have a utility that runs on your PC to flash and load the new image.
A. Got Root???
Yes ?:good:!!!
Custom ROM’s simply will not load on devices that aren’t rooted. In theory, it may be possible to sign a 3rd party ROM with the keys that the stock recovery image will flash, but for the most part you need to have flashed a custom recovery image before you can change your device’s ROM. Instructions and tutorials on how to root your device are all over the internet. Some are good, some are bad. The hacking forum is a great place to go and learn more about rooting and how to successfully get it done on your device.
Click to expand...
Click to collapse
B. Recovery
Most Android devices have had a custom recovery image written for them. This will overwrite the stock recovery image, allowing you to flash 3rd party ROMs as well as giving extra functionality. Help with finding and flashing the custom recovery image for your device can also be found in the hacking forum. The installation of a custom recovery image also allows for a very important function. Backup and restore.
Click to expand...
Click to collapse
.C. Nandroid
Nandroid is a set of bash scripts and code written by that copies the state of your system and stores it in a folder on your SD card. You can then use the restore function of Nandroid to restore to this point at any time. This is a priceless feature and reason enough to root your phone. It’s included by default in most custom recovery images, and the code is freely available to use if you’re inclined to write your own recovery image.
Click to expand...
Click to collapse
In most situations, using Nandroid to back everything up is easy:
1. Verify you have a memory card with enough free space (~300MB to backup, ~500MB to restore).
2. Reboot your device into recovery. It’s slightly different for each device, once again hacking forum FTW!
3. Navigate through the menu and select the Nandroid Backup function.
4. Apply your choice and wait for the device to tell you it’s finished.
It’s always good practice to copy the entire nandroid folder from your SD card to a safe place. You can then copy it back to the SD card if the card is ever damaged, lost or erased.
D. Copy and Flash
You’re rooted, have downloaded a custom ROM, have your system backed up and are now ready to flash your device. This is not nearly as scary as it sounds.
1. Mount your SD card to your PC, and copy the .zip file to the root folder of the card. Don’t unzip the file, and don’t look for a folder called root. The root folder in this case means the base folder, what you will see when you mount your card to a PC or the device.
2. Reboot your phone into recovery.
3. Navigate through the recovery menu and select the flash update option. Depending on your recovery image, the file may need to be named update.zip, or you may be able to select any zip file on your card as long as it’s the correct format. The cooker knows this as well and if the ROM needs to be named update.zip it will be.
4. Apply your choice and wait for your device to tell you it’s finished.
5. Reboot.
Click to expand...
Click to collapse
It’s worth noting that many times a new ROM will require that you wipe and factory reset your devices data. While inconvenient, it’s often necessary to get rid of the old data as it may be incompatible. As long as you’re using the cloud for calendar and contacts, they will be re- downloaded and stored back on your device automatically.
Dirty flash and Clean flash
A dirty flash is only wiping cache and davlik then flashing your ROM....
a Clean flash is at LEAST factory reset/data wipe + wiping davlik(factory wipe takes care of /cache also)... Maybe doing a format /system also.
***Odin***
Odin is the ROM Flashing Tool for SAMSUNG smartphones. ROM files flashable with Odin come with .tar extension.
Most of the ROMs you are going to flash with Odin are the official stock Samsung ROMs (or leaked stock ROMs). Custom ROMs are rerely flashable by Odin because they come with .zip extension that Odin does not recognize (it recognizes .tar files).
Custom kernels, however, are sometimes provided in .tar format by their developers (e.g. CF-Root kernels), so that they can be flashed by Odin. When your phone is new and running official firmware you most often cannot flash a custom ROM to it because a Samsung phone often requires a custom recovery and root rights that are included in a custom kernel to be able to flash custom ROMs. That's why Odin often comes in handy in rooting and flashing a custom firmware to your phone because you (often) can flash a custom kernel with it that already includes root and custom recovery and enables you to flash custom firmware (custom ROMs). I use the word "often" very frequently in the previous sentence because every Samsung smartphone is different and requires various procedures for rooting it and flashing custom ROMs (see the section about using Odin below).
If it comes to stock ROMs, the best source of stock (official) Samsung ROM files is located at this excellent website: SamMobile.com/firmwares (link). It requires registration (it's free) and I encourage you to set up an account there because you will most likely use this site several times during your stay at XDA. You will most likely come across 1 .tar or 3 .tar file ROMs there, flashable by Odin. Refer to the Odin flashing guide below for more info.
Click to expand...
Click to collapse
****Heimdall****
What is Heimdall?
Heimdall is a cross-platform open-source tool suite used to flash ROMs onto Samsung Galaxy S devices.
How does it work?
Heimdall uses the same protocol as Odin to interact with a device in download mode. USB communication in Heimdall is handled by the popular open-source USB library, libusb-1.0.
Why “Heimdall”?
The flashing software Odin is named after the king of gods in Norse mythology. Loke, the software component on the Galaxy S that provides functionality to flash, may also to be named after an important character in Norse mythology, often translated as Loki. As such I have named my flashing software Heimdall, after the Norse god, and guardian of the Bifrost Bridge.
What platforms does Heimdall run on?
Linux, OS X and Windows (XP, Vista, 7 etc.)
Why use Heimdall when we can use Odin?
Odin is generally unreliable and only runs on Windows systems. Furthermore, Odin is leaked Samsung software that is not freely available or well understood by the community.
Is Heimdall safe?
No matter what method you chose, flashing firmware onto your phone has a lot of potential for disaster. We have tested Heimdall with a variety of phones flashing several different firmware versions resulting in a 100% success rate. As such we believe that Heimdall is generally reliable. However keep in mind, just like any flashing software, Heimdall has the potential to brick your phone if not used correctly.
How do Galaxy S phones get bricked when flashing?
Besides the inherent risks like power outs, accidental removal of the USB cable etc. The Galaxy S appears to be running extremely unreliable USB control software.
A failure to flash does not automatically equate to a bricked phone. However if you're extremely unlucky and the flash fails whilst transferring the primary boot-loader, secondary boot-loader or params.lfs (all quite small) than you've got yourself a paper weight that you're hoping Samsung will replace.
Please be extremely careful mixing files from different firmware releases. Don't do so unless you're certain it will work!
What Galaxy S variants has Heimdall been tested with?
We’ve tested Heimdall with a Galaxy S GT-I9000 (8 GB) from the United Kingdom and Galaxy S GT-I9000 (16 GB) from Australia. We don’t personally have access to any other devices to test with, however users have confirmed Heimdall functions correctly with the AT&T Captivate, Bell Vibrant, Telstra GT-I9000T, Epic 4G and the Galaxy Tab.
Click to expand...
Click to collapse
^
CWM Errors and Solutions
ERRORS encountered in CWM Recovery
.
What is CWM Recovery ?
ClockworkMod Recovery is a custom recovery for many Android devices. It is considered to be the most popular recovery for Android due to its easily-ported nature, and integration with ClockworkMod ROM Manager by Koush(Koushik Dutta). The easiest way to recognize it is by the printed name when it first starts, and the background logo of a gear and hat.
Click to expand...
Click to collapse
ERROR STATUS 6
This is usually caused by CR/LF EOL(Windows style End Of Line) in updater-script. Change it to LF EOL(Unix Style EOL) using Linux command: dos2unix updater-script, then re-signing the ZIP, will usually fix this error.
Click to expand...
Click to collapse
ERROR STATUS 7
This is usually caused by a corrupt download, or bad file signature. Re-downloading (or re-signing) the ZIP will usually fix this.
Click to expand...
Click to collapse
We have been consistently seen and heard people facing error “Status 7″ error while trying to flash or install
custom ROMs or firmware packages on their Android smart phones or tablets with ClockworkMod Recovery. Many
of the users are nowadays facing this problem with CWM Recovery while flashing .zip files of modded or custom
Ice Cream Sandwich (ICS) or Jelly Bean (JB) ROMs on their devices. So, you have also downloaded a custom ROM,
placed its .zip file in your phone’s or tablet’s SD card, booted into ClockworkMod Recovery, selected – “install zip
from sdcard” and then chosen the .zip file of the ROM to get it installed on your device. But instead of getting
flashed successfully, if you are facing the issue mentioned below, then just keep reading this article to find out
what’s wrong and fix up the problem :
Finding update package…
Opening update package…
Installing update…
Error in /sdcard/custom-jelly-bean-rom.zip (Status 7)
Installation aborted
Click to expand...
Click to collapse
or the following error right after CWM recovery shows –
Installing update…
assert failed: getprop(“ro.product.device”) == “I9103″ || getprop(“ro.build.product”) == “I9103″ || getprop
(“ro.product.board”) == “I9103″
Error in /sdcard/android-4-1-1-ics-rom-latest.zip (status 7)
Click to expand...
Click to collapse
So, if you are facing any of these errors while trying to install the desired custom ROM package on your Android
phone or tab, then you may try a various things or steps which may turn out to be the workaround of this
problem. Here are a few tips to get this “Status 7” error fixed in ClockworkMod Recovery and flash the ROM
successfully on your device :
(1) First of all, make sure your device’s bootloader is unlocked. If it is already unlocked but you are still
not able to flash the ROM, then just extract the .zip file of the ROM into a new folder, find the boot.img file from
that directory and flash it up on your phone or tablet via fastboot on your PC.
(2) Make sure that you are having the appropriate Radio or Baseband version installed on your device which is
supported by the custom ROM you are trying to flash. Most of the ROMs requires the latest version of Baseband, so
just update or upgrade your device to the latest Baseband version and then try to install the ROM once again.
(3) Update your device to the supported / latest build of official firmware before trying to install the ROM. You can
do it from – Settings > About Phone / Device > Software Update.
(4) Make sure you are having the supported or required kernel installed on your phone or tab. If it’s not, then flash
a new kernel right away and try to install your custom ROM once again.
(5) Is the ROM which you are trying to flash really works ? Find out whether it is working for other users or not.
Click to expand...
Click to collapse
Error Status 0
Well sometimes while flashing some ROMs especially the cooked ones we get Error status 0 in the CWM Recovery
this error is an indicator of Wrong Update Binary.This is usually caused by an incompatible update-binary in edify ZIPs. Replacing it with a compatible one, then re-signing the ZIP, will usually fix this error.
Click to expand...
Click to collapse
Partitions
Now it's time for the partitions :good:
Let’s start with a list of standard internal memory partitions on Android phones and tablets. These are:
/boot
/system
/recovery
/data
/cache
/misc
In addition, there are the SD card partitions.
/sdcard
/sd-ext
Note that only /sdcard is found in all Android devices and the rest are present only in select devices. Let’s now take a look at the purpose and contents of each of these partitions.
/boot
This is the partition that enables the phone to boot, as the name suggests. It includes the kernel and the ramdisk. Without this partition, the device will simply not be able to boot. Wiping this partition from recovery should only be done if absolutely required and once done, the device must NOT be rebooted before installing a new one, which can be done by installing a ROM that includes a /boot partition.
/system
This partition basically contains the entire operating system, other than the kernel and the ramdisk. This includes the Android user interface as well as all the system applications that come pre-installed on the device. Wiping this partition will remove Android from the device without rendering it unbootable, and you will still be able to put the phone into recovery or bootloader mode to install a new ROM.
/recovery
The recovery partition can be considered as an alternative boot partition that lets you boot the device into a recovery console for performing advanced recovery and maintenance operations on it. To learn more about this partition and its contents, see the ‘About Android Recovery’ section of our guide to ClockworkMod recovery.
/data
Also called userdata, the data partition contains the user’s data – this is where your contacts, messages, settings and apps that you have installed go. Wiping this partition essentially performs a factory reset on your device, restoring it to the way it was when you first booted it, or the way it was after the last official or custom ROM installation. When you perform a wipe data/factory reset from recovery, it is this partition that you are wiping.
/cache
This is the partition where Android stores frequently accessed data and app components. Wiping the cache doesn’t effect your personal data but simply gets rid of the existing data there, which gets automatically rebuilt as you continue using the device.
/misc
This partition contains miscellaneous system settings in form of on/off switches. These settings may include CID (Carrier or Region ID), USB configuration and certain hardware settings etc. This is an important partition and if it is corrupt or missing, several of the device’s features will will not function normally.
/sdcard
This is not a partition on the internal memory of the device but rather the SD card. In terms of usage, this is your storage space to use as you see fit, to store your media, documents, ROMs etc. on it. Wiping it is perfectly safe as long as you backup all the data you require from it, to your computer first. Though several user-installed apps save their data and settings on the SD card and wiping this partition will make you lose all that data.
On devices with both an internal and an external SD card – devices like the Samsung Galaxy S and several tablets – the /sdcard partition is always used to refer to the internal SD card. For the external SD card – if present – an alternative partition is used, which differs from device to device. In case of Samsung Galaxy S series devices, it is /sdcard/sd while in many other devices, it is /sdcard2. Unlike /sdcard, no system or app data whatsoever is stored automatically on this external SD card and everything present on it has been added there by the user. You can safely wipe it after backing up any data from it that you need to save.
/sd-ext
This is not a standard Android partition, but has become popular in the custom ROM scene. It is basically an additional partition on your SD card that acts as the /data partition when used with certain ROMs that have special features called APP2SD+ or data2ext enabled. It is especially useful on devices with little internal memory allotted to the /data partition. Thus, users who want to install more programs than the internal memory allows can make this partition and use it with a custom ROM that supports this feature, to get additional storage for installing their apps. Wiping this partition is essentially the same as wiping the /data partition – you lose your contacts, SMS, market apps and settings.
With this, we conclude our tour of Android partitions. Now whenever you install a ROM or mod that requires you to wipe certain partitions before the installation, you should be in a better position to know what you’re losing and what not and thus, you’ll know what to backup and what not.
You should at least post the source of such a large copy paste post.
Sent from my GT-N7100 using Tapatalk 2
Source? How do you post a source for an article which is compiled from 10+ sites? Plus my own addition?
Started from the bottom
Good job man, this saves me the time to do all this researches.
Keep it up
Best regards
Sifou
Using a Samsung N7100
sos_sifou said:
Good job man, this saves me the time to do all this researches.
Keep it up
Best regards
Sifou
Using a Samsung N7100
Click to expand...
Click to collapse
DO tell me if you have some suggestions for the thread.
"Thanks button is just to avoid "THANKS" posts in threads. Nothing more than that. Don't ask in signature or post for it and defeat the purpose why it was introduced"
I think that this is a pretty good summary of the basics. I even converted it to epub and stocked it on my e-reader for reference
You can get to the details if you want? Adding some info about flashing softwares like odin and the Linux based one (i don't remember it name)
The different recoveries available and their advantages vs désavantages
How to protect yourself from malicious applications, starting from knowing what are permissions...
Keep it up mate
Best regards
Sifou
Using a Samsung N7100
sos_sifou said:
I think that this is a pretty good summary of the basics. I even converted it to epub and stocked it on my e-reader for reference
You can get to the details if you want? Adding some info about flashing softwares like odin and the Linux based one (i don't remember it name)
The different recoveries available and their advantages vs désavantages
How to protect yourself from malicious applications, starting from knowing what are permissions...
Keep it up mate
Best regards
Sifou
Using a Samsung N7100
Click to expand...
Click to collapse
Heimdall?
"Thanks button is just to avoid "THANKS" posts in threads. Nothing more than that. Don't ask in signature or post for it and defeat the purpose why it was introduced"
Tha TechnoCrat said:
Source? How do you post a source for an article which is compiled from 10+ sites? Plus my own addition?
Started from the bottom
Click to expand...
Click to collapse
I guess you have a point, it's just the scientist in me with source-referral-ocd.
Sent from my GT-N7100 using Tapatalk 2
adytum said:
I guess you have a point, it's just the scientist in me with source-referral-ocd.
Sent from my GT-N7100 using Tapatalk 2
Click to expand...
Click to collapse
DO tell me if you have any problems or if you want something to be added.
"Thanks button is just to avoid "THANKS" posts in threads. Nothing more than that. Don't ask in signature or post for it and defeat the purpose why it was introduced"
Thread updated with Odin and Heimdall information.
"Thanks button is just to avoid "THANKS" posts in threads. Nothing more than that. Don't ask in signature or post for it and defeat the purpose why it was introduced"
Tha TechnoCrat said:
Source? How do you post a source for an article which is compiled from 10+ sites? Plus my own addition?
Started from the bottom
Click to expand...
Click to collapse
By listing ALL the different sources? And obviously crediting yourself with bits you've added.
Sent from my GT-N7100 using xda premium
You should make the title of the thread more presentable though.
Simone said:
You should make the title of the thread more presentable though.
Click to expand...
Click to collapse
Would like some suggestions.
"Thanks button is just to avoid "THANKS" posts in threads. Nothing more than that. Don't ask in signature or post for it and defeat the purpose why it was introduced"
Tha TechnoCrat said:
Would like some suggestions.
"Thanks button is just to avoid "THANKS" posts in threads. Nothing more than that. Don't ask in signature or post for it and defeat the purpose why it was introduced"
Click to expand...
Click to collapse
You should think of your own. That would be the best
Make it more professional looking, though.
Everything else is good.
Guys I have got my Note 2 finally. Will compile some guides for it too.
Sent from my GT-N7100 using xda app-developers app
You bought a note 2? Congrats mate !
Best regards
Sifou
Using a Samsung N7100
sos_sifou said:
You bought a note 2? Congrats mate !
Best regards
Sifou
Using a Samsung N7100
Click to expand...
Click to collapse
Thanks buddy. Get ready for more guides
Sent from my GT-N7100 using xda app-developers app

Root and Install Custom Rom on Xoom WiFi (Wingray)

Hello, I have a stock XOOM WiFi (Wingray) and have been looking at installing a custom ROM. I am doing it for fun, knowledge, and to hopefully get a little better performance out of my XOOM.
I currently use my xoom for Web Browsing, XBMC, and Sling Player...
I have been searching the Web and this Forum for information on how i can do this, step by step but i am lost. I know that i have to do the following:
1.Unlock Boot loader (Lord AIO Tool, was unsuccessful which is why i started the thread to post useful links after i succeed.)
2.Modify the Recovery Partition.
3.BigPart
4.Install Custom ROM (Based on whatever Android Ver / Kernel)
I am running Mac OSX 10.8, have a windows VM, and access to a windows laptop if needed.
*EDIT*
Results: I used my Windows Laptop and started to have some success with the Lord AIO Tool. i dont see why the VM wouldn't work, but i had given up on the VM thinking it may have cause a problem.
Steps Needed:
1. Download Motorola Fastboot Drivers:
https://motorola-global-portal.custhelp.com/app/answers/detail/a_id/88481
2. Download ADP Tool (or Install Android SDK and add appropriate locations to your System Path)
ADP Tool: (Awesome)
http://forum.xda-developers.com/showthread.php?t=2588979
Android SDK:
http://developer.android.com/sdk/index.html
3. Download Lord AIO Tools: (also, Awesome)
http://forum.xda-developers.com/showthread.php?t=1468298
4. Download the ROM you need. I used OMNI 4.4.2 (Also needed Big Part, and this too is Awesome)
http://forum.xda-developers.com/showthread.php?t=2593757
Big Part:
http://forum.xda-developers.com/showthread.php?t=2506997
5. Download Super User Root zip file.
6. Format an microSD Card FAT32 and copy over the following files:
TeamWin Recover Partition
TeamWin Recovery Partition Big Part (only needed for ROMs that need larger partition.
Super User
OMNI ROM (or whatever ROM you want)
GApps (one of the Google Apps. I used the gapps-wingray-kk-20131223.zip)
7. Follow Instructions for Lord AIO Tool installation and then do the following:
Run the tool and unlock the boot loader (enter option 03, not 3, but 03)
When done you need to install The recovery partition, i used TeamWin RP. (This is option 09 in the Lord AIO Tool)
Then i rebooted into recovery mode and was in the TeamWin RP menu. From there i Flashed the BigPart, then ROM, then Gapps, and then the Super User to Root.
I think there is an option to Root from the Lord AIO Tool, but i dont think i used it at all.
I was trying stuff all day and when it's all said and done I think that's basically what i did, things didnt always work on the first try and i had some trouble mounting the microSD in the Recovery Partition.
I put this here to hopefully give people new to the game a run down of what to do. i did a lot of searching yesterday and was spinning my wheels. and some of the old threads i found were quite technical and had dead links. (not necessarily from XDA) It's not a Step by Step for the XOOM but will hopefully get people who are late to the game a good start.
tonycajjo said:
Hello, I have a stock XOOM WiFi (Wingray) and have been looking at installing a custom ROM. I am doing it for fun, knowledge, and to hopefully get a little better performance out of my XOOM.
I currently use my xoom for Web Browsing, XBMC, and Sling Player...
I have been searching the Web and this Forum for information on how i can do this, step by step but i am lost. I know that i have to do the following:
1.Unlock Boot loader (Lord AIO Tool, was unsuccessful which is why i started the thread to post useful links after i succeed.)
2.Modify the Recovery Partition.
3.BigPart
4.Install Custom ROM (Based on whatever Android Ver / Kernel)
I am running Mac OSX 10.8, have a windows VM, and access to a windows laptop if needed.
*EDIT*
Results: I used my Windows Laptop and started to have some success with the Lord AIO Tool. i dont see why the VM wouldn't work, but i had given up on the VM thinking it may have cause a problem.
Click to expand...
Click to collapse
I use the Lord AIO Tool on desktop Windows 8.1 and when I ran the Set_Up.bat as Admin, it say file is missing. Not sure what i did wrong.
cat2115 said:
I use the Lord AIO Tool on desktop Windows 8.1 and when I ran the Set_Up.bat as Admin, it say file is missing. Not sure what i did wrong.
Click to expand...
Click to collapse
i did not need to run as Admin, possibly cause the user was already admin. i had issues when i ran as admin... that's one thing i forgot to add above. (I ran it on Win7 32-Bit)
2. Download ADP Tool (or Install Android SDK and add appropriate locations to your System Path)
ADP Tool: (Awesome)
http://forum.xda-developers.com/show....php?t=2588979
Android SDK:
http://developer.android.com/sdk/index.html
also, try moving LAIOT to C:\ if not already there.
after you install ADP tool you may have to reinstall LAIOT, delete the files and just start over using the setup.bat
Stuck on step seven
I will be very grateful of any help stuck on step seven it says too many parameters
floydme said:
I will be very grateful of any help stuck on step seven it says too many parameters
Click to expand...
Click to collapse
what part of step 7? my step 7 is pretty broad.
tonycajjo said:
what part of step 7? my step 7 is pretty broad.
Click to expand...
Click to collapse
After running setup bat on the second return key hit I I get too many parameters message
Perfect (step by step)
Followed this step by step, utilizing this process as well as the individual threads regarding each part (Big Part Partitioning, LORD AIO Tool-with file folder placed on "C" drive, etc.) and worked like a charm.
This thread should become sticky and placed at the very top for Xoom Rooting guide.
Stingray Xoom
kamikazebeats said:
Followed this step by step, utilizing this process as well as the individual threads regarding each part (Big Part Partitioning, LORD AIO Tool-with file folder placed on "C" drive, etc.) and worked like a charm.
This thread should become sticky and placed at the very top for Xoom Rooting guide.
Stingray Xoom
Click to expand...
Click to collapse
good stuff, glad it helped.
floydme said:
After running setup bat on the second return key hit I I get too many parameters message
Click to expand...
Click to collapse
can you write explicitly what the error says, and when you hit "enter" the second time what are you exactly hitting enter to?
also include a bit of info on what OS you are using, where you have stuff installed, and so on.

What are my options today to have a free ROM (e.g. postmarketOS, lineageOS,...)

Hello community,
I have already posted on "LG K8 Questions & Answers" but I got only one negative answer. So before I'm about giving up I try it here. Below is my original posting.
Thanks for all your input!
Hello,
I'm new here and I registered because now after searching, reading and trying different things I'm a bit confused
And: Most information is quite old...
I was donated a LG device that gives me these informations about itself:
Modellnummer: LG-K350n
Android-Version: 6.0
Android Sicherheitspatch-Level: 2018-04-01
Kernel-Version: 3.18.19
Build-Nummer: MRA58K
Software-Version: V10k-EUR-XX
My initial idea was to have postmarketOS on it and use it as kind of a small tablet - e.g. to read/write eMails, take pictures, have video-conversations via tox, use it as a music-player and maybe use it as a GPS-device (offline, just via GPS). Connections should only be made via WiFi. No SIM should be required - to make calls and SMS I have a separate feature phone, so I don't need the telephony-module.
After a while I befriended myself with lineageOS or even replicant. In such a case maybe I would even use it as cellphone and keep my feature-phone just as a back-up.
My main aspect is to have a device I control - not someone else (e.g. google).
I know that it would be easier just to use stock android and maybe fiddle a bit around, but I don't trust android/google/...
I don't need google-applications, facebook/What's-App, some cloud-based-stuff... - never did and never will. (I prefer to stay away from things that require these - if something has it mandatory then I will not use it.)
What I did until today: Following Friendly root method for lg k8 and k10 but got stuck without a version of TWRP that fits on my firmware. I found one that claimed to be OK for my firmware (https://www.cyanogenmods.org/downloa...ery-for-lg-k8/). Booted into it, then I installed rce_univ.zip, supersu and rce_univ.zip again. But then the phone was in a bootloop saying that it was corrupted before it tried to boot itself again. With the help of a friend I restored the stock-ROM with LG Bridge (he has Windows10 on his laptop) - that took about 10 hours because here we don't have fast internet-connections...
I'm willing to put effort in this project and try to build/compile all kinds of things myself. But I need help in the way someone could guide me with what are the steps to be taken next. My PC (amd64) is running linux (gentoo to be precisely) and in a VirtualBox I have a copy of Window$ XP SP3 (32-bit).
After this toying around I found it hard to get up-to-date informations on what is possible today. And I don't want get stuck again like I was (and of course I don't want to brick it completely ).
So, please help me on my way to free my phone, I'd be glad to offer further information if needed.
Thanks a lot!
Click to expand...
Click to collapse

A comprehensive guide to the Lenovo Yoga Tab 3 Pro (YT3-X90*) and a Cooked ROM

THESE COOKED ROMS ASSUME YOU HAVE ALREADY AN UNLOCKED BOOTLOADER AND TWRP AS RECOVERY SYSTEM. You can flash them using TWRP, after wiping ART, cache, data, boot and system partitions.
FINAL RELEASE: Well... this is the final release from me and it is specifically for the WiFi model. I hope it is worth it for you. It is more stable and somewhat updated, anyway, if you use a X90F (wifi model) you will probably like it. The other versions are still up for whatever reason. Here's the link. Follow this guide by @Quardah if you are coming from a factory ROM. Go to post 46 if you can't get past the setup wizard. A barely tested (by @Nuihc88) version for the 3G (X90L) model can be found here.
NOTICE: If you find this work useful, mirror it. I won't be hosting it for free forever and it is becoming a burden to my Nextcloud installation. One would say this is a pretty much forgotten thread, but I'm seeing almost daily download activity. I'm putting the ROM files offline now and getting away from XDA for a while. Please don't DM me for the files. If you are looking for them, ask others in this thread. Good bye.
||||||||||||||||||| FROM HERE IS JUST INFORMATION YOU PROBABLY DON'T NEED |||||||||||||||||||
Spoiler: NEWS THAT ARE NOT ANYMORE.
APRIL 9, 2021: You can find in these links a new version of the cooked ROM.
The link for the updated cooked ROM is: https://centsoarer.ddns.net/s/Y8o3eoBK4Ryx5RP. This is a version with GAPPS updated: https://centsoarer.ddns.net/s/FPKjgQcmW3CHZCw. Feel free to mirror, unless you are afraid of Lenovo's lawyers, but don't forget to share the link.
My personal version... even more debloated (if you don't need chinese, japanese, korean, or russian input support/apps) and with CPU tweaks for my own usage: https://centsoarer.ddns.net/s/jcCDAgNedryGRjo
KNOWN ISSUES AND SOLUTIONS:
1) One random reboot after the first boot will happen and it is normal.
2) I'd reccommend to stay with Magisk 21.4 for a while, Magisk Manager >21.4 won't manage your extensions.
3) If you can't get past the initial Setup Wizard check post 46. Basically you have to boot into bootloader, erase the config partition and format it again.
4) Needs confirmation, but versions with signature spoofing patches seem to break Lenovo's SmartSide Bar.
JUNE 12: Fast update on the Cooked ROM and TWRP and KERNEL. They are not as universal as I implied before. Proceed carefully since they may not work four your device/firmware. Make a Nandroid backup and only flash with testing purposes.
JUNE 5: So, I know this is not what everybody who owns this tablet wants to have (that is Android 9 or 10 of course) but, in recent weeks Lenovo updated the firmware of this tablets. It still is a Marshmallow one and it still sucks big time but I took it as a base and cooked it to deliver a newer TWRP recovery with compression, a flashable modified kernel and a cooked flashable stock ROM to free the owners of this tablets from the treacherous path of making this hardware to work properly. If you want a better overall experience and are in stock firmware you just need to Unlock your bootloader, flash TWRP, Format data partition (not only wipe), Wipe Cache, Dalvik/ART, System and DATA and flash the Cooked ROM to put this tablet in a sweeter spot. For details go to post #2!
JUNE 3: Been trying to get to know some of the source code available for Cherry Trail devices and I am fairly lost at building TWRP from source. Anyway, I ported a newer TWRP recovery IMG file for the YT3-X90F (maybe L, X, Y and Z) from the TWRP image for the Chuwi Hi10 Pro tablet from here, using AIK-Linux. The result is in the second post labeled as beta, since I only tested in the YT3-X90F model, running lollipop firmware. So far, it works fine flashing ZIP archives, backing up and restoring backups. Advantages? Well, backups are way lighter if you enable compression (like half the size), higher resolution, twrp turns off the screen with a timeout and whatever made them bump from version 2 to 3. While I could port a newer TWRP version, I just wanted to have lighter backups with compression... so maybe it is what it is .
ORIGINAL POST STARTS HERE. This is general information that I collected for geeks or desperate users that bricked their tablets. When I started this post it wasn't intended to produce a cooked ROM that would include most of these hacks. You don't need this if your tablet boots to Android or TWRP. You also don't need this if you are ready to flash the cooked ROM.
(This is a lenghty post. I suggest you to navigate by section header and find the one you might need.)
There are several Lenovo Yoga 3 tablet models out there and, while some of them enjoy of prime community support as the Yoga Tab 3 Plus, this Intel Atom powered tablet is pretty much forgotten and, at the same time, users were recently buying this tablet, which is a great piece of hardware but has the most terrible support by Lenovo.
Spoiler: WHAT LENOVO TABLET(S) IS THIS GUIDE FOR?
Basically, this is that Lenovo tablet with an attached projector and an Intel Atom Cherry Trail x5 Z8500. There are several models, though, to my knowledge they vary in their code names in the last letter, the two most basic ones (2GB RAM, 32 GB ROM) are the YT3-X90F and the YT3-X90L, the former connects to the internet by WiFi and the latter being the one with LTE/Phone capabilities. There are other models, though, and they vary on the amount of RAM and internal storage. Apparently, the YT3-X90[YX] models (the 4/64 GB refresh) have some use for these firmwares we describe, but in a very specific way, if you own a Y or X model, keep reading, especially the next section.
Spoiler: EXPLAINING HOW TO FIND THE RIGHT STOCK FIRMWARE
Lenovo support has been terrible (there are no words to describe it, really), so they launched this tablet with Android 5.1 Lollipop and they maintained it for a while but were very slow to deliver Android 6.0 Marshmallow. In fact, there was already Android Nougat, when they sent the Marshmallow update. Nevertheless, the update was bad. Performance issues were always a thing and some functionality went lost in the update (less intuitive multiple windows, a crippled recents activity/screen, and a laggy overall experience). Bottom line, they launched a curated Android Lollipop 5.1 firmware with security updates until March 2016 (striked because the last lollipop update f*cks up my sensors, except the light one) and a half-assed Android Marshmallow 6.0.1 firmware.
Of course, at the time, I'm guessing most of us upgraded to Android Marshmallow 6.0.1, hoping the upgrade would fix the issues in Lollipop or with security patches in mind. The reality was that Android 6.0.1 wasn't nearly as maintained as 5.1 and security ambitions went nowhere. So, we got the upgrade all right, but at this point, both Android versions can be considered inherently insecure and we really shouldn't be using it for sensitive work.
OK, there are several Android 5.1 and 6.0 firmwares, you can recognize them because they are all over the internet typically in a compressed format. For example, this firmware hosted in androidhost.ru named:
YT3-X90F_ENG_S100265_1601281130_WW24_ROW
Is a firmware for the Lenovo Yoga Tab 3 (YT3) Pro (X90) Wifi Version (F). The ENG part is an indication of the build type, ENG is an engineer build while USR is probably a firmware for the end user (this is common now that I know a bit more about AOSP source code), it is a Lollipop firmware (S1, Marshmallow would be a S2) with update version (00265), date of compilation and a good estimate of its security patch (1601281130), the WW24 is the weekly release version of the Android kernel for Intel devices (the latest, in May 2020, being WW31 which is exactly the same as WW28 and not updated since 2016), the final part means it is the global ROM version (ROW, opossed to the Chinese version CN). This is the latest Lollipop firmware I am aware of, so, as an example, an imaginary Android Marshmallow Chinese firmware for the LTE version of the Yoga Tab 3 would look like:
YT3-X90L_USR_S200013_1610141535_WW24_CN
As an additional note the Chinese ROMS, I presume, are not trusty but they are also Google-free for what it's worth. On the other hand, they ship with a "Lenovo Services Framework" that should be as intrusive as the Google Play Services. Oh, also, baidu and yandex, and, really, any less traditional search engine can help you find a fitting firmware.
Spoiler: EXPLAINING HOW TO FLASH A STOCK FIRMWARE (DOWNGRADE TO LOLLIPOP AND UNBRICK)
I did test several firmwares, chinese and global, lollipop and marshmallow and the safest and easiest way to flash them is by using the Intel Platform Flash Tool Lite . I can't say I trust in this site, but it hosts a handy tutorial on how to use it, though, is pretty intuitive. The software exists for Mac, Windows and Linux, be sure you are in, at least, the 5.8.x version, this is important to avoid the need to install some special drivers separately as a pre-requisite. Grossly, Intel Flash Tool Lite works like this:
0) Turn off your tablet if it is on.
1) Launch Intel Platform Flash Tool Lite.
2) If your downloaded firmware is in zip format load it with the blue "Browse..." button.
2 bis) OR, if your firmware is in other compressed formats, uncompress it first. After this use the "Browse..." button to load the "flash.json" file.
3) In Configuration option select "blank" if it isn't set already. Optionally, un-tick the "On-demand flash" option to have more control of this process. Also, maybe you can use the "erase" configuration here.
4) Start your tablet in DNX mode. To do this, press Vol- and hold it, then Vol+ and keep holding both, then press the Power button until it turns on and you see the Lenovo logo and some text indicating you are in said mode.
5) Connect your Yoga Tablet with a USB cable and your Intel Platform Flash Tool Lite windows should show it as detected. Now you can proceed using the blue "Start to flash" button.
6) Keep an eye on your tablet, since some firmwares will prompt to set some more options. Unless you know what you are doing, answer "Yes" to any question.
7) Reboot and wait.
If a couple hours have passed and the tablet hasn't booted, maybe you should try another firmware.
IMPORTANT NOTE AND INSTRUCTIONS FOR YT3-X90Y AND POTENTIALLY YT3-X90X USERS: I don't know the rules in xda about linking to other forums but in certain forum there is an answered question about the Y model (the 4/64 GB WiFi only refresh) on how to flash a firmware. Instructions are the same as I gave in this section, except, apparently, you need to do it twice, first with the ENG version and the second time with the USR version except you are not using the flash.json file, this time you'll browse for the flash_factory_1st_stage.json one and the factory1st configuration in fastboot. It is not clear what are the consequences of not doing it this way or what if you combine different firmware versions (it would be interesting to have a tester here). Notice please, these firmwares are marked for the YT3-X90F model. So, clarifying:
1) Follow the instructions above to flash the YT3-X90F_ENG firmware.
2) Power off your tablet.
3) Boot into bootloader (not in DNX, you need to boot into bootloader by powering on while holding Vol+).
4) From the YT3-X90F_USR firmware folder use Intel Platform Flashing Tool Lite to load the flash_factory_1st_stage.json and select the factory1st configuration.
5) After flashing the USR firmware, reboot and you should be good to go.
METANOTE: This wasn't tested by me, please do this only when you are hopeless with your hardware. This is just an educated guess but I bet it works the same with the YT3-X90L (the LTE version 2/32 GB Yoga Tab 3 Pro) and the YT3-X90X (the 4/64 GB refresh).
ALTERNATIVE WAY TO FLASH A STOCK FIRMWARE (ADVANCED USERS, requires fastboot)
Well, there is no need, really, to use that Intel tool. In my search for a lollipop firmware (I wanted to downgrade from Marshmallow) I found the firmware YT3-X90F_USR_S100195_1512052308_WW24_ROW in www.firmware247.com or www.androidfilehost.com (IMPORTANT: please read the note on downgrading to Android 5.1 Lollipop in the note at the end of this section). This firmware was special since, if you are in Windows and have fastboot executable ready and in place, you can run a script (run_me.bat) in the Windows terminal (CMD) or Powershell to flash the firmware semi-automatically. I think this firmware was modified, though, since I found differences in the boot.img when compared with stock firmwares. This script is credited to XDA members @ionioni and @joesnose and you can replicate its steps if you:
0) Turn off your tablet if it is on.
1) Start your tablet in DNX mode. To do this, press Vol- and hold it, then Vol+ and keep holding both, then press the Power button until it turns on and you see the Lenovo logo and some text indicating you are in said mode.
2) Connect your tablet to your fastboot enabled PC using a USB cable.
3) Input "fastboot flash osloader loader.efi"
4) Wait 5 seconds to be sure the loader flash finishes.
5) Reboot into Bootloader. If you don't know how, one way is to hold Vol+ and Power on your tablet.
6) Input "fastboot oem unlock" and confirm using Vol keys to select the right option and the Power button to enter it.
7) Input "fastboot flash system system.img"
8) Input "fastboot flash boot boot.img"
9) Input "fastboot flash recovery recovery.img"
10) Input "fastboot flash bootloader bootloader.img"
Follow your instincts, since I don't know if these IMG files are always named the same. You can get these IMG files from downloaded sources or dump them yourself using dd command.
NOTE ON DOWNGRADING TO ANDROID LOLLIPOP 5.1: So, one of my main concerns has been to go back to Android Lollipop. There is a last version of Lollipop from where you can upgrade to Marshmallow with a security patch from March 2016. Nevertheless, you MAY end up loosing other sensors except the light one. If this happens, you need to use a complete firmware flash using Intel Platform Flash Tool Lite. In my experience, some boot images are not compatible with other weird partitions like country or misc.
Spoiler: TWEAKS ALREADY IN THE COOKED ROM
The first boot takes some time even amounting for the time of the setup itself. By the time you are in the launcher tapping on app's icons you think there's nothing wrong with our device, but after some apps are in memory, you notice some lag. You think "OK, it is updating, but soon it'll settle", but it does not. So, you reboot again after updates and fire up a terminal emulator and connect to your tablet using a USB cable with USB debugging turned on and issue a free command to find something like this:
Code:
total used free shared buffers
Mem: 1950372 1820964 129408 0 7756
Swap: 524284 10740 513544
Total: 2474656 1831704 642952
Which means you have a total of ~2.5 GB (this is the 2 GB model). So, did I download that extra half GB of RAM or Lenovo was feeling generous? Well, no. The issue here is Lenovo built the kernel with zRAM support which is a technology included in Linux that reserves space in RAM to quickly compress and uncompress pages of data exceeding our physical amount of RAM installed (2 GB). This is not Virtual Memory as in a swap file/partition or Windows' Page File inside storage media. zRAM literally reserves a fixed amount of physical RAM space (blocks) to expand it by compressing data. The consequence is you loose "fast RAM" (THE RAM) and gain some "slow RAM" (the zRAM). You also sacrifice some CPU power to compress/decompress data and, with this, some battery juice is also lost.
That does not sound like a terrible trade-off for a RAM-limited device, one would think. Another interesting thing would be WHEN to send this piling data in "fast RAM" to the compressed space and WHEN to get it back. Two parameters control the WHENS, one is called "swappiness" (when to send it to the compressed space, the "slow RAM") and the other may be the "vfs_cache_pressure" (when to uncompress it and send it back to the "fast RAM"). And this is where the main problem is, really, because the kernel, Linux, is pressing the RAM constantly to send some less prioritary data to "slow RAM" and, at the same time, is trying constantly to send compressed data back to the "fast RAM". Summarizing, this kernel behavior is practically minimizing the fast RAM amount and usage while maximizing the "slow RAM" usage. This is nuts, by default a swappiness and a vfs_cache_pressure of 100 are not even default for servers, these parameters extremely prioritize that processes can get done no matter how slow they get, and they are even more nuts when Android is designed to work without swap space.
What that free command is telling us is the tablet is using the "slow RAM" even when we only just turned it on. Fortunately there are two ways to fix this problem: one is to completely disable zRAM, the other one is to use ZRAM a whole lot less by tweaking the swappiness and vfs_cache_pressure parameters. This can be easily done with the following sentences in a rooted tablet:
Code:
# echo 5 > /proc/sys/vm/swappiness
# echo 50 > echo 5 > /proc/sys/vm/vfs_cache_pressure
Or, to regain the whole fast RAM:
Code:
# swapoff /dev/block/zram*
One caveat of the first method, reducing swappiness, is there is still a lot of RAM (one quarter of the whole RAM in a 2 GB device) reserved as "slow RAM".
SOME ROMS DID NOT ENABLE KERNEL SAMEPAGE MERGING, UNFORTUNATELY
Additional to the sorry implementation of zRAM, some firmwares support a fabulous Linux tool to reduce RAM usage called Kernel Samepage Merging (KSM) but they don't use it by default. This software runs at kernel level, so, it really is CPU-wise inexpensive and, opposite to zRAM it can actually recover some RAM usage by reducing the amount of data flagged as redundant in physical RAM by merging it. KSM is good for you and you should have it always enabled by issuing the following command as root:
Code:
# echo 1 > /sys/kernel/mm/ksm/run
STOP WRITING AND FIX MY RAM! PLEASE!
Well... are there any people interested on this? With the above information you can write a script to execute at boot. Something like this should work in any version of the firmware:
Code:
#!/system/bin/sh
# Mount system as rw
busybox mount -o remount,rw -t auto /system
# Tweaking swappiness in zram
echo "5" > /proc/sys/vm/swappiness
echo "50" > /proc/sys/vm/vfs_cache_pressure
# Activating Kernel Samepage Merging
echo 1 > /sys/kernel/mm/ksm/run
# Remount system as ro. noatime option for faster and volatile system
# busybox mount -o ro,remount,noatime /system
busybox mount -o ro,remount /system
exit 1
Or, you can unpack the boot.img and modify the init.cht_ffd.rc (lollipop) or the init.r2_cht_ffd.rc (marshmallow) files to write these values as default... or, if there is interest for something easier, I can produce this boot.img files for you to flash using fastboot.
ROOTING THE LENOVO YOGA TAB 3 PRO (YT3-X90[FL])
Here I am not gonna write a lot. Instructions were given in this thread. I'd only recommend to put vm.targetutilization at 0.8 top 0.85 in system/build.prop
After rooting, debloat your firmware. I use the app "/system/app mover" from Fdroid to convert to user apps and uninstall them. Also, if rooting is not your cup of tea, you can install AppOps software to freeze all those apps that you don't use regularly. Also, I couldn't patch my services.jar for Signature Spoofing with Nanodroid patcher in the most recent lollipop firmware, but it did work in Marshmallow... anyway I'll do it manually.
ARE YT3-X90F AND YT3-X90L FIRMWARES INTERCHANGEABLE?
I own a WiFi only device (YT3-X90F) so I can't assert they are interchangeable. If I owned the LTE version and use a WiFi firmware I would expect to loose LTE functionality. Now, on the other direction is more interesting because I've been using a LTE firmware version for weeks (as a matter of fact, the one joesnose linked in his How-To debrick this tablet, flashed with the instructions I posted for advanced users it even updated to recent 2020 firmwares). The only tweak you need for this to work well is to add "ro.ril.disable=1" in the build.prop file. So, yes, firmware for the LTE version work in the WiFi version but kind of not vice versa.
Spoiler: YT3-X90(FL) UN-DEVELOPMENT
No news here. All capable people interested on developing for this device are all done with Lenovo and their attitude against Open Source. Don't expect your situation to change.
I'm happy to know there are still a couple of developers interested on this device. I won't cite them by linking their names but they are OOEvil and alquez, the first guy is trying to make a Generic System Image (GSI) ROM compatible with our tablet, I don't know the details so I wouldn't go further. Alquez has been active in this thread and, while he is trying to figure out how to build a kernel, he believes the best way to start having some alternative to official Lenovo firmware is by using a firmware kernel (a prebuilt kernel) to, first, build a more up-to-date TWRP recovery.img and from there try to build CyanogenMod 13, which was based on Android Marshmallow 6.0.1. My guess is newer Android versions wouldn't work if we can't build the kernel from source.
PHOTO ALBUM OF YT3/X90Y BIOS
This photo album documenting every screen option in the BIOS of the Yoga Tab 3 Pro may or may not help someone, but it contains a lot of useful hardware information and guidance for those attempting to boot something else than the original Android 5 or 6 firmware. Using this options, that are accessible through F2 at boot with an attached USB keyboard, you could try Linux distributions on the tablet or even attempt to run Windows, @alquez informs it works fine with a recent distro but the mainline kernel is lacking touchscreen and battery support. This is absolutely his work and he asked me to share it. I hope it serves someone. It is hosted in a rather obscure website but it was the only reasonable placeholder I could find for the 321 photos.
Hope this helps someone, I just didn't want to keep it to myself. Have a nice day!
Just remember, if your tablet is 3G capable I strongly suggest that you modify the line "ro.lenovo.tablet=wifi" to "ro.lenovo.tablet=3gdata" and remove the line "ro.radio.noril=true" to your build.prop file in /system. To do this you can use the section Build.prop Editor of the Kernel Adiutor app or you can do it manually if you have already a method to modify system files. If you do not use mobile data at all, you may leave the build.prop as it is, you'll save a lot of battery by using only wifi.
Spoiler: Some old info here, but maybe useful
ONLY FOR TESTING: Cooked ROM, newer TWRP and tweaked kernel
ONLY TRY THESE FOR TESTING PURPOSES, THE TWEAKS ARE ALL SAFE TO USE BUT ONLY FLASH FOR TESTING PURPOSES, PLEASE. FIRST, TRY TO USE FASTBOOT TO BOOT THE boot.img FILE WITHOUT FLASHING: IF IT BOOTS GO AHEAD AND TRY THE OTHER FILES (fastboot boot boot.img). THE TWRP IS NOT AS STABLE AS THE OTHER ONE HERE AT XDA BUT ALLOWS TO USE ZIP COMPRESSION IN BACKUPS. I AM NOT GONNA BE AROUND. IF YOU TRY SOMETHING MAKE A BACKUP FIRST. THIS DEVICE IS MESSY AS F*CK.
Spoiler: Some old info here, but maybe useful
I wrote a very detailed guide about these files I uploaded to my Nextcloud that include the newer TWRP-3.0.2, a TWRP flashable Cooked ROM and a separate kernel (boot.img) in case your system is already setup, but the post went to some XDA void and didn't upload. These are based on the YT3-X90L latest firmware, but they work on the X90F model too. The TWRP should work with Lollipop and Marshmallow firmwares.
I can't write everything again, so, the kernel contains better management of RAM and emmc (internal) memory, a 256 MB zRAM space instead of 512 and a more conservative approach to LowMemoryKiller.
The cooked ROM includes the described kernel and debloated apps, it's already rooted with Magisk (you can unroot with Magisk Uninstaller), an updated Busybox build, su.d support (I plan to use it with AFWall+), zipaligned apps, etc. It is for the X90L but possibly works for the other Yoga Tab 3 Pro models. It works for the X90F but it will reboot once after the first boot because the RIL configuration times out. To install the cooked ROM you need to:
0) Know that by doing this you will loose pretty much everything in your tablet. You start from scratch if everything goes smooth, if not you could possibly end up with a system without an OS. The usual stuff when you are customizing your system.
1) Boot into TWRP and make a Nandroid backup. IT IS IMPORTANT because @joesnose had problems with a "random reboot" and lost Bluetooth/WiFi after it. I am trying to look into this. The only difference is his tablet has 4 GB RAM and probably a different firmware.
2) Wipe cache, Dalvik/ART, System and Data in TWRP - Wipe, Advanced Wipe menu. If your tablet is encrypted, or in factory firmware you also need to explicitly use the button "Format Data partition" and confirm writing "yes" in the format procedure prompt. You will loose any configuration made to your tablet.
3) Install the superr_stockMM.zip wich is flashable by selecting the file from your Internal tablet memory, using the Install button in the main TWRP interface.
FOUR IMPORTANT NOTES TO COMMON ISSUES:
If you come from a stock firmware your data partition is encrypted. You need to pass a blank password in TWRP to continue to use the custom recovery. You also need to format data partition before flashing the cooked ROM.
If your tablet is WiFi-only I strongly suggest that you modify the line "ro.lenovo.tablet=3gdata" to "ro.lenovo.tablet=wifi" and add the line "ro.radio.noril=true" to your build.prop file in /system. To do this you can use the section Build.prop Editor of the Kernel Adiutor app or you can do it manually if you have already a method to modify system files. In Lollipop firmware you use "ro.ril.disable=1" instead of "ro.radio.noril=true" to get the same effect: sort of a conversion to WIFI-only tablet from LTE models. I'd argue this is useful to do if you are gonna be without LTE connection/service for long periods of time and I can think a couple of other uses.
Do not use stock Lenovo launcher unless you uninstall Magisk... they are incompatible for reasons I don't care to know and the Launcher will constantly FC (it is a pain in the arse).
If you are still expecting better performance I am sure there are some tweaks left in RAM management but it wont go too much further in 2 GB devices. Instead, you may consider to lower your display resolution and pixel density to something reasonable as 1400x2240 or even 1200x1920 maintaining the same aspect ratio. To do this you do not need to have root but you need to interact with the tablet using ADB. First change the size of your display:
Code:
adb shell wm size 1400x2240
Then adjust your density:
Code:
adb shell wm density 260
If still is not enough you can go even further with 1200x1920 and 224, use the same method to go back to stock with 1600x2560 and 300 to 302. This won't need a reboot but will probably cause an inconsistent UI that will lead to FCs and random reboot. You can just reboot after applying these tweaks. Unless you are really sight-gifted you won't notice a lot has changed but you will be dealing with 2.x Mpixels instead of 4.x Mpixels and that will help with your overall performance as well as your battery life sacrificing a pixel count that most of the people wouldn't even notice. If you did this correctly, in the next boot sequences you'll notice an offset on the Lenovo orange logo.
It is important to say that your display supports 1600x2560 pixels physically, but I'm assuming the GPU has no dedicated RAM and uses the device's, so, by reducing the quantity of pixels the GPU needs to deal with, the pressure on the device's RAM is also reduced.
EXTRA TIP: If boot annoys you just delete /system/media/boot.wav, bootanimation.zip and shutdownanimation.zip and you'll get a silent boot and the generic android boot animation.
Hope you enjoy your tablet!
TWRP-3.0.2.0- BETA: Again, this is not a flashable zip. Uncompress first and test the recovery system using "fastboot boot twrp_yt3-x90f_beta.img". If everything works for you, you may want to flash it permanently rebooting to bootloader and flashing with "fastboot flash recovery twrp_yt3-x90f_beta.img". Remember I did not test this in Marshmallow yet.
FEATURES:
- Fixed RAM issues (swapiness 10, vfs_cache_size 50 and disabled dynamic low memory killer tweaks and minfree values).
- Reduced zRAM size to only 256 MB.
- Tweaked interactive CPU scheduler to use other than min and max frequencies (but still responsive). The tweaks are based on the Advanced Interactive Governor Tweaks Guide. This may save battery life.
- Max frequency capped to 2.08 GHz (this is not great if you are a gamer). This tablet throttles when using max frequency for a long time, so, to save battery and keep it cooler I tweaked the CPU to run slower.
- Tweaked I/O schedulers to use deadline governor and read ahead cache to 640 kb (used benchmarks to get to this value).
- Force encryption disabled (to avoid applying ionioni script after flashing). Still needs to format data partition. You can encrypt your data partition later through Configuration -> Security user interface.
- Implemented native init.d support (not su.d anymore and no need to root the main OS).
- Busybox updated.
- Rooted with Magisk by default ( you can use Magisk uninstaller to unroot).
- Debloated apps. I also deleted Lenovo User Experience Program which was asking for root privileges even when you don't opt in to the Lenovo UE Program at setup wizard. I find this behavior shady.
-Multi-window mode is available in Developer Options and needs to be activated by you. In this mode if an app is compatible with multi-window mode you can double-tap on its title bar to enable Window mode. This function was more transparent in Lollipop firmware but it is still there in Marshmallow firmware if you change the build type to userdebug instead of user in build.prop (that's how I enabled it in the Cooked ROM).
- There are also other tweaks in VM and KSM.
And that's it, I'm not trying to change a lot, only the fundamental issues. But I suggest some other tweaks up there.
Such a shame. I love my Yoga Tab 3 Pro. Great hardware. But the software. Thanx anyway for your work.
Very nice write up. Thanks.
joesnose said:
Very nice write up. Thanks.
Click to expand...
Click to collapse
You're welcome. Thanks to you, while learning about this hardware your username pops everywhere.
jahfaby said:
Such a shame. I love my Yoga Tab 3 Pro. Great hardware. But the software. Thanx anyway for your work.
Click to expand...
Click to collapse
It really, really sucks. Let's hope something interesting happens after these strange and recent updates.
CENTSOARER said:
V1: The zip name boot_mod_mm.zip is based on the latest boot IMG provided by Lenovo. You need to first uncompress and flash it using fastboot (this is not a TWRP flshable zip). If you are uncomfortable flashing, you can test it only by issuing "fastboot boot boot_mm_march20_mod.img" once uncompressed, or, if you feel fine using it you can flash it permanently by using the command "fastboot flash boot boot_mm_march20_mod.img". This boot IMG will only work with Marshmallow firmwares in both YT3-X90(FL).
FEATURES:
- Fixed RAM issues (swapiness, vfs_cache_size and low memory killer tweaks).
- Reduced zRAM size to only 128 MB.
- Tweaked interactive CPU scheduler to use other than min and max frequencies (but still responsive). This saves battery life.
- Max frequency capped to 2.08 GHz (this is not great if you are a gamer). This tablet throttles when using max frequency for a long time, so, to save battery and keep it cooler I tweaked the CPU to run slower.
- Tweaked I/O schedulers to use deadline governor.
- Force encryption disabled (it's unnecesary to apply ionioni script now). Still needs to format data partition. You can encrypt your data partition later through Configuration->Security user interface.
Click to expand...
Click to collapse
Thanks for this. Going to take it for a spin.
joesnose said:
Thanks for this. Going to take it for a spin.
Click to expand...
Click to collapse
Please, please provide feedback and don't forget to wipe caches.
alquez said:
"No news here. All capable people interested on developing for this device are all done with Lenovo and their attitude against Open Source. Don't expect your situation to change."
https://github.com/intel/ProductionKernelQuilts this repository containts patches necessary to create base 3.14.55 and 3.14.64 uefi/cht-m1stable kernel tree. The same tree that was butchered by Lenovo in their OPEN_SOURCE "release".
Check this file https://github.com/intel/ProductionKernelQuilts/blob/master/uefi/cht-m1stable/ChangeReport.md and the WW24 part in the "YT3-X90F_ENG_S100265_1601281130_WW24_ROW" will become more clear
Quilt manual: https://elinux.org/images/7/74/Maintaining_Multiple_Android_Linux_Kernels_at_Intel.pdf
If someone would be looking for a good piece to start: the best would be to recreate 3.14.55 or 3.14.64 from the quilts, use the x86_64 defconfig and build a kernel which can be booted. In order to test this, the best solution is to repack TWRP with the new kernel and do "fastboot boot" without flashing, until it boots and the touch screen is working. There's no other way i'm afraid.
I have prepared complete photo documentation of UEFI Bios, i can share, currently moving to different google photos account. Its over 300 photos.
Please, set up a Discord channel if you want to proceed. The first month will be quite boring and daunting because it's going to be build -> repack -> boot -> rant
Click to expand...
Click to collapse
In my defense, when I wrote that sentence was after taking a peek on your github profile, I figured you were just done with the Yoga Tab 3 Pro. I am really, really glad you're still trying and I recognize you are very capable of changing things for this device. I appreciate the sources you link but I am afraid I am useless as a developer, partly because of a lack of time and partly because of a lack of adequate training. I will try to help as much as I can, though. Thanks for the post.
alquez said:
No worries, however if anyone is interested how to actually crunch this one: we have a working prebuild kernel which can be pulled of boot image, and we have a working TWRP, however it looks like TWRP wasn't actually built from source, but cooked using android kitchen so we're still missing a device tree, which in my opinion is a good place to start, because you can use prebuilt kernel to build recovery and lineageos/aosp (it's deprecated but we're talking about android 6 aka cm-13.0/lineage 13.0). If I can create a most basic device tree which is capable of building recovery from scratch useing binary kernel and modules, i'd say were' good, because the next part would be adding more binary blobs from the official software, and we can skip the kernel source part for now until we have lineageos build 13 working). I started experimenting on xiaomi latte tree because it wasnt split like Z00A. It's not gonna be a proper port but it should work from now (i think)
@joesnose did you cook or compile TWRP? It's important
Ok, I'm at the stage i have two folders. The one is unpacked working TWRP, the other one is unpacked compilation i'm building, which means im able to build TWRP from source with binary kernel, but it's not working yet. The goal is make the left one look like the right one by adjusting various parts in BoardConfig.mk and copying files.. If someone has right partition sizes for BoardConfig.mk that would be really helpful, the values i calculated suck and don'y boot yet
Click to expand...
Click to collapse
Uhmmm, I've been there and took some notes with some "GNU shell Fu". What sizes are you using right now?
And regarding the WW part of the name I've noticed the recent updates are marked as WW17 opposed to WW28 which was the latest stable with any changes. Any idea why Lenovo used WW17 to update the Yoga Tab 3 Pro recently?
alquez said:
update, ive managed to boot vanilla android-x86 x64 6.0.1 build without touching the kernel yet and different TWRP (3.1.1.0) with kernel swap
Click to expand...
Click to collapse
Geez, I was excited because I read Ubuntu booted on this hardware but then I realized it was the Yoga 3 tablet but not the Yoga Tab 3, goddamnit. Keep up the good work!
alquez said:
Um Ubuntu 20.04 boots with working accelerometer so the screen rotation works + wifi, and probably audio i forgot to play youtube video, the stuff missing is battery, touchscreen and projector.
To test it you need to connect a usb hub using usb otg, put ubuntu and a keyboard in the hub, boot, and press f2 really fast if you haven't enabled slow boot yet. You can even boot
Xubuntu to ram and remove flash drive. It's a pc architecture after all and most of the processor related stuff is in the linux mainline since 4.11
Recently i was checking why the Windows 10 installer crashes on ACPI Error.
Click to expand...
Click to collapse
Oh, I will have fun doing this kind of stuff at the end of the year. It must run swiftly with i3, provided you won't get touchscreen support.
alquez said:
Geting TS and a battery running is a mandatory, the next is the projector. The rest is pretty much working. I'm building generic celadon x86 atm and the beast is huge it's like 18% now after two hours on -j8 on i7. Maybe we can give this old monster a new life
edit:
And i need to add 480gb drive ;/
Code:
/dev/sdc1 229G 210G 6,7G 97% /home/android
Click to expand...
Click to collapse
I am afraid those are the peripherals that will keep you in 3.14.55/64 Linux, at least for a while , unless you know something more (wouldn't be surprised).
Are those GB for source code or for cache? Both? Jesus... the thing is huge but reading the unpacked boot.img makes much more sense now.
It was ionioni who made the twrp for the device. I dont have the foggiest how he did it.
---------- Post added at 01:23 AM ---------- Previous post was at 01:18 AM ----------
Wow! I missed lot, looks like you have made some serious progress here. very well done.
alquez said:
I contacted my friend and he told me to compare these two folders:
https://github.com/alquez/lenovo_yt...l/cht/arch/x86/platform/intel-mid/device_libs
https://github.com/torvalds/linux/tree/master/arch/x86/platform/intel-mid/device_libs
the new files in "lenovo tree" are the modules we're after, mostly and it's a place to start
I need to ask inioni about twrp.
Click to expand...
Click to collapse
I will guess it was ported from the Yoga Tab 2. I will edit this post soon.
alquez said:
Nice! There's big chance the modules are reused somewhere. We can compare these. I think the two folders in
https://github.com/alquez/lenovo_yt3_x90_osc/tree/master/kernel/cht/drivers/input/touchscreen
which are missing from vanilla tree are two separate drivers and one is for "any pen" driver. Can you ask someone porting modules recently
to help us refresh my memory
[edit]
I've got in touch with TeamBliss of BlissRoms , they are working on cherrytrail tree
Click to expand...
Click to collapse
Nah, I couldn't confirm it was ported. A lot of posts were removed when XDA enforced the GPL measures to its developers.
About BlissRoms, it just makes sense they are working on Cherry trail. I hope you and those guys can achieve something soon. I mean, it's a 2 GB RAM device but the display, projector and dolby audio system are worth for a better fate than Lenovo's plans.
alquez said:
4GB of ram 4 cpu cores, Hardware virtualization support, fast gpu and fast emmc memory. It's a beast, way ahead of it's time.
Click to expand...
Click to collapse
Well, I have the 2 GB RAM model, so my expectations are conservative. Anyway, don't believe I'm a hardcore user, so it's plenty enough for me, considering I won't even flash Google apps. I am now settled with Lollipop, since I need apps not getting killed by damn Doze. It is a shame how OEMs can limit a device like this one. Crond, init.d, bad zRAM, shell, even busybox... frequently the OS is crippled. I read somewhere Doze can be disabled in build.prop or something but one thing I just hate is the recents screen in Marshmallow firmware (my God, is terrible!) and can't be easily changed for something like OmniSwitch. I mean, for a mobile device you have an unusual architecture, why limit it further? Damn, I wish BlissRoms come up with a working build.
Hey, @alquez, have you tried Linux 5.7 on the tablet? I saw this article and seems like the touchscreen may work with the next mainline kernel release. I mean, right now is on RC7, should be stable enough to compile and try (I'd try it, but can't get to my workstations thanks to the virus).
EDIT: Ah... I was looking into my device and it comes with a HiDeep touchscreen (cat /dev/input/event3), the linked news is for the Goodix driver / devices. At least, I guess, it will attract others to this platform... anyway, I was wondering and also confused, shouldn't touch screen work with the hideep driver using this config already?
Thanks for the new feel.
This is great, glad to see a developer picking up this tablet. It's a fine machine with an unfortunately small user base and has never really seen any development apart from ionioni s efforts and he didn't even own one, lol.
Edit: *Thank for the new twrp * auto correct!
I love this device! For me it's the perfect device for vacation just because of the projector!
I am so happy that you guys are working on it again. the ram and display tweak works like a charme for me. Had to reset my background screen though
thx for all your help. As soon as you guys have light rom, i'll install it on my 2GB device.
hello how to flash your twrp please ?
can someone upload adb drivers for the yt3-x90f please ? because i try to flash in dnx fastboot mode but commands don't work, even "fastboot devices" don't show me the yoga tab 3 pro

Categories

Resources