[ROM-Patch] Defyluks: System encryption for the Defy(+) with CM7 - Defy Android Development

Defyluks - System encryption for the Defy(+)​
Warning: This patch is only intended for people who are familiar with Linux and LUKS and know what they are doing. I take no responsibility for any damage whatsoever resulting from using this patch.​
Before applying this patch, I strongly recommend making a full backup of your device. Uninstallation is currently not supported, excepting via flashing back the Stock-ROM via sbf-flash and redoing everything.
Last update: 2012-12-02
== Motivation ==
Until now, there is no working solution for encryption the internal data partition and sdcard of a Defy(+). In theory, Android 3.x+ provides such a possibility, but (afaik) all currently available builds of CM9/CM10/CM10.1 etc. don't implement this feature yet. Apart from that, many users of the Motorola Defy share the opinion that Android 2.3 is more suitable for the device than Android 4.x due to a smaller memory footprint etc. Even in case the standard Android encryption shall become in newer CM releases in the near future, having an alternative for CM7 might be still desirable.
One general problem of the built-in encryption in Android 3.x+ is also the fact that you can't move the data partition on the sd card. In case of hardware damage, you don't have the possibility to pull out your data and send in the device for repairs. Also, you cna't easily mount the data partition from others systems using existing tools like LUKS for Linux or FreeOFTE in Windows.
== Related projects ==
There are a few related projects, but they only work for other devices like the HTC Wildfire or the Nexus One:
LUKS/LuksApp (https://github.com/guardianproject/LUKS)
Luksunlock (https://github.com/guardianproject/luksunlock)
Yaffsunlock (https://github.com/scintill/yaffsunlock)
== What does this patch do? ==
First of all, the patch adds a few new components to CM7:
- the cryptsetup binary (taken from GuardianProject's LUKS porting project)
- kernel modules which provide support for ext4 and jbd2 (taken from Quarx2k's custom kernel for CM10)
- a modified init.rc which is based on the one provided by CM7.2-stable (warning: it replaces the existing one!)
- (temporary) a sample encryption key
After installing this patch, the existing internal data partition in the mtd flash will be ignored during bootup and not mounted anymore! Instead, an encrypted data partion from the sd card will be used.
== Status ==
The patch is currently under heavy development. The current version 0.1 is intended only to give a first preview about this development. Currently, the patch only provides a rudimentary security enhancement in case the hardware breaks, not in case of theft (see the open TODOs below). The performance impact is high for write operations, but negligible for read operations, see the attached benchmark.
== Requirements ==
- Basic knowledge about LUKS
- rooted Defy with CWM and CM7.2-stable
- microSD card in your Defy
== Installation ==
Step 1: Create a key (on your desktop) which will be used for the encryption later on:
dd if=/dev/random of=lukskey bs=1 count=32
Step 2: Mount the sd card externally (via adapter or from CWM) and repartition it. In the following, I assume that the sd card is available as device /dev/sdb. Here is how to repartition it:
/dev/sdb1: the existing FAT32 file system (you can shrink your existing one)
/dev/sdb2: a new partition with fs type (82)
Step 3: Encrypt the second partition of your sd card with the key you created previously:
cryptsetup -c cipher=aes-cbc-plain luksFormat /dev/sdb2 /path/to/lukskey
Step 4: Crypto-mount the partition and create an ext4 fs on it:
cryptsetup --key-file /path/to/lukskey luksOpen /dev/sdb2 encrypteddata
mkfs.ext4 /dev/mapper/encrypteddata
cryptsetup luksClose /dev/mapper/encrapteddata
Step 5: Replace the keyfile in "system/etc/lukskey" in the supplied defyluks.zip archive by your key (that is: unpack the archive, replace the key, pack the archive again)
Step 6: Install the previously packed defyluks.zip archive via CWM on top of CM7.2-stable and boot your device.
== Version history ==
0.1 (02.12.2012): First pre-release
== TODOs (sorted by priority) ==
- cleanly luksClose the mounted data partition in order to prevent data loss
- allow for key entry via some minui (the hardcoded key does not really enhance security greatly. Of course, if someone steals only your sd card but not your phone or if your hardware breaks and you have to send it in it already helps, but apart from that?)
- support loopback-devices on top of the existing vfat filesystem on the sdcard (remove need for repartitioning the card)
- support a more secure cipher like aes-cbc-essiv (the Defy stock kernel lacks support for that, will have to add the proper module)
- make the installation process much easier (i.e. by providing a setup ui like LuksApp does)
- enhance the documentation (provide a real user manual)
- allow for using the internal nand flash (I see some cons here, but okay maybe some people still might want that)
- support other file systems like yaffs2 (does not make sense on sd card, but surely does when using the internal nand flash)
- encrypt the rest of the sd card as well
- support further Defy-ROMs
- replace the precompiled binaries by self-compiled binaries
- replace the current build script (a cruel hack) by a real build system
- support other CM7.2 devices
- make the first bootup faster (currently takes aprox 3 minutes)
Any feedback is warmly welcome!

Related

The Ultimate Guide to put Hero Builds and other Builds to your G1/Magic Android

The Ultimate Guide to put Hero Builds and other Builds to your G1/Magic Android Phones by hellogadgetman from Greece
or download from here for best structure and more
http://rapidshare.com/files/2522727..._Builds_and_other_Builds_to_your_G1_best.docx
for ROOTED Phones
I have no responsibility for mistakes and problems through this guide
1) Find your SPL and Radio Versions
• Radio
o Next you will want to confirm your Radio Baseband.
To Confirm this Press Menu - Settings - About Phone - Scroll down till you see Baseband version.
Compare the Baseband value to the value below to see if you are using the correct radio for your build or if you need to update.
o You will need 2.22.19.26I
• Currently there are three SPLs available. The G1 variant is the SPL that is installed in stock T-Mobile G1 phones. The Engineering variant is found in the Android Dev Phone 1. Finally, the HardSPL is a modification of the Engineering variant by cmonex, with additional hacker-friendly functionality.
• HardSPL
• VER: HSPL10.95.3000
• HardSPL is a modification of the Engineering SPL by cmonex. In addition to the functionality of the Engineering SPL, HardSPL also allows NBH files to be used without matching the CID (carrier ID) check.
• Engineering SPL
• VER: HBOOT-0.95.3000
• The Engineering SPL is a custom SPL installed in devices intended for Android development. It has existed since before the launch of the G1 and is now available to the general public as preinstalled on the Android Dev Phone 1.
• G1 Original SPL
• VER: HBOOT-0.95.0000
• This is the original SPL which is installed in a stock G1. It is easily distinguished by the "trademark" red-green-blue bootloader screen which appears in many HTC phones. This SPL does not support the fastboot protocol and thus will not allow the user to flash nand backup images.
2) Update the Radio to the Latest
• Download the Radio zip.
• http://android-roms.googlecode.com/files/ota-radio-2_22_19_26I.zip
• Rename it to "update.zip".
• Copy it to the root of your phone's SD card.
• Turn your phone off.
• Start up in recovery mode by holding Home and pressing Power.
• Press ALT+S to apply the update.
• Once the update is applied press Home+Back to reboot the phone. The Phone will start to boot up and then continue applying the update. Once this is completed the Recovery menu will ask you for the second time to reboot the phone via Home + Back
3) Update the SPL to the Latest
IF YOU HAVE ONE SD CARD:
• Upload new SPL on your microSD and rename to "update.zip"
• Reboot your phone into recovery mode. I ASSUME YOU MEAN HOLDING POWER AND HOME BUTTONS>>>RIGHT?
• THIS IS IMPORTANT (perform a nandroid backup, of course) APPLY THE UPDATE USING ALT-S..., and once complete DON'T DO ANYTHING.. read step 4.
• WITHOUT PRESSING ANY BUTTONS remove your microSD card from your phone, and plug it into your microSD card adapter/SD card reader
• Remove/rename the SPL update (to something other than "update.zip") and upload the update file of the build you are currently using onto your microSD card. Put your microSD card back in your phone AGAIN WITHOUT PUSHING ANY BUTTONS I KNOW THIS IS STUPID, BUT WE RENAME THE BUILD TO UPDATE.ZIP AS WELL
• Press Alt + x to go to the console. If your phone does not reboot automatically, press enter, type "reboot recovery", then press enter again.
• If you boot up in recovery, you have done everything correctly. Now APPLY THE UPDATE USING ALT-S, reboot, and you're done
4) Performing a NANDROID Backup
At this point you should backup your phone via NANDROID
1 Turn your phone off.
2 Hold Home, press Power button to boot into Recovery Mode
3 Press ALT+B to start the backup.
4 Once the backup has completed press Home + Back
Next your phone will reboot and load the OS, at this point you should copy the files your just backed up to your PC incase you need to recover your phone
1 Mount your SDCard to your PC
2 On your SDCard change to the nandroid/HT840GZ30985
3 Inside this folder you will see another folder the first 8 digits of this folder name is the date it was created in the YYYYMMDD format and the last four are the time.
4 Copy this entire folder to your PC and save it. As you make more backups to your phone repeat this process.
5) Format your sd card to Fat32 and Ext2/Ext3 Partitions
• Install the sdsplit executable to your phone. To so this, open the 'terminal' application / ADB Shell and type the following commands at the prompts:$ su
# cd /data
# wget http://64.105.21.209/bin/lib/droid/sdsplit
# chmod 555 sdsplit
# exit
• Decide the size of your FAT partition:
You should use one of two approaches to decide the size of your FAT partition. The first one involves simply directly deciding this size (i.e. I want a 5G FAT partition). In this case, the EXT2 partition will be the remainder of the card.
size_of_fat_partition = size
The second method is based upon the fact that you want to decide the size of the EXT2 partition and would like the FAT partition to be the remainder of the card. In this case, the size of the FAT partition will be based on the size of your sdcard and the size of the EXT2 partition that you want. Use this formula to calculate it:
size_of_sdcard - size_of_ext2_partition = size
So, if you have an 8GB sdcard and want 1GB of space for apps on your EXT2 partition, use 7000M for the FAT size.
No matter which method you use, you will need to specify either bytes (no parameter), kilobytes (K) or megabytes (M) . So, for a 5G partition would use a 5000M size parameter.
Note: The size parameter is currently case sensitive, use 7500M, not 7500m!
• Backup your SDCard onto your PC
Note: To figure out how much data (in K) you have on you FAT partition, you can type the following in your terminal / ADB Shell (the sdcard can not be mounted for this cmd to work):
$ du -s /sdcard
Note: to find out how much free space is left on your /data partition type (see available)
$ df /data
• Run sdsplit. Use the size from step 3 below (do not forget the "M" in size if you are specifying megabytes): (Note: you will need an internet connection on your phone for this step)
Note: If you are using the JF1.5 update, you should put a -nc at the end of the commands below since system configuration is not needed!
Non JF1.5 Build:
$ su
# /data/sdsplit -nd -fs size
# exit
JF1.5 Build:
$ su
# /data/sdsplit -nd -fs size -nc
# exit
Please, remember to record the output of this stage if you run into a problem. There will be a permanent record of it in, /data/sdsplit.log.
• Reboot your phone, via terminal:
reboot
• Restore your data from your PC to your Fat partition of your SDCard.
• You're done! You should have two partitions now on your sdcard. The FAT one mounted at /sdcard and the EXT2 one mounted at /system/sd.
6) Put the Cyanogen Recovery image 1.2
http://n0rp.chemlab.org/android/cm-recovery-1.2.img
To install raw image: copy it to your sdcard and run from a terminal:
flash_image recovery /sdcard/cm-recovery-1.2.img
It is suggested to fully shutdown the device and power it back up.
Check Recovery IMG by rebooting phone and pressing Home + Power to see the new Recovery IMG
If you have problems with a "no space on device" error, try using fastboot and erasing first:
fastboot erase recovery
fastboot flash recovery cm-recovery-1.3.1.img
7) Upload JACHero 2.2.3 or any other to sd card and rename them as update.zip
8)Last steps to finalize
• wipe
• run apps2sd from recovery image menu
• then run fix filesystems
• then run update.zip
• then run apps2sd from recovery image menu again
• then reboot
• when phone reboots, give it about a minute after the screen comes on and chose deny on swapper in SU permissions pop up.
• then go thru the setup for gmail and android..
• after you get logged in to everything, do your settings for backlight and whatever else,
• then go to programs and do the swapper settings -
• SWAPPER SETTING:
/system/sd/swapfile.swp
Change swapper size
i did 20mb / 32mb ( i think thats right )
• then reboot ( after Gmail has finished syncing your contacts )
• when it comes back up choose always allow on swapper ( in su permission popup )
• then do you market and flickr( disable wifi for a sec ) to accept the terms..
• then give it a few seconds, and in about 1 min the phone will be running faster like cupcake
Many thanks to JACHero,Cyanogen,Robpet2,Jesus Freke,Jon Pezz, xmoo, Haykuro, Stericson, dapro, The Dude, Darkrift, and many others!
very nice guide thank you...also very nice guide structure
gonna try this and see if i can really get this to run as fast as cupcake
Just a side note;
Http://twistedumbrella.googlepages.com/index.htm
The guide there has all the resources loaded to the site already and no longer requires you to have to use fastboot because the recovery there has restore built in.
pretty good guide...but this has nothing to do with porting builds -- only installing builds that have already been "ported"
porting (in the context you used it) means to change a build to work on another system / device:
http://en.wikipedia.org/wiki/Porting
also...Recovery 1.3.1 is the latest and greatest
cheers
alapapa said:
pretty good guide...but this has nothing to do with porting builds -- only installing builds that have already been "ported"
porting (in the context you used it) means to change a build to work on another system / device:
http://en.wikipedia.org/wiki/Porting
also...Recovery 1.3.1 is the latest and greatest
cheers
Click to expand...
Click to collapse
I know but 1.2 Cyanogen has Apps to sd and fix filesystems
alapapa said:
pretty good guide...but this has nothing to do with porting builds -- only installing builds that have already been "ported"
porting (in the context you used it) means to change a build to work on another system / device:
http://en.wikipedia.org/wiki/Porting
Click to expand...
Click to collapse
Yes, the title of this post is rather misleading. I was expecting a guide to porting. This is a well organized collection of instructions to prepare your phone for most modern builds, and will surely be useful to some, but the title should really be changed to better reflect the content of the post.
hellogadgetman said:
I know but 1.2 Cyanogen has Apps to sd and fix filesystems
Click to expand...
Click to collapse
1.3.1 does too, but much like fix_permissions its executed through concole instead of menu
If someone made the guide please post his thoughts
Thanks
Anyone or better None
thanx for your instructions!
and, is the Cyanogen Recovery Image the necessary part for flashing Hero roms on G1?
thanx again.
thanx for your instructions!
and, is the Cyanogen Recovery Image the necessary part for flashing Hero roms on G1?
thanx again.
Very good, indeed.
EDIT:
What happens if you miss a step, but still able to flash the latest 2.3.5 hero rom? (Following these steps reduces the lag?)
That's what exactly what I did:
1. I already had the latest radio update (so I didn't bother downloading again)
2. I installed latest SPL, renamed it to "update" in my sd card, turn off phone, turn-on phone (HOME+END button), hit ALT+S.
(I don't have a SD card reader yet.....but I have another phone (T-Mobile Wing), I removed SD card from G1, put it in T-Mobile Wing, opened folder where SD card is, and deleted "update" (SPL file), rename the 2.3.5 HERO rom to "update", took SD card out of T-Mobile Wing, put it in my G1)
3. Turn on G1 (HOME + END), wipe (ALT+W), then flash (ALT+S)
(Waited until it installed new hero ROM, it was installed, then I went to swapper application and changed settings to " /system/sd/swap.swp "
That's it.
I already had partition my SD card before doing this update. I dont know if it's necessary to do it again.
My G1 is working, and I have 72MB free space in internal phone storage (so far).
My question is:
Do I need to follow these steps to make the rom work better? To allow my apps go to my SD card (like it was before).?
By the way, I installed the OVERCLOCKWIDGET app from market and it won't open. (Launch Error, "Overclockwidget (need root) could not be launched")
Any inputs would be greatly appreciated.
Then I wipe, flash new ROM.
ss1271 said:
thanx for your instructions!
and, is the Cyanogen Recovery Image the necessary part for flashing Hero roms on G1?
thanx again.
Click to expand...
Click to collapse
Yes if you want to be a fast Hero ROM
jay22are said:
very nice guide thank you...also very nice guide structure
gonna try this and see if i can really get this to run as fast as cupcake
Click to expand...
Click to collapse
if it is let me lnow to make the change to hero
FAILURE to install
I followed your guide exactly but when I was flashing the hero update an error came back
"E: Cant't chown/mod /system/xbin
(no such file or directory)
E:Failure at line 14:
set_perm_recursive 0 2000 0755 06755 SYSTEM.xbin
Installation aborted."
Any suggestions???
NVM. Problem fixed. had to download the following spl
https://www.digital-bit.ch/g1devel/6.0-spl-signed.zip
Alt+M (apps2sd option) isn't showing up in v1.3.1
Anyone have any idea why Alt+M (apps2sd option) isn't showing up in Cyanogen's Recovery Image when all the other options that were updated in 1.3.1 are?
twistedumbrella said:
1.3.1 does too, but much like fix_permissions its executed through concole instead of menu
Click to expand...
Click to collapse
Thats the reason I put in my guide the 1.2 Cyanogen recovery
DirectMatrix said:
Anyone have any idea why Alt+M (apps2sd option) isn't showing up in Cyanogen's Recovery Image when all the other options that were updated in 1.3.1 are?
Click to expand...
Click to collapse
app2sd is automatic in version 1.3.1, but that's for new apps installation.
All the hero roms (at least that i know) require not the recommended "HardSPL" but Haykuro's updated SPL
This guide is very misleading esp since you bascially c/p from the other posts.
Dont take it personally, but it really needs to be cleaned up
B-man007 said:
All the hero roms (at least that i know) require not the recommended "HardSPL" but Haykuro's updated SPL
This guide is very misleading esp since you bascially c/p from the other posts.
Dont take it personally, but it really needs to be cleaned up
Click to expand...
Click to collapse
But this is the point of somebody who has to read over 500 posts to understand to have all the things straight away.
I have used it and it is fine and some others also ...(over 100 downloads of the document)
Thanks

[Android on Omnia II-GTI8000] - [ROM] - [PORTING] - [FROYO 2.2.2] TWISTER v.2 ROM

Twister Team (Frenkie99999999&Spiderman1961) is glad to present:
​TWISTER 2​
​
Credits to:
almar (Marc)
bsbsbs (Sándor)
Egon
phj (János)
Voyteckst
Frenkie99999999999
kukafei
Linuxsigh
Argentinos
ROM is based on Android 2.2.2 Froyo. I applied code tweaks and improvements to make it more performant and smooth​ROM is free from malfunctions: the system is smooth; any lag will be due only with apps installation not fully compatible or incorrect installation procedure​Android on OMNIAII is a safe bet won thanks to the efforts of many who have worked tirelessly and pure passion: to complain about minor inconveniences is misplaced. You can not expect perfection from our terminal that even natives Android devices have​​
Changelog:
General improvements:
-New Bootanimation by Twister Team​-Trasparent Status Bar​-JelMiBean Theme: new icons, new wallpaper, new buttons, new battery iconsa and so on...​-Locked Launcher in memory by script (disable option in Spicagenmod settings and in launcher settings​-New themed System Apps​-Playstore updated v 4.1.10​-Quick Pick update v. 2.9.4​-AdAway: no ads​-Camcorder shorthcut​-FlashPlayer​-Miui Music Player​-MxPlayer​-Toggle2G to save battery drain​-GApps for CM6 (CarHome, Facebook, Gmail, Latitude, Luoghi, Maps, Navigatore, Genie Widget, GoogleSearch, VoiceSearch, Talk, Twitter)​-Bravia Engine: increased video sharpness​-Xloud Engine: increase loud sound and virtual effects​-New progress bar colour​-Jelly Bean font​-New Kernel: 2.6.32.9 [email protected]​-New Sound system​-New Dialer​-New and hacked MMS.apk: no automatic mms conversion after 4 sms; recipients up 200​
Code improvements and Tweaks:
-Supercharged with adapted zeppellinrox script​-Improved real Mutitasking with "Low Memory killer balanced script": DON'T USE TASK MANAGER TO KILL APP (ONLY IF REALLY NECESSARY)​-Improved automatic detailing databases on boot: better speed and smoothness​-Improved Zipalignin and fixpermission apps on boot: no FC, better battery drain and ram​-Build.prop modified​-Tweak battery for better drain​-Improved VM Tweaks​-Improved read ahead cache up 2048 kb: better speed access data​-Cache flushing on boot​-Better scrolling and touchscreen responsiveness​-Disabled Zram compression: not friendly for our device​-Tweaks for better smoothness​-Network data tweaks for fastest 3G​-Best Dialer responsiveness: fix delays and black screen issue​-Improved photo and video recording​-Kernel tweaks: better I/O and governor settings without random reboot​-Ext4 smart mounting (noatime, disable barrier etc): better speed disk access​-Sysctl tweaks: minor lags​-Automatic screen state scaling​-Better Network Throughput​-GPS issue (only for any users): no thirdy part apps for fix! First fix on my moving car: 3 min. Other fix few seconds​-Video Recording A/V Sync for CM6 removed: crashing video recording​-Both Cameras and VideoCameras working: added VideoCamera shortcut. Use it for videocamera and your apps don't crash​
Credits to:
Moonguy75
Costinuz32
knzo
ImbaWind
zeppellinrox
What's working:​-Audio​-Receiving and making calls​-GPS​-Compass​-Proximity sensor​-Wifi​-Bluetooth​-USB mass storage​-Cameras​Partially working:​-Reset data​​Not working​-Update Binary Superuser​-Theter wifi​
SCREENSHOT PREVIEW​
​DOWNLOAD LINK​
​
​Part 1​Part 2​
After download unzip with 7zip: you will have a folder with all necessary for installation: rom, kernel, haret.exe, startup.txt...​
ROM IS SET ON ITALIAN LANGUAGE: TO CHANGE IT GO TO "IMPOSTAZIONI/LINGUA E TASTIERA" AND CHOOSE YOUR LANGUAGE​
​
Installation instructions
First some considerations:
A. Porting Android on Omnia (born for WinMobile 6.5) is a pure gamble: to complain of minor malfunctions, claiming a perfection that there is not even on the native device is totally out of place.
It's part of game: in almost all cases, these small hitches, which does not at all preclude the daily use of the terminal, are solved with a simple reboot.
B. Please follow the installation procedure to the letter, without neglecting any detail, otherwise block the installation or malfunction with lag and other troubles of the terminal.
C. The installation must be done with telephone SIM and microSD inserted!!!!!
D. It is recommended to install remaining disconnected from the Internet and with the antivirus disabled
INSTALLATION STEPS FOR OMNIAII WITH2GB OF INTERNAL MEMORY​​
LINK TO ILLUSTRATED INSTALLATION GUIDE​​
1. Connect device to PC through USB under WinMobile ("Settings Samsung / Usb Connection / "My Storage")
2. Open MiniToolPartition wizard
3. Delete all partitions in "My Storage".
4. Create three new partitions:
5. FIRST PARTITION: FAT32, LOGICAL, 500mb, label "DISK"
6. SECOND PARTITION: EXT4, LOGICAL, 1250mb, label "disk"
7. THIRD PARTITION: LINUX SWAP, LOGICAL, 200MB, no label
PARTITIONS FOR USERS WITH OMNIA 8GB (Credits to Lagunostrum)​​FIRST PARTITION: 6390 Gb, FAT32, LOGICAL, label "DISK"
SECOND PARTITION: 1250 Mb, EXT4, LOGICAL, label "disk"
THIRD PARTITION: 196 Mb, LINUX SWAP, LOGICAL, no label​
IMPORTANT: For users with Omnia 8Gb, you must change the startup.txt​At line [Set CMDLINE "rootdelay = 2 root = / dev/mmcblk1p2 init = / init"] change as follows:
Set CMDLINE "rootdelay = 2 root = / dev/mmcblk1p6 init = / init"​
DO NOT create Linux partitions SWAP MORE 'BIG 200 Mb,
ACCORDING TO MANY DEVELOPERS, SUCH DIMENSIONS SLOW THE DEVICE​​
8. Close MiniTool Partition Wizard
9. Start Ubuntu in Virtual Machine (those who have not can disconnect the phone from Windows and, after running Ubuntu, can connect with the procedure described below)
10. Click on the menu "Virtual Machine", select "Removable devices", select GTI8000, select "Connect" to connect Omnia to Ubuntu
11. Open "Gparted" or other utility Ubuntu to partition the disk
12. Right-click on "ext4" and "remove" the partition, right-click again to "ext4" and choose "Format as ext4" (with tests carried out, it is more snappy rom installed on a formatted partition from Ubuntu in "ext4 "with respect to a partition" ext4 "formatted by MiniTool)
13. Right-click on "linux-swap" and format as "linux-swap" (for the same reason as above)
14. Close "Gparted"
15. Click on the menu "Virtual machine / Removable devices / Disconnect" to disconnect and reconnect the phone automatically from Ubuntu to Windows (do not disconnect the USB cable!!!!)
16. Close Ubuntu
17. Set the date on the PC on September 2011 (if it does not work in September 2010)
18. Open Image For Windows and choose "Restore (Normal)"
19. Navigate to the folder where you saved the ROM and select it
20. Click "Next" and flag the ROM to be installed
21. Click again on "Next" and choose where to install the ROM: Of course it will be the EXT4 partition (Linux native)("disk"), 1250 Mb created with MiniTool and reformatted under Ubuntu
22. Click "Next" and continue until screen will warn you that all data on the target partition will be deleted and be replaced by those of the ROM: click OK and continue
23. On next screen, leave options settings as you find them
24. On next screen click "Start" and start the procedure.
25. After installation, close Image For Windows and set time PC correctly.
Copy the files "haret.exe", "startup.txt" and "zImage" in DISK. (ie the root of the "My storage" WinMobile).
These files must remain in DISK (ie the root of the "My storage" WinMobile).
26. From WinMobile, with a File Manager, navigate to "haret.exe" and click it to start Android.
27. After first boot of Android, DO NOT USE THE TELEPHONE, wait for SO fully started and RESTART the phone
At the end of the second boot you can enjoy Android on OMNIAII
28. Set Playstore on "do not automatically update applications"!!!!!!!
Choose carefully what to update because recent apps are the most greedy of ram (block the phone) and they bring very little improvement.
ESPECIALLY DO NOT UPDATE GAPPS (CarHome, Facebook, Gmail, Latitude, Places, Maps, Navigation, Genie Widget, GoogleSearch, VoiceSearch, Talk, Twitter), otherwise they will not be opened.WHILE I WRITE I HAVE JUST TESTED FACEBOOK: slow on GALAXY ADVANCE OF MY WIFE, but splinter on my old Omnia
Frequently Asked Question
During installation of our Rom you can present difficulties. Often they are the same and identical are solutions.
For this reason I group here most common issues with most appropriate solutions: all tested and working.
PLEASE READ THESE LINES CAREFULLY BEFORE POST QUESTIONS THAT HAVE ALREADY HERE 'FOUND REPLY
Installation Tweaks​
1. Why 'install in "My Storage"?
'Cause it's 5 times more' fast!
Here's how: Copy files haret.exe, startup.txt and zImage in the Root of My Storage, the 2-Gb or 8 Gb.
2. Can I install in external MicroSD?
Recently many users have done: must comply with these conditions:
-Microsd must be at least class 10
File startup.txt-line [Set CMDLINE "rootdelay = 2 root = / dev/mmcblk1p6 init = / init"] should be changed as follows: Set CMDLINE "rootdelay = 2 root = / dev/mmcblk0p2 init = / init"
-File haret.exe, startup.txt and zImage must be copied on the external MicroSD
3. WinMobile is cleared or noised by Android installation?
Android does not cause, any "noise" to the Windows Mobile operating system installed natively on the phone. It will continue to work regularly: in fact we will have a phone with two operating systems fully functional.
4. What should I do just installed Android?
As soon as the phone has started completely must restart your phone to avoid any problems
5. Why on first boot phone remains locked on Android on Omnia II loading?
Possible answers:
a) Can 'have damaged some files in decompression: REINSTALL ALWAYS REPLACE ON ANY FAILURE
b) There may be some corrupt files in download: trying to re-download rom.
c) There may be a problem on disk address. The kernel has booted, the phone can not find the operating system and crashes.
In this case, proceed as follows:
-write disk address ext4 under Ubuntu ("disk") and change startup.txt (ONLY WITH NOTEPAD + +!!):
for example, if ext4 partition under Ubuntu is dev/sdb6 change the value: root = / dev/mmcblk1p6 init = / init "boot
6. If Ubuntu identifies the ext4 partition (disk) as / dev/sdc6 "(and not / dev/sdb6)" What should I do?
Open the file startup.txt and edit it as the "code" that appears in the format window under ubuntu:
change the last line of the file Startup set CMDLINE "rootdelay = 2 root = / dev/mmcblk1p6 init = / init" boot ----> mmcblk2p6.
7. What is the file startup.txt?
The file contains the parameters address of Android system.
The line we are interested in is the following: "Set CMDLINE" rootdelay = 2 root = / dev/mmcblk1p6 init = / init "
"1" is number disc (if you have inserted a microSD the value must be "1" if it is not inserted must be "0").
"6" is number partition "disk" (in most cases, by partitioning "disk" with MiniTool, is assigned the number 6 to the Linux partition).
If after installation, the phone hangs on Android on Omnia II Loading, 99% one or both of the values mentioned above are incorrect.
In most cases, if you install with microSD inserted, values to be inserted are "mmcblk1p6."
If problems occur the reason is constituted by 'physical address that has been assigned to the partition "disk", in which case we need to understand which the partition number your computer has assigned to "disk". To do this, just to see, when you format under ubuntu, on the top bar of the window formatting: here a code appears "sdbX" where X is the partition number: record it and edit it in the line of reported
8. For other installations have to repartition and format all over again?
No: once done partitioning procedure, next time that you install a future release of the rom, just install the image. TBI, with "ImageForWindows", without touching the partitions.
9. How can I replace the kernel?
Just copy the zImage in "My Storage" and "Storage", and start Android.
10. Why Image for Windows does not work?
You must set date pc on September 2011 (or 2010)
11. To install any update of Rom need to do the whole process all over again or just replace some files?
It should make the whole process all over again.
The kernel can be replaced individually, but the modded if copied at a later time inhibit the free wi-fi. You should clean the cache, delete a file .conf and anyway rom would be unstable.
12. My Omnia 8GB is: how should be large partitions?
Configuration tested and running on Omnia 8Gb (Credits to Lagunostrum):
1) 1st Partition FAT32, 6390 mb, Logical
2) 2nd partition 1250 mb EXT4, Logical
3) 3rd Linux swap partition 196 Logical
13. Can I increase size of Linux swap partition?
Many developers recommend not to exceed a size of 250 MB for partition in question: that instead of increasing the performance to slow down greatly.
14. Why I do not read anymore the external microSD?
For those who have problems with the microSD: Make sure that the SD is working and that is formatted Fat32 Primary and Active. use SDFormatter
15. How can I access the phone as a USB memory?
You have to go in Settings \ Applications \ Development and remove the flag on Debug USB.
16. Why, despite having removed flag on usb debugging phone is not recognized as USB storage?
-First of all, try restarting your computer and phone.
- If this is not enough the solution is the following:
under Windows, you can go to the "Computer Management", then "Disk Management" and there if Android appears without a letter assigned, assign one with the right button, "Change Drive Letter and Paths" and you're done
-Check if you are corrupt drivers of the phone and possibly reinstall
17. Why phone does not wake up after the screen is turned off?
Often it is sufficient to press the awakening and even if the screen does not light up, wait a few more seconds and everything will fall into place.
18. How does hardware buttons work?
HARDWARE KEYS WORKS LIKE ON WINDOWS MOBILE
19. Satellites Fix needs thirdy part application?
No, works perfectly by itself: the first fix is slow (takes several minutes), the following are faster (a few seconds)
20. Why the time is not exact and is always back an hour?
This problem can be solved permanently under WinMobile setting time zone of London / Dublin (with Italian correct time) and under Android time will be ok
21. If one day I do not want more android how do I delete it and only have windows?
Just delete the ext4 partition and expand the fat32 partition to the whole disk.
21. How should I set the Bluetooth?
1) make visible the device
2) under the heading "discoverable duration" set "infinite"
3) under "discoverable timeout" set "2 minute"
4) searches for available devices and match omnia
System tweaks
System tweaks​
1. How can I "paint" notifications pull-down menu in the top bar?
Go to SpicagenMod settingS \ Interface \ Notification colors and choose a color for each entry in the "Statusbar notifications" and "Items notification"; "Notification bar" lets you make additional changes to the bar and colors.
2. How can I save battery power?
-from "System Settings" control which apps consume more battery and block them or set them so they suck less
-Then check with the app CPUSpy if the phone goes into DeepSleep: if there is there any app that runs in the background and consumes. Locate and disable
-use GPS, WiFi and Bluetooth only when needed, otherwise disable
-use 2G instead, switch to 3G only for data connections: it is preinstalled in the ROM Toggle2G that automatically manages the switch (but remember to disable it because otherwise you will not have data connection)
3. How do I see what's running in the background?
Go to Settings, Applications, Manage applications and check what apps are running, for safety always under applications, go to the Services running and check which services are run in the background
4. How can I speed up the execution of the app?
With the pro version of Titanium Pro go to / batch operations / manipulates data / activating "convert DB mode Wal" click it: system is much more responsive.
5. How can I save on the consumption of Ram?
-Not too heavy with both the home, with too many widgets, and the device with too many apps. The phone will have greater reactivity '.
6. How can I make a Nandroid Backup, because here we can not get into Recovery Mode?
With ImageForWindows, you can create a backup image of the Rom, crystallize it with all the settings and installed app. Simply make the backup procedure (full)
7. How to replace bootanimation?
With a file explorer with root access like Root Explorer go to / system / media and replace the bootanimation.zip file.
Or just remove the file, and we'll start the classic writing android that lights up.
9. How do I disable the apps that start up automatically?
Download app from the Play Store that makes access to the list of apps that start automatically on boot.
CAREFUL DO NOT DISABLE APPS SYSTEM, (ie text messages, phone, market, 'Android system, ... otherwise the system becomes unstable!)
System maintenance
SYSTEM MAINTENANCE​
The following commands are all to be understood as to perform on a window Terminal Emulator pre-installed in ROM
To get more in-depth ram in case of remarkable system slowdowns type:
su (enter)
flush (enter)
-To compact database for faster access to the data type:
su (enter)
vac (enter)
-To realign app (especially if you installed new ones) in order to save on battery drain and ram type:
su (enter)
zepalign (enter)
-To Wipe Cache and Dalvik Cache (often used to prevent various malfunctions of the system) type:
su (enter)
sclean (enter)
-To make a Fix permission (needed to resolve issues of app Force Close) enter:
su (enter)
fixfc (enter)
System reboot, after typing these commands, in many cases it will be very, very, very long: do not worry if the bootanimation runs for a long time and the system does not seem to restart.
And 'quite normal. Android is performing the routines start from scratch without reading the previous (now deleted because it caused errors) and eventually will boot more agile than before.
Ubuntu installation method
UBUNTU METHOD​INSTALLATION STEPS FOR OMNIAII WITH 2GB OF INTERNAL MEMORY​LINK TO ILLUSTRATED INSTALLATION GUIDE​
1. 1. Connect device to the PC via USB under WinMobile ("Settings Samsung / Usb Connection / "My Storage")
2. Open MiniToolPartition wizard
3. Delete all partitions in "My Storage" of phone.
4. Create three new partitions
5. FIRST PARTITION: FAT32, LOGICAL, 500mb, label “DISK”
6. SECOND PARTITION: EXT4, LOGICAL, 1250mb, label “disk”
7. THIRD PARTITION: LINUX SWAP, LOGICAL, 200MB, no label
PARTITIONS FOR USERS WITH OMNIA 8GB (Credits to Lagunostrum)​FIRST PARTITION: 6390 Gb, FAT32, LOGICAL, label "DISK"
SECOND PARTITION: 1250 Mb, EXT4, LOGICAL, label "disk"
THIRD PARTITION: 196 Mb, LINUX SWAP, LOGICAL, no label
IMPORTANT: For users with Omnia 8Gb, you must change the startup.txt​At line [Set CMDLINE "rootdelay = 2 root = / dev/mmcblk1p2 init = / init"] change as follows:
Set CMDLINE "rootdelay = 2 root = / dev/mmcblk1p6 init = / init"​DO NOT CREATE LINUX PARTITIONS SWAP MORE 'BIG 200 Mb, ACCORDING TO MANY DEVELOPERS, SUCH DIMENSIONS GREATLY SLOW THE DEVICE​8. Close MiniTool Partition Wizard
9. Open Ubuntu
10. Click on "Virtual Machine", select "Removable devices", select "GTI8000", select "Connect" to connect 1Omnia to Ubuntu: note "DISK" and "disk" that you have created with MiniTool
11. Open “Gparted” or other Ubuntu utility to partition disks
12. Right-click on "ext4" and "remove" partition, right-tap again to "ext4" and choose "Format as ext4" (with tests carried out, it is more snappy rom installed on a formatted partition from Ubuntu in "ext4 "with respect to a partition" ext4 "formatted by MiniTool)
13. Right-click on "linux-swap" and format as "linux-swap" (for same reason as above)
14. Close “Gparted”
15. Open Terminal window:
16. Write following command line: sudo cp /media/DISK/ext4.tar.gz /media/disk/
17. Press enter and wait for operation completion (blinking cursor)
18. Write following command line: cd /media/disk/
19. Press enter
20. Write following command line: sudo tar xzvf ext4.tar.gz -C /media/disk
21. Press enter. Start files decompressing on partition ext4. Wait for operation completion (blinking cursor)
22. Write following command line: sudo rm ext4.tar.gz
23. Press enter.
24. Write following command line: sudo chmod 777 /media/disk/
25. Click on "Virtual machine / Removable devices / Disconnect" to disconnect and reconnect phone automatically from Ubuntu to Windows (do not disconnect USB cable!!!!)
26. Copy files "haret.exe", "startup.txt" and "zImage" in DISK. (ie the root of "Memory personal" WinMobile).
These files MUST remain in DISK (ie the root of the "My Storage" WinMobile). Disconnect device from Pc
27. From WinMobile, with a File Manager, navigate to "haret.exe" and click on it to start Android.
28. After the first launch of Android, DO NOT USE TELEPHONE, wait for the S.O. it is fully started and RESTART phone
At the end of the second boot you can enjoy Android on OMNIAII
Link for download ROM -----------------------------------------------------------------> POST 7​
Ubuntu installation method
DOWNLOAD​​
File ext4.tar.gz​
reserved
Congratulations !!!
Yes, you finally made it. version2 is much better that version 1. almost no bugs. And it is much faster than frenkiedroid. especially your memory performance is excellent. i will install it and try to make it even more faster !!!!
one question. how to activate front camera ? i haven't managed to do it.
spkraul said:
Yes, you finally made it. version2 is much better that version 1. almost no bugs. And it is much faster than frenkiedroid. especially your memory performance is excellent. i will install it and try to make it even more faster !!!!
one question. how to activate front camera ? i haven't managed to do it.
Click to expand...
Click to collapse
Thanks!
It will be appreciated your suggestions about how make it even more faster...
About front camera no news for now: it will be necessary kernel modification...
spiderman1961 said:
Thanks!
It will be appreciated your suggestions about how make it even more faster...
About front camera no news for now: it will be necessary kernel modification...
Click to expand...
Click to collapse
You wrote
"Both Cameras and VideoCameras working"
so i thought you meant back and front camera....
ok my suggestions are
check my ROM's build.prop for code optimizations
also experiment with dalvik cache settings. it can make the ROM a lot faster
remove some services always running (ex is voice dialer that very few people use and makes system slower
remove unnecessary apps (example livewallpapers, geniewidget etc)
you can also set cpu performance settings as default without big loss on battery time, but with big affect on phone's responsiveness
remove some files on the system that make it heavier to load and handle (ex fewer ringtones to choose from ....)
uninstall downloaded apps from manage applications manu, clean /data/dalvik cache using root explorer, reboot system and install downloaded apps again
my recommendation is not to install optional apps on system as many users ignore how to erase them when they do not need them (ex if somebody does not use twitter or facebook doesn't need them
for faster gps i have discovered this solution try it and tell me the results
the biggest improvement you can see is by replacing the phone's framework with miui's one. you can find miui based on CM6. i know it looks a little chindish but very fast. you just port it to our ROM, and since working just keep it's engine (heart) and replace it's apps with the ones we prefer. MIUI gives us the fastest bases on android
to measure if your ROM improvements are working or not use antutu benchmark 2.5 (bugless working on my android 2.2.2), antutu cpu master 2.5.2 and benchmark and tuning from android market
bytheway. with my ROM installed on sd class 10 i got 1035 points on antutu. can you check yours to see if we have a new record and post the result ?
if you think i can help in anything specific just send me a pm or post here. we are all working on the same side to improve our phone
spkraul said:
You wrote "Both Cameras and VideoCameras working"so i thought you meant back and front camera....
Click to expand...
Click to collapse
No both apps cameras: many users denoted issues about one of them
spkraul said:
check my ROM's build.prop for code optimizations
also experiment with dalvik cache settings. it can make the ROM a lot faster
Click to expand...
Click to collapse
These suggestion and other are already inserted
spkraul said:
[*]remove some services always running (ex is voice dialer that very few people use and makes system slower
[*]remove unnecessary apps (example livewallpapers, geniewidget etc)
[*]you can also set cpu performance settings as default without big loss on battery time, but with big affect on phone's responsiveness
[*]remove some files on the system that make it heavier to load and handle (ex fewer ringtones to choose from ....)
Click to expand...
Click to collapse
Many, many users in my country want them and want better battery drain; so if other user want different configuration he can change himself.
They can use Titanium Backup or Link2SD.
However scripts in rom block automatic boot of these apps so they don't affect phone's responsiveness
spkraul said:
[*]uninstall downloaded apps from manage applications manu, clean /data/dalvik cache using root explorer, reboot system and install downloaded apps again
Click to expand...
Click to collapse
With terminal command "su" and "sclean" it's all automatic
spkraul said:
[*]my recommendation is not to install optional apps on system as many users ignore how to erase them when they do not need them (ex if somebody does not use twitter or facebook doesn't need them
Click to expand...
Click to collapse
We can do it
spkraul said:
[*]for faster gps i have discovered this solution try it and tell me the results
Click to expand...
Click to collapse
I read your efforts in many posts: in Twister it is not necessary (at least in my country) any modification for GPS: first fix with moving car about 4-5 minutes, second and other fixes 10 sec maximum
spkraul said:
[*]the biggest improvement you can see is by replacing the phone's framework with miui's one. you can find miui based on CM6. i know it looks a little chindish but very fast. you just port it to our ROM, and since working just keep it's engine (heart) and replace it's apps with the ones we prefer. MIUI gives us the fastest bases on android
Click to expand...
Click to collapse
Ok, can you link me something also in pm?
spkraul said:
[*]to measure if your ROM improvements are working or not use antutu benchmark 2.5 (bugless working on my android 2.2.2), antutu cpu master 2.5.2 and benchmark and tuning from android market
Click to expand...
Click to collapse
spkraul said:
bytheway. with my ROM installed on sd class 10 i got 1035 points on antutu. can you check yours to see if we have a new record and post the result ?
Click to expand...
Click to collapse
I agree with many developers that antutu it is not reliable: however score with antutu is 1033
Little curiosity: are you "argentinos" on modaco?
yes i am modaco's argentinos. i just had chosen different nickname here, but nothing to hide
about antutu maybe it is not the most accurate in the world, but it is one of the very few running on android 2.2. Vellamo, quadrant, geekbench etc demand android 2.3 or better or better gpu. But benchmarks are one of the best tools to measure ROMS speed, compare them and improve them. after all i haven't used cheats to achieve my 1035 score and you also the same for 1033 score. so since we are not cheating antutu it can show us quite reliable results.
About gps. standalone settings are nice for people using GPS very often. for people using it rarely maybe they need to wait 4-5 minutes every time. i had experienced this many times with both wm system and android system and this is why i decided to try and find ms-based settings.
but even with your standalone settings try to change accuracy from 50 to 19 and disable dynamic accuracy (samsung's recommended for i8000 chipset) and i believe you will see improvement on the locking times.
About MIUI based on CM6 download from here
http://www.mediafire.com/download/0q9ljaqmw0lyati/Miui_1.3.18v4_Formel-Cobrato.zip
consult here (but some info on CM7 based MIUI)
http://forum.xda-developers.com/showthread.php?t=1041524
http://forum.samdroid.net/f63/rom-miui-gb-6342/
http://forum.samdroid.net/f62/rom-miui-gb-6349/
p.s. if you have free time please check this thread
http://www.modaco.com/topic/363230-android-rom-needed-for-base/
after cm6 for i8000 will be considered complete and not beta and we are very close to name a version "complete" this can be our next step - project CM7 for i8000. if one person made incomplete CM7 to run on i8000 we can improve it and run better
spkraul said:
yes i am modaco's argentinos. i just had chosen different nickname here, but nothing to hide
about antutu maybe it is not the most accurate in the world, but it is one of the very few running on android 2.2. Vellamo, quadrant, geekbench etc demand android 2.3 or better or better gpu. But benchmarks are one of the best tools to measure ROMS speed, compare them and improve them. after all i haven't used cheats to achieve my 1035 score and you also the same for 1033 score. so since we are not cheating antutu it can show us quite reliable results.
About gps. standalone settings are nice for people using GPS very often. for people using it rarely maybe they need to wait 4-5 minutes every time. i had experienced this many times with both wm system and android system and this is why i decided to try and find ms-based settings.
but even with your standalone settings try to change accuracy from 50 to 19 and disable dynamic accuracy (samsung's recommended for i8000 chipset) and i believe you will see improvement on the locking times.
About MIUI based on CM6 download from here
http://www.mediafire.com/download/0q9ljaqmw0lyati/Miui_1.3.18v4_Formel-Cobrato.zip
consult here (but some info on CM7 based MIUI)
http://forum.xda-developers.com/showthread.php?t=1041524
http://forum.samdroid.net/f63/rom-miui-gb-6342/
http://forum.samdroid.net/f62/rom-miui-gb-6349/
p.s. if you have free time please check this thread
http://www.modaco.com/topic/363230-android-rom-needed-for-base/
after cm6 for i8000 will be considered complete and not beta and we are very close to name a version "complete" this can be our next step - project CM7 for i8000. if one person made incomplete CM7 to run on i8000 we can improve it and run better
Click to expand...
Click to collapse
Thank so much!!!
Very interesting: after my little holidays i will work on these informations and i will answer you. See you soon
Hi, I'm going to try installing this ROM for the Omnia 2. It will be used by my girlfriend so I hope she won't have a hard time using it (I mean bugs or some things not working)
First of all I want to thank you gusy for developing for this phone, it is a good phone but with a wrong OS.
Now I have a couple of questions:
1. There is no other way than to install Ubuntu and using it for the specified steps?
2. Could you please post the exact size of the files inside the 7zip files? I don't want to have any errors during the installation. I have attached a screenshot of the files that I got after I unzipped the 2 7zip files, please check it out and tell me if that's ok.
Thank you again!
sergio_sos said:
Hi, I'm going to try installing this ROM for the Omnia 2. It will be used by my girlfriend so I hope she won't have a hard time using it (I mean bugs or some things not working)
First of all I want to thank you gusy for developing for this phone, it is a good phone but with a wrong OS.
Now I have a couple of questions:
1. There is no other way than to install Ubuntu and using it for the specified steps?
2. Could you please post the exact size of the files inside the 7zip files? I don't want to have any errors during the installation. I have attached a screenshot of the files that I got after I unzipped the 2 7zip files, please check it out and tell me if that's ok.
Thank you again!
Click to expand...
Click to collapse
Hi,
you may not use Ubuntu, but the system would be slower and could create some problems (the ext4 file system created by MiniTool is not exactly the same as the one created by native Linux with Ubuntu).
I suggest, with respect to the guide to make a linux swap partition of 250mb (not 200): it should prevent incidents of freeze.
The size of the downloaded files are correct: good installation.
Enjoy
Hola,
no puede usar Ubuntu, pero el sistema sería más lento y puede crear algunos problemas (el sistema de archivos ext4 creado por MiniTool no es exactamente el mismo que el creado por Linux nativa con Ubuntu).
Sugiero, con respecto a la guía para hacer una partición de intercambio de Linux de 250 MB (no 200): debe evitar incidentes de congelación.
El tamaño de los archivos descargados son correctos: buena instalación.
:good:
spiderman1961 said:
Hi,
you may not use Ubuntu, but the system would be slower and could create some problems (the ext4 file system created by MiniTool is not exactly the same as the one created by native Linux with Ubuntu).
I suggest, with respect to the guide to make a linux swap partition of 250mb (not 200): it should prevent incidents of freeze.
The size of the downloaded files are correct: good installation.
Enjoy
Hola,
no puede usar Ubuntu, pero el sistema sería más lento y puede crear algunos problemas (el sistema de archivos ext4 creado por MiniTool no es exactamente el mismo que el creado por Linux nativa con Ubuntu).
Sugiero, con respecto a la guía para hacer una partición de intercambio de Linux de 250 MB (no 200): debe evitar incidentes de congelación.
El tamaño de los archivos descargados son correctos: buena instalación.
:good:
Click to expand...
Click to collapse
Thank you very much for your response. I will try to install the ROM today (hopefully)
And thank you for the spanish translation. I thought you were from Italy
I am from Argentina.
Saluti!
My phone hangs in "Jumping to Kernel..." what should i do?
eisdrachen said:
My phone hangs in "Jumping to Kernel..." what should i do?
Click to expand...
Click to collapse
Hi,
you posted on 2 thread same question: wich version are you installing?
spiderman1961 said:
Hi,
you posted on 2 thread same question: wich version are you installing?
Click to expand...
Click to collapse
Last time I tried the last Twister on my SGH-i900. Jumping to kernel... On every ROM

[GUIDE] Proxyme - Android System Access Tool

The purpose of this thread is to provide a guide for users who have Proxyme preloaded in their device's firmware and want to find out how to use it effectively. Ideally, this will be a place to share experiences and ideas to further improve the tool and provide solutions to problems that people may have.
Introduction
Proxyme ( proc-zahym ) represents a system access solution comprised of the following components:
System service - provides access to privileged system environment
SSH daemon - provides secure shell (ssh) and file (scp) access (based on dropbear)
proxyme.apk - user interface module
This solution is offered as a preloaded option in firmware images and consequently cannot (should not) be installed as a regular app, either from the Play Store or being side loaded. The reason for pre-loading stems from the requirements of the system service component to be able to integrate at system level and not be bound by operating restrictions within the Android application and framework platform environment (Zygote and Dalvik sandbox). The Play Store has been enlisted as the primary and preferred source in providing updates to the user interface component; the actual app you will be interacting with.
Proxyme offers the following functionality through its user interface:
Installation/de-installation of the su binary to provide/remove root access
(useful only for other applications which require root level access)
The persistent behaviour of the su binary can be controlled by a one-shot switch
Register/de-register tag-along scripts for su enable and disable actions
(more details on this below)
Control availability and location of busybox toolbox
Start/Stop SSH daemon
Configure listening port for the SSH daemon
Configure user accounts for the SSH daemon
Submit and execute a shell script
SU Binary
The option to enable or disable the su binary switch (on/off) in the user interface is the equivalent of rooting and unrooting the device. When enabled, you are providing root access to apps which require it to perform correctly. Currently, Proxyme does not have built-in support for monitoring and 'policing' the actual access to root.
Auto Root @ Boot
This switch in the Proxyme app allows you to indicate whether the su binary should be installed or removed during a reboot or startup of the device. Setting it to the 'on' position will make the su binary persistent throughout reboot cycles and leave your phone permanently 'rooted'.
Registering Tag-along Scripts
Whenever you enable or disable the su binary with the on/off switch in the user interface, there exists an option to execute a user script just prior to and one unique to each action. This is possible by pre-registering a script for one of or both enable/disable actions. A script can virtually perform anything and is always executed within root context. Note that you must be very cautious about the scripts you are registering and be certain about their intentions, because a rogue script could cause irreparable damage to you device.
Each script has the option to override, and thus block, the intended action (enable or disable) by setting a system property named proxyme.override to anything but blank.
One purpose of having tag-along scripts would be to 'freeze' and 'unfreeze' specific root-shy apps, which do not 'like' rooted systems. This is one area where we can share the experience of pre-coded scripts for certain target apps and I do hope it will be put to good use.
To submit a script file, tap on one of the SU Enable Script or SU Disable Script text elements to start browsing for a file.
Busybox
Busybox is just that, busybox. Options are available to determine one of two hard-configured locations where it can be installed and to enable or disable it.
More to follow later...
SSH Daemon
The SSH daemon is based on dropbear. It has been modified to support logon accounts in Android, which are configured with the following parameters:
username
password
home directory
which shell to use
user ID
group ID
For whatever reasons, you can restrict access by specifying non-root user and group (0:0) IDs. The IDs you can choose from are derived from a system list which was used and known within Android at the moment of booting the device. If you have installed new apps in the meantime and would like to use their newly assigned IDs, then please reboot the phone to update this list.
Executing Shell Scripts
The ability to submit and execute a shell script from the user interface can be considered a convenient and quick way to get some tasks done. Take note however that your scripts are run in a privileged environment under the root account and that there are risks involved. A rogue or insufficiently tested script can cause major problems if/when it makes changes to key system partitions, which are normally mounted read only for obvious reasons.
Most rom images will include a sample de-bloating script,which removes ROM specific branding apps. The script. /sdcard/Proxyme/debloat.sh, shows how this is done and could serve as a base for more extensive clean-up of firmware components, if you so desire.
Operational Notes
Whenever a device boots from a factory reset condition (i.e. after wiping data), there will be no UID/GID list available in the user management screen. The reason for this is that the SuMeD setup process will complete before the app data store, the location where aforementioned list is stored. has been initialised. Restart the device in order to make this list available.
Behind The Scenes
For details regarding how Proxyme's system service components are integrated in a firmware image, please follow this trail...
Device Support
Before taking the next step to flash your phone/device, please be aware of the risks involved with performing such an operation. Prepare the device properly, i.e. sufficient battery charge, and be well informed of the correct flashing procedure(s) for your device's make and model. On Samsung devices, rooting will probably trigger 'custom' flag(s) and consequently render the warranty void. No matter how adventurous you may feel, it is always a bad idea to try to flash a firmware image which is not intended for your device. Having said all that, note that you will be flashing your phone at your own risk. You are solely responsible for anything you do to your phone/device, so make sure you are well informed and well prepared before deciding to flash or install anything on it.
The following list will be updated as soon as new firmware images are prepared for new and old devices.
Samsung Galaxy Note 10.1 2014
SM-P600 - (reference post)
Samsung Galaxy J
SC-02F (Docomo) - (reference thread)
SGH-N075T (Taiwan) - (reference thread)
Samsung Note 3
SM-N9005 - (reference post)
SM-N900A - (reference post - unconfirmed)
Samsung Galaxy S4
SHV-E330K - (reference thread)
SHV-E330L - (reference thread)
SHV-E330S - (reference thread)
SGH-I337 - (reference post - unconfirmed)
SC-04E - (reference post)
Samsung Galaxy Grand 2
SM-G710L - (reference post)
Samsung Galaxy S3
GT-I9300 - (reference post)
SC-03E - (reference thread)
SHV-E210K - (reference thread)
SHV-E210L - (reference thread)
SHV-E210S - (reference post)
SHW-M440S - (reference post)
Samsung Galaxy S2 LTE
SHV-E110S - (reference thread)
Samsung Galaxy S2
SHW-M250K - (reference post)
Planned Changes
built-in control of su access (much like what Superuser currently does)
choice of built-in simple file browser or use intents to initiate external app(s) for browsing and selecting files
...
Proxyme - Behind The Scenes
This section details how Proxyme's system service components are integrated in a firmware image.
If you are not up to speed with how a typical Android system is constructed, then I would like to suggest you at least make yourself familiar with this topic in order to fully understand what to do with the following text.
The system service components are integrated in the /system partition (mount point) in Android. In the case of changing a live system this will require mounting the appropriate partition read/write before applying the updates. If a static firmware image is to be updated, then extract the component which represents the /system partition from the package and apply the updates before re-packing the firmware image.
The following list describes the major system service components:
hijacker - this is a module you need to write, which has the role of initiating the system service in a privileged environment.
hjprepper - this module is started by the hijacker to prepare the environment prior to starting SuMeD
SuMeD - this one is what it's all about. The Proxyme app relies on this daemon to be up and running in order to perform any of its privileged functions
SSHD - the SSH daemon is represented by an updated implementation of dropbear on Android
Hijacker
The hijacker is a program you would normally have to write to replace an existing program in your rom, which is started during the boot process by for example initd. This part of the integration process requires your (creative) input, since you need to analyse the rom you are working on and figure out how and where to position the hijacker module. If you do find an existing module to hijack, make sure to always call that original module from your hijacker once it has managed to execute the hjprepper program. In some roms it suffices to start hjprepper from a shell script, which is run with root access... they exist, you just have to look for them.
This is what your hijacker could look like in C
Code:
#define PROP_HIJACK "proxyme.hijack.system"
#define HIJACKEE "/system/bin/original-program"
#define PREPPER "/system/xbin/hjprepper"
int main( int argc, char *argv[] )
{
char *lArgv[5];
char **lArgList;
int lArgCnt;
pid_t pid;
lArgList = (char **)malloc( sizeof(void *) * (argc + 1) );
for ( lArgCnt = 0; lArgCnt < argc; lArgCnt++ )
{
lArgList[ lArgCnt ] = argv[ lArgCnt ];
}
lArgList[ lArgCnt ] = NULL;
/* Fork parent process */
pid = fork();
if ( pid < 0 )
{
property_set( PROP_HIJACK, (char *)"Hijacker Startup... spawning failed, prep first before xfer" );
system( "/system/xbin/hjprepper" );
execv( HIJACKEE, lArgv );
exit( EXIT_SUCCESS );
}
else if ( pid > 0 )
{
property_set( PROP_HIJACK, (char *)"Hijacker startup... spawned, parent ascends phase 2" );
execv( HIJACKEE, lArgv );
exit( EXIT_SUCCESS );
}
if ( execl(PREPPER, PREPPER, (char *)NULL) < 0 )
{
property_set( PROP_HIJACK, (char *)"Hijacker startup... failed to call prepper" );
}
exit( EXIT_SUCCESS );
}
hjprepper
This program is responsible for setting up an operating environment for the SuMeD daemon. If you have full control over a rom's boot image, then include a call in your init process to start this module once during boot. If not, then use a hijacker program or look for existing and suitable scripts to initiate hjprepper.
hjprepper starts the SuMeD daemon once it completes the setup and configuration procedure.
SuMeD
This bad boy is responsible for the user requested actions through interaction with the Proxyme app.
Prebuilt Packages
To get you started, there are pre-built modules available,which you can download here. Currently, availability is limited to Android 4.3 and 4.4.2 only. The following zip archives are organized in a folder tree structure,which serves as a guide for where to place the modules within the /system path.
4.3 Prebuilts
4.4.2 Prebuilts
Filler 2
Filler 2
Filler 3
Filler 3
Please add support in latest SHV-E110S 4.1.2 rom(s)
Title says/asks it all...
Can You guide build pre-rooted rom by proxyme? Thank you very much.
linhbs said:
Can You guide build pre-rooted rom by proxyme? Thank you very much.
Click to expand...
Click to collapse
Behind The Scenes section has been added to the OP.
Can this method be used to prebuilts S3, S4, Note3 not Korea? Thanks so much.
linhbs said:
Can this method be used to prebuilts S3, S4, Note3 not Korea? Thanks so much.
Click to expand...
Click to collapse
Yes. You need to figure out how to get the SuMeD daemon started and that depends on the rom you want to integrate it in. The Behind The Scenes post highlights what areas to focus on when doing this.
Note that the first post includes 2 firmware images (both Android 4.3 and 4.4.2) for the international Note3 (SM-N9005). It's a no-brainer to copy the files from the appropriate directories to an equivalent and same level version firmware for another region of the same device.
Please add support N900A 4.4.2. Thank you very much.
linhbs said:
Please add support N900A 4.4.2. Thank you very much.
Click to expand...
Click to collapse
Has 4.4.2 been released on that device? If yes, a download link for the official stock firmware will help speed up the process. If not, then we wait or you could send a PM to davidcsv with the 10 or 11 digit s/n and he will monitor and download the latest release as soon as it becomes available...after that your new firmware image will be uploaded within a day.
Link: http://www.androidfilehost.com/?fid=23321874045862490. Thank you for your interest!
linhbs said:
Link: http://www.androidfilehost.com/?fid=23321874045862490. Thank you for your interest!
Click to expand...
Click to collapse
N900AUCECMLG (preloaded with Proxyme) (2014-01-04)
This rom implicitly performs a factory reset, so backup your data before flashing it. Unpack the zip archive and specify the resulting .tar.md5 filename in the PDA/AP section of the latest version of Odin.
Use Proxyme to execute the /sdcard/Proxyme/debloat.sh script to get rid of the k n o x messages.
mega.co.nz
torrent, mirror
Apparently, this firmware image is a pre-release/leaked image and not the final deal. It includes an updated bootloader and related components, meaning that it will not be straightforward to revert back to an older version of the firmware. If you encounter problems with this Proxyme preloaded image, then I'd suggest flashing the image from the original download link.
All feedback is welcome and will be appreciated. Enjoy!
Thank you very much. I ask you to add proxyme in I337 4.4.2 rom. Thank you very much.
Link: http://www.androidfilehost.com/?fid=23329332407566813
linhbs said:
Thank you very much. I ask you to add proxyme in I337 4.4.2 rom. Thank you very much.
Link: http://www.androidfilehost.com/?fid=23329332407566813
Click to expand...
Click to collapse
I337UCUFMLD (preloaded with Proxyme) (2014-01-02)
This rom implicitly performs a factory reset, so backup your data before flashing it. Unpack the zip archive and specify the resulting .tar.md5 filename in the PDA/AP section of the latest version of Odin.
Use Proxyme to execute the /sdcard/Proxyme/debloat.sh script to get rid of the k n o x messages.
mega.co.nz
torrent, mirror
Apparently, this firmware image is also a pre-release/leaked image and not the final deal. It too includes an updated bootloader and related components, meaning that it will not be straightforward to revert back to an older version of the firmware. If you encounter problems with this Proxyme preloaded image, then I'd suggest flashing the image from the original download link. A Google search shows that this image does have a few minor issues, so beware.
All feedback is welcome and will be appreciated. Enjoy!
Thank so much. I find the phone test. Will respond to you.
SC-04E Stock Firmware Proxyme Rooter images
Root Ready Stock Images
(Unfortunately, flashing these ROMs will trigger KNOX)
Kitkat 4.4
SC04EOMUFNI3 (Proxyme) (Build Date 2014-09-19)
This zip archive contains an Odin flashable file. It is not the complete stock image, so you MUST have OMUFNI3 already running on your phone or you will need to download it from the above reference sites, which carry complete stock firmware images, and flash it before continuing with this file. Instructions are included in the zip archive.
uploaded.net
mediafire
torrent, mirror2
I337:
- Before flash rom: I337UCUEMK2 version 4.3
- After flash rom I337UCUFMLD (preloaded with Proxyme) fail.
Good.
linhbs said:
I337:
- Before flash rom: I337UCUEMK2 version 4.3
- After flash rom I337UCUFMLD (preloaded with Proxyme) fail.
Click to expand...
Click to collapse
Please post the complete log from the message box in Odin. One more question, is your phone 16GB or 32GB model?
update: and also try again with newer version of Odin v3.09 instead of v3.07

[Q] [HELP] Running Debian on top and Android chrooted

Hello!
I'm trying to run debian on P500, but not chrooted below android. I want the reverse.
I followed this guide strictly:
http://whiteboard.ping.se/Android/Debian
Everything went well, no apparent errors. The only trouble is: the system doesn't boot I can't explain why. I'll write exactly what I did, so maybe you can help me to find what I'm doing wrong.
## Partitioning the SD card
I partitioned it in 4 partitions using fdisk, and created filesystems with mkfs:
sdb1 - ~2GB vfat (for android)
sdb2 - ~1GB ext4 (for /data - I'll mount /data here after everything is working)
sdb3 - ~12GB ext4 (for debian root filesystem)
sdb4 - ~1GB swap area
## Creating the new initramfs
I used cm-11-RC7 as base. I extracted the boot.img using unmkbootimg, a tool provided by the author of the guide, which gave me a initramfs.cpio.gz file and a zImage file.
I did exactly as described in the guide, but using busybox-armv6l (downloaded from http://busybox.net/downloads/binaries/latest/) and changing /dev/mmcblk1p2 to /dev/mmcblk0p3 (this is how my P500 called my sdb3 partition) in the /init file.
Everything went well, and I got a boot.img with busybox and the modified /init file.
## Creating the Debian filesystem
I did exactly as described in the guide, changing only the debian version (--foreign sid) and the mirror (from ftp.se to ftp.br).
Everything ok, I can use debian at this point, but chrooted below android.
## Creating the new Android root file system
I extracted the original initramfs to /android on debian filesystem and created the log/ subdirectory, as described in the guide.
## Finishing scripts
I removed the /etc/init/ folder and all files in /dev of the debian root filesystem; and created the files /etc/init, /etc/init.stage2 and /etc/rc.local as described in the guide.
## Installing the boot.img
Since I can't put my phone in fastboot mode (home+power has no effect, and I can't use LGMDP because I'm running linux) I tried two ways:
- Using the Flash Image GUI (http://forum.xda-developers.com/showthread.php?t=2086361)
This works, I got a "Success" output after flashing the modified boot.img.
- Changing the original boot.img file by the modified boot.img in the rom zip
This works, the rom is installed succesfully.
## Using it
That's where I can't explain. After flashing the modified boot.img (or modified zip rom) I reboot the phone, and got this bootloop:
LG screen > screen turns off > hardware buttons light turns off > LG screen
... and so on, forever.
What am I doing wrong?
Thanks a lot!
------------------------------------------
I could not make this work yet, but I would like to say thanks to:
Google (for android)
CyanogenMod (for the great system they provide)
AndroidARMv6 team and all developers of our beloved P500 (for making dreams possible )
Mikael Q Kuisma (for the great guide and tools - http://whiteboard.ping.se/Android/Debian)
joeykrim (for the Flash Image GUI - http://forum.xda-developers.com/showthread.php?t=2086361)
Possible problems
I think that the possible problems would be:
- Wrong busybox version
I tried with the busybox extarcted from the ROM (/system/xbin). Same result.
- ROM incompatibility
I tried the same procedure using as base CM11-RC7, Omni-4.4.3-NightlyBuild, CM10.2.0, CM10.1.6, CM9.2.3, AOKP-4.0-Beta6, CM7 and the original rom. Nothing.
I can't see the reason for this not to work...

Mobile/Android devices architecture

I'm having trouble understanding the architecture of mobile (and Android) devices. I compare it a lot to the design of PCs, laptops, etc, which I know quite well.
Here's my understanding on how PCs work when booting:
​The hardware has firmware stored in ROM (Read Only Memory). Actually, Flash memory is used nowadays, on which the stored content can of course be changed, unlike real ROM memories in the old days. Because the firmware is hardware-specific and its operation is very critical, its content is rarely updated or otherwise changed. Installing new firmware is called flashing. Firmware in a PC is most commonly BIOS or UEFI, the task of which is (briefly) to first run the POST tests, provide some interfaces and finally start the software in the mass storage. By mass storage, I mean memory separate from the firmware's Flash memory, which can also be Flash memory, such as an SSD disk, or a more traditional hard disk.​The BIOS (i.e. firmware) in the specified order (which first is the internal NVMe SSD or the external USB hard disk?) tries to load the software into the RAM memory for execution from mass storage MBR (Master Boot Record) part . Master boot record is a physical defined area in mass storage. Bootloader software is stored on this MBR part.​​When the bootloader (located on the MBR part) is loaded into RAM and run, it knows the contents of the end of the disk and starts the kernel from there.​​The kernel starts (in Linux) the init process, nowadays often Systemd, which starts the rest of the software.​--------------------
What kind of memories and storages are most commonly found in Android devices? One main memory (i.e. RAM)? One Flash memory for firmware (i.e ROM)? Another separate flash drive that acts as mass storage? Possibly SD card and USB stick as external mass storage?
What is firmware on Android devices?
What is the bootloader in (located in MBR part) on Android?
Linux is the kernel used by Android, which is started by the bootloader? After that, Android continues to boot, how?
A pile of terms, which I have ambiguities:
Bootloader; What's it like on Android? It is often characterized as hardware specific. So is it the case that the bootloader in Android is firmware? So in Android, the firmware runs the tasks of the PC world BIOS and bootloader (located in the MBR part), and then starts the Android located on the mass storage?
Recovery; What is this technically?
Android ROM; I can't understand this. As far as I know, Android is an operating system located mass storage, not Read-Only-Memory firmware.
Rooting; On a PC, we are used to the fact that the owner of the device has root rights. Is it just that the manufacturers have decided to set the default root password to some generated random string, and by default, the user only has access to the basic user account?
After the above has been answered, I would like someone to explain to me (separately) technically, starting from the hardware level (where and how), how do Android devices booting and work? Links to additional information are also welcome. hank you very much! If anyone can answer my questions, thank you very much!
Your questions should put you to shame.
Start reading yourself, building up your knowledge as you read.
Anyway, welcome to the forum. After a year of reading, you will laugh at your post.
ze7zez said:
Your questions should put you to shame.
Start reading yourself, building up your knowledge as you read.
Anyway, welcome to the forum. After a year of reading, you will laugh at your post.
Click to expand...
Click to collapse
I know my questions are stupid, but I'm impasse. It seems that there is much less information about designing for mobile devices than PCs. Could you link some articles on this? As the last article I read this, but it didn't help much, because I compare too much what I learned on PCs.
There are no stupid questions, there are only stupid answers.
Start with the basics based on information from google:
Architecture overview | Android Open Source Project
source.android.com
ze7zez said:
There are no stupid questions, there are only stupid answers.
Start with the basics based on information from google:
Architecture overview | Android Open Source Project
source.android.com
Click to expand...
Click to collapse
That is useful, but there is a reason why I asked about mobile/Android device design/architecture. Android itself is as far as I know (if I'm not mistaken) just an operating system, like the desktop operating systems Windows and Ubuntu, but mobile/Android devices are very different from PCs in terms of hardware and firmware. For example: https://www.quora.com/Is-there-anything-like-BIOS-in-mobiles-How-do-they-boot
How long is a huge ball of string?
No simple answer...
This is for those who are new to Android development and basically have NO understanding about the partition structure. I will give a high-level introductory explanation. PC GNU/Linux users: please note this is completely different from x86 (PC Linux) partition table. You will not come across partitions denoted as sda1, sda2, sdb1, sdb2, and so on. Instead, it will be structured as follows:
/boot
This is the partition that has all the data that is necessary for the phone to boot. It includes the kernel and the RAMDISK (these are the only components of the operating system that are stored in this partition. The remaining are stored in /System). 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, except the kernel and the RAMDISK (as mentioned in /boot explanation). 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, but you will still be able to boot into the /recovery partition 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. Think of this like a proprietary recovery partition that PC companies put on prebuilt PCs. When you flash a custom recovery such as TWRP or CWM, you are overwriting this partition.
/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 store your media, documents, downloads, pictures, videos, ROMs etc. on it. It is like the equivalent of the ' Users/[Username] ' folder in Windows and ' /home/~ ' folder in x86 Linux. 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.
/Boot (Is NOT viewable in Android)
/Recovery (Is NOT viewable in Android)
/Data (Userdata) (Is viewable in Android)
/Cache (Is viewable in Android)
/System (Is viewable in Android)
/Misc (Is NOT viewable in Android)
Ram
https://developer.android.com/topic/performance/memory-management
Understanding Firmware naming:
N986USQU1ATGM
N=Note
986U or F etc, the model of device
SQ, FX etc = CPU and model specific
U,S,E = Update, Security, Engineering, respectively
1,2,3,4,5 etc = bootloader revision (This is important! You cannot go to a previous revision)
A,B,C,D = Android version
T, U = Year (T=2020, U=2021 etc)
A,B,C etc = month (January A - December L)
1 - 9 and then A - Z =build compilation. This basically means how many builds there are in a month. They start at 1 and go to Z
So N986USQU1ATGM would be
N968-U-SQ-U-1-A-T-G-M
N968U (Note 20 Ultra Carrier version), SQ (Snapdragon), U (Update), 1 (Bootloader version), A (Build 10), T (2020), G (July), M (22nd build)
How to enter Download Mode:
Turn off the device.
Connect USB cable to your PC (Leave it disconnected from the phone)
Press and hold down the Volume Up and Volume Down buttons. While they are still pressed, plug in the USB cable into your phone.
The phone will go into download mode press volume up. In Odin you will see that phone is added.
Dirty Flash:
I would only do this if you are having to manually update to the newer firmware and would not do it if you are coming/going to U/U1 or from beta firmware or if you are on an old firmware. I'd also highly recommend doing a back up prior to the doing this
Load these into Odin
BL
AP
CP
HOME_CSC
Do NOT flash CSC or USERDATA, either of these WILL wipe your device
This is a "dirty flash" and these can sometimes cause issues. Keep in mind if things start going sideways and stuff starts not working right, your first step to a solution will be to wipe the device.
Tips on flashing U1 Firmware:
You will have to wipe, can NOT dirty Flash going between U and U1 firmware
Use the patched ODIN linked in post #2 or #3, Odin3_v3.13.3b (They are exactly the same)
Have an active US Carrier SIM installed to get carrier features
If you get your CSC Stuck on XAA/XAA/(Insert your carrier here), and can not get Carrier options back.
PIT files
https://ihax.io/samsung-pit-files-explained
plus_rlus said:
I know my questions are stupid, but I'm impasse. It seems that there is much less information about designing for mobile devices than PCs. Could you link some articles on this? As the last article I read this, but it didn't help much, because I compare too much what I learned on PCs.
Click to expand...
Click to collapse
The are no stupid questions.
Questions are asked when we do not understand something and want to learn.
There is nothing wrong or negative about asking questions.
Questions are a part of how we learn.
Cheers.
plus_rlus said:
<SNIP>
What kind of memories and storages are most commonly found in Android devices? One main memory (i.e. RAM)? One Flash memory for firmware (i.e ROM)? Another separate flash drive that acts as mass storage? Possibly SD card and USB stick as external mass storage?
What is firmware on Android devices?
What is the bootloader in (located in MBR part) on Android?
Linux is the kernel used by Android, which is started by the bootloader? After that, Android continues to boot, how?
A pile of terms, which I have ambiguities:
Bootloader; What's it like on Android? It is often characterized as hardware specific. So is it the case that the bootloader in Android is firmware? So in Android, the firmware runs the tasks of the PC world BIOS and bootloader (located in the MBR part), and then starts the Android located on the mass storage?
Recovery; What is this technically?
Android ROM; I can't understand this. As far as I know, Android is an operating system located mass storage, not Read-Only-Memory firmware.
Rooting; On a PC, we are used to the fact that the owner of the device has root rights. Is it just that the manufacturers have decided to set the default root password to some generated random string, and by default, the user only has access to the basic user account?
After the above has been answered, I would like someone to explain to me (separately) technically, starting from the hardware level (where and how), how do Android devices booting and work? Links to additional information are also welcome. hank you very much! If anyone can answer my questions, thank you very much!
Click to expand...
Click to collapse
Firmware is the hardware specific drivers, library files and other resources that are supplied by the manufacture(s) and are chipset specific.
The firmware is proprietary and normally closed source. Basically the parts that make the hardware work.
The bootloader is what actually boots the device.
This is supplied by the device manufacture(s) and is device specific.
It is separate from the system.​
Recovery is a mini Android environment.
- Factory (Stock) recoveries are restricted to the user but have unrestricted (root) access to the device.
- Custom recoveries (TWRP, OrangeFox, ..) allow the user unrestricted (root) access to the device.
Android ROM (rom) is the actual system (OS) and normally you would include the version that you are running.
Stock roms - Google 12L, AOSP xx, OOS 12, MIUI xx, ColorOS xx, ...
Custom roms - Lineage 19.1, crDroid 12.1, AospExtended 12.1, ...
In computer terms it would be..
Windows 7, Linux (Fedora 34), MacOS Monterey.​I am not sure what the current versions of MIUI and ColorOS are, hence the xx.​
Once the bootloader boots the device, a few things can happen.
- The system boot image (system kernel) takes over and boots the device into system (rom).
- The recovery boot image (recovery kernel) takes over and boots the device into recovery (mini Android environment).
- If system fails to boot, device reboots into recovery (Recovery Party) if recovery can boot.
- If no boot image takes over, you will stay in the bootloader, reboot into some special mode or just a good old fashion boot-loop.
There have been a lot of changes to Android though the years..
Each device, manufacture, Android version.. can be different from another.
The most common bootloader is (or supports) fastboot but, this is manufacture and device specific.
Not to be confused with fastboot_d (new story that started with Android 10/11?).​This has also changed though the years, some manufacture use their own variation of bootloader.
HTC had H-BOOT, Samsung does their own thing along with some other manufactures.
Rooting....
By default the substitute (switch) user su command is removed from Android.
This is what most refer to as superuser since it defaults to root user if you do not specify a substitute user.​
This has been a long and changing story in the Android world also.
Old but, well worth the read.
How-To SU - [chainfire.eu] - Link
The current most popular used root solution is Magisk.
It is a little more than just su. ​Magisk - [GitHub] - Link
---
It might be easier if you see an actual partition table.
Nexus 7 16 Gig WiFi - [PastBin] - Link
Might as well make it an ... interesting one.
In this example, userdata only has 1.2 Gigs since the rest is used by other partitions.
userdata is mounted as /sdcard.​
Save for boot, cache, system, misc, recovery and userdata.
The other partitions would be considered firmware.
When the device boots, the partitions get mounted to /dev/block.
Hope it helps more than confuse.
Cheers.

Categories

Resources