Related
Hi,
this thread is meant as a starting point for every kind of questions. I will write everything I know into this thread and update it (hopefully) frequently
Here are the topics handled for now (if you have any other questions you want to have answered you can PM me, so I can try to handle it if I know the solution and add this to my to do list in point 5!!! ):
1. How can I root my phone
1.1 General information/Basic adb-commands
1.2 Do I have to create a goldcard?
1.3 Tools you need
1.4 The automated way
1.5 The manual way (recommended by the author)
1.6 Problems and (hopefully good) solutions
1.7 References
2. Flashing images/ROMs
2.1 What is a recovery image
2.2 What is a boot image
2.3 How to flash/tools needed
2.3.1 Creating a Goldcard
2.4 Where can I get an overview of the existing ROMs?
2.5 Problems during flashing and solutions
2.6 References
3. Information about the Tattoo/Useful stuff
3.1 How to install busybox?
3.2 Can it perform multitouch?
3.3 How to increase battery life?
3.4 Using own ringtones for calls/sms
3.5 How to disable data transfer with a custom ROM?
3.6 How to make the Tattoo ring louder?
3.7 How to replace the home screen?
3.8 Disabling xxx-synchronisation with Google-servers
3.9 Backing up apk's and data to your PC
3.10 How to enable more languages on my mobile?
3.11 How to manually delete system apks? Alternatively with GUI?
4. Dev-Goodies
4.1 Modifying update.zips and resigning them
4.2 Modifying resources in apk-files and resigning them
4.3 Installing apks via adb for getting exact error codes if installation fails
4.4 Everything related to ROM cooking
5. Things I will do better in this thread due to user request
Please note: I won't be giving tutorials about Android-apps usage beside the one mentioned in my tutorial!
Let's start now:
1. How can I root my phone?
1.1 General information/Basic adb-commands
Rooting a phone enables you to do things, which normally aren't possible for the average user like:
- Removing apps which were preinstalled by the provider (like Orange, Vodafone, etc.). My Tattoo had Vodafone apps for buying music and other sh*t, which was installed on the system partition (to which a "normal" user has no rights to write to, including deleting).
The Tattoo was successfully rooted by a bunch of guys here, namely -bm-, mainfram3 and Coburn64 (maybe, I don't remember quite correctly ). Also the Tattoo was the first phone having a security mechanism hindering a user to mount the filesystems as read/write, which had to be overridden by remapping the read only memory region to a read/write one. This is done by the module Tattoo-hack.ko, also made by mainfram3. He also created the first boot.img, which enabled su directly from adb and loading Tattoo-hack directly from boot on.
A few words about adb:
ADB is a tool for communicating from the PC with the mobile phone. For this a service is running on the phone enabling the communication via Terminal Emulator. Here are the most useful adb-commands:
Code:
adb push localFileFromPC /path/on/mobilephone
-> pushes a file "localFileFromPC" to a specified location on the phone
adb pull /path/to/file pathFromPC
-> receives a file from the phone and stores it to "pathFromPC"
adb remount
-> This is only possible in custom ROMs, remounts the file system to r/w automatically
adb shell "command"
-> executes "command" and returns to the computer shell
adb shell
-> opens a shell session on the phone (from here on you have to be very careful! Also you can execute now normal linux commands like rm, mv, ls, chmod and so on, but not cp (this can done through busybox)). You will have to use this more often, so get used to it ;)
1.2 Do I have to create a goldcard?
I read this question quite often. For rooting, you don't need it, but for SIM-locked phones you can't flash custom unbranded ROMs (I think).
A guide to create a goldcard follow this link: http://forum.xda-developers.com/showpost.php?p=5179788&postcount=1 (thanks to MiSSigNNo to this point)
1.3 Tools you need
A complete set of tools can be found here Feel free to mirror it:
http://rapidshare.com/files/403766494/Tattoo.rar.html
This package contains:
- adb binaries for Windows (sorry Linux users )
- su (Please note: use the su-binary attached in this post, not the one in the archive!!!!!)
- m7 exploit
- Amon_RA recovery.img
- mainfram3 boot.img
- flash_image binary
- tattoo-hack.ko
1.4 The automated way
This method was created by maverixx and can be found here. This basically consists of a package doing everything you need by itself. It roots the phone and flashes maverixx recovery.img, which (no offense) I don't like as much as I like Amon_RA's one!). Just click the batchfile and it does the rest (you have to connect your phone via USB to your PC though ).
If you want to use the automated way, but flashing Amon_RA's recovery, just replace the recovery.img from maverixx' package with the recovery.img provided in my archive file (see 1.3 for the link).
In my time here I noticed quite a few users experiencing problems either with a fully functional su or with the recovery image not flashing certain update.zip packages. It seems to be a matter of luck.
1.5 The manual way (recommended by the author)
I personally like what is done when and how, that's why I recommend the manual way. So let's get down to business Let's see if you know all the adb-commands I wrote here:
1. Let's say you have everything unpacked into C:\Tattoo
2. In your terminal (on your PC) type:
- adb shell "mkdir /data/local/bin" (if it returns an error it means that the directory already exists, just proceed)
- adb push m7 /data/local/bin/
- adb push su /data/local/bin/
- adb push flash_image /data/local/bin/
- adb push tattoo-hack.ko /data/local/bin/
- adb push recovery.img /sdcard
- adb push boot.img /sdcard
3. We have every needed file on the phone now. Type now (we are still in your terminal):
- adb shell
$ cd /data/local/bin
$ chmod 766 m7 (I don't retain this step as mandatory, so if this process fails, just proceed)
$ while ./m7 ; do : ; done
lots of text until you see something like "wrote shell code", press enter 2 or 3 times enter to see:
#
4. Then perform this:
- # export LD_LIBRARY_PATH=/system/lib
- # export PATH=/system/bin
- # insmod ./tattoo-hack.ko
- # mount -o rw,remount /dev/block/mtdblock5 /data
- # mount -o rw,remount /dev/block/mtdblock3 /system
- # cat ./su > /system/bin/su
- # chmod 4755 /system/bin/su
- # chmod 755 ./flash_image
Click to expand...
Click to collapse
Questions?
1.6 Problems and (hopefully good) solutions
Q: How do I execute my command line tool?
A: On your Windows host, go to Start->Run...->type "cmd"
Q: Where is my adb? When I type it in my shell it says that it was not found!
A: The adb binary is found in the archive I supplied above or in the Google SDK. As my archive-file is quite smaller than the Google SDK you should take mine. Let's suppose your adb binary is unpacked in C:\Tattoo, then type:
Code:
Your\Current\Location> cd C:\Tattoo
C:\Tattoo> adb <command>
Q: adb says "error: device not found" when I try to launch the shell on the phone!
A: Connect the phone with the usb cable and make sure the sd card is not mounted as drive on your PC!!!
Q: When I want to copy something the phone returns that "cp" is not found! Also when I try to move a file, it says "cross-link device".
A: Well, copying from one partition to another is only possible either via busybox or via
Code:
cat file > /location/filename
Example:
cp /data/su /system/bin
is realized by typing
cat /data/su > /system/bin/su
Also make sure that system is r/w!!!
Q: flash_image returns write errors when flashing recovery/boot image!
A:
For boot: Try to redo the flash procedure
For recovery: Note that you can't flash the same recovery.img as the one already installed, so install another recovery.img first (like maverixx) and then Amon_RA's again. If it still doesn't work reboot, remount the partitions r/w, insmod tattoo-hack.ko and retry flashing.
Q: How can I unroot my device?
A: Just delete su from /system/xbin and restore the old boot.img. Alternatively see here for retrieving a stock ROM to flash it on your phone.
PM me with more questions and I'll post them with the possible solution.
1.7 References
- Zecanilis EXCELLENT Root-Recovery-Flash images thread
- maverixx' One-click root method+recovery thread
- Coburn64's Newbie guide for manual rooting (recommended reading!)
2. Flashing images/ROMs
2.1 What is a recovery image
A recovery image is not only useful to flash custom ROMs on your device. It also enables you to backup your entire phone contents to restore it completely in case of a brick, if anything should happen...especially SIM-locked mobiles should be backed up as soon as possible. Also many recovery image modders add several non-standard features like mounting the SD card while in recovery mode or enabling adb support, etc.
2.2 What is a boot image
The boot image not only contains the kernel which brings up your Tattoos, it only can be modified to load up modules enabling ext2/3 support, loading camera, remapping read only code to an r/w area (tattoo-hack.ko), etc. Without a working boot.img, don't even bother trying to boot the phone (maybe if you do a logcat it returns something useful to solve this problem )
2.3 How to flash/tools needed
Execute steps 1 to 4 in topic 1.5 first!
5. Now comes the hard part:
- # ./flash_image boot /sdcard/boot.img
- # ./flash_image recovery /sdcard/recovery.img
it can be that flash_image reports errors in the last step (recovery.img step), but another user said it would be still working to boot to recovery...but to be sure (if you got the error!!!) flash maverixx recovery.img and then again the one I supplied in my archive (Amon_RA)
Reboot once and when you connect with adb to your phone you should see the difference
Click to expand...
Click to collapse
2.3.1 Creating a Goldcard
This is a post I took from MiSSigNNo, kudos to him:
Creating the Gold Card:
[...]
4. We need the android-sdk tools, we can find them here: http://developer.android.com/sdk/index.html download them, and unzip in a folder maybe in C:\androidtools
5. Go the the Command line (Start->Execute->write cmd and OK), and there you should find where you unzip the android-sdk tools, example cd c:\androidtools\tools
6. Run this command "adb shell cat /sys/class/mmc_host/mmc1/mmc1:*/cid" if you had the microSD in the drive you will find a long number like:
532600bd227d9c0347329407514d5402
7. Go to this page to reverse it: http://hexrev.soaa.me/ and copy the code reversed:
In our example it will be: 00544d5107943247039c7d22bd002653
8. Go to this page to generate your GoldCard image: http://revskills.de/pages/goldcard.html
And put your reversed number and you email. You will receive an email with a file called "goldcard.img"
9. Now you need an Hex editor like HXD. Download it from: http://download.cnet.com/HxD-Hex-Edi...html?tag=mncol
10. Exactly the same as the instructions I pasted above:
11. Install and launch HxD Hex Editor program. (make sure you use "Run as Administrator" under Vista and win 7)
12. Go to Extra tab > Open Disk. Under Physical disk, select Removable Disk (Must be your SD card), uncheck “Open as Readonly), click OK. (BEWARE, MUST BE UNDER PHYSICAL DISK NOT LOGICAL DISK, THIS MISTAKE MADE ME BIG PROBLEMS)
13. Go to Extra again, Open Disk Image, open up goldcard.img which you’ve saved/unzipped earlier.
Now, you should have two tabs, one is your removable disk, the other is goldcard.img. Press OK when prompted for “Sector Size” 512 (Hard disks/Floppy disks), click OK.
14. Click on goldcard.img tab. Go to Edit tab > Select All, edit tab again > copy.
15. Click on the “removable disk” tab. Select offset (line) 00000000 till offset (line) 00000170 (including the 00000170 line), click on Edit tab and then Paste Write.
16. Click on File > Save. now you can exit the program. You now have a gold card.
[...]
Click to expand...
Click to collapse
2.4 Where can I get an overview of the existing ROMs?
Look it up here (Excellent work liderzre)
2.5 Problems during flashing and solutions
Q: HEEEEELLLPPP! flash_image says that it couldn't write to some memory addresses! What can I do?
A: Don't panic. First make sure to have loaded tattoo-hack.ko, remounted system and data to r/w and then try again with another recovery.img (either maverixx or Amon_RA). Flashing the same recovery.img again WON'T WORK!!!! That's why you have to take a little detour by first flashing another recovery image.
Q: How do I boot to recovery??
A: Type in your command line while the phone is plugged in:
Code:
adb shell "reboot recovery"
. If this doesn't work, turn off your phone, hold down the home-button and press the power-button. Then when the Tattoo logo can be seen, release the home button and the recovery screen should be seen
2.6 References
- Zecanilis EXCELLENT Root-Recovery-Flash images thread
- maverixx' One-click root method+recovery thread
3. Information about the Tattoo/Useful stuff
3.1 How to install busybox?
Load the busybox binary here (select the one with arm6 at the end). Put this binary onto your data or system partition (I suggest /system/xbin) and now there are two ways to install/enable it. See below
Method 1 (will extract EVERY FEATURE, but consumes A LOT of your disk space so be careful or switch to method 2)
Do this in your command line:
Code:
adb remount (make it r/w if not done already)
adb shell "mkdir /system/xbin" (create dir if it doesn't exist)
adb push busybox /system/xbin (please make sure to have busybox in the same directory as adb ;) )
adb shell
cd /system/xbin
./busybox --install
Method 2 (saves your precious disk space )
Do this in your command line
Code:
/system/xbin/busybox --install -s /system/xbin
3.2 Can it perform multitouch?
Nope, the Tattoo has a resistive touch screen, which is known to be NON-multitouch...newer generation or high-end phones usually have capacitative screens. My suggestion is not taking the Nexus One anymore, since their touch screen type supports only 2 fingers at once, while phones like the Samsung Galaxy S have a SUPER responsiveness and sensibility (and of course 10 fingers support).
3.3 How to increase battery life?
Okay, here are little tips how to increase battery life - mine holds 7 to 8 days and I surf, call ppl and sms almost every day:
1. Flash either fyodor 0.6.4.2 or Abyzou 2.1.9 - my favourite is fyodor ones (if I still would have a Tattoo, of course )
2. Download APNd roid from the market or here and disable your 3G Internet connection (for activating it, just start the program again!)
3. If you see that you have NO RECEPTION AT ALL in one place (at work for instance), turn off your phone as this will DRASTICALLY decrease battery life because the phone tries constantly to search for a network it can log on to.
4. Try to keep your phone in normal temperature areas (between 20 and 27 degrees celsius = 68 - 80.6 degrees fahrenheit)
5. Kill unneeded apps automatically (there are quite a few apps doing this)
3.4 Using own ringtones for calls/sms
Create a folder called "media" on the root of your SD card and a sub-folder called "audio" there you have to create one folder called "notifications" for SMS and "ringtones" for call sounds. Place every desired track into these folders and reboot your phone. You should see the entries now when choosing ringtones. Alternatively just load "Ringo Pro", a really powerful tool also able to display SMS pop-ups and much more.
3.5 How to disable data transfer with a custom ROM?
As already explained above, load APN droid from the market or here.
3.6 How to make the Tattoo ring louder?
There is a little app called "Louder Volume Hack" enabling your phone to ring much louder than normally. You can load it on any popular w*rez-site Unfortunately I cannot enter the link to the app here or PM it. Any questions requesting a link to this app will be deleted instantly, so don't bother trying and use Google. There are several buttons displayed, but for better visibility I suggest enabling the Widget and hacking the system there. Also please note that ROOT access is required!! Refer to section 1 to root your phone.
3.7 How to replace the home screen?
There are two ways to do it. Method 1 is the easier one, but runs the Google Launcher and the replacement laucher in parrallel, which implies more CPU usage and battery drain. Method 2 is the more brutal one, but enables you to run just one launcher.
Method 1:
Install the replacement home app and press the home button. A dialog should appear asking you which Home Launcher should be used.
Method 2:
Put your home replacement apk onto the root of your SD and make sure you have busybox installed and /system mounted as writeable. Rename the Home replacement apk to Launcher.apk and fire up adb shell:
Code:
mv /system/app/Launcher.apk /system/app/Launcher.apk.old && mv /system/app/Launcher.odex /system/app/Launcher.odex.old && cp /sdcard/Launcher.apk /system/app && chmod 755 /system/app/Launcher.apk
Should be a pretty generic approach
3.8 Disabling xxx-synchronisation with Google-servers
Go to settings, data synchonisation and disable the entries you don't want to have synch'ed with Google. Since it's long time ago since I did this (remember that I don't own a Tattoo anymore) the procedure can be slightly different from ROM to ROM.
3.9 Backing up apk's and data to your PC
By popular request, here a topic about how to backup apk's and their corresponding data manually (can be done separately, too if you want just one of the two). Doing it with the tar command HOPEFULLY preserves also all permissions!!! Check it:
Hit up adb shell and make sure have busybox:
Code:
for the apks
# tar -cvf /sdcard/dataAppsBackup.tar /data/app
for the data
# tar -cvf /sdcard/dataDataBAckup.tar /data/data
If you want to decompress these files again do:
Code:
# tar -xvf /sdcard/dataAppsBackup.tar -C /data
# tar -xvf /sdcard/dataDataBackup.tar -C /data
Note that these files won't be compressed! If you want to save some disk space on your SD then add the parameter 'z' (without the quotes) in the tar arguments (e.g. tar -cvfz for compressing and tar -xvfz for decompressing)
3.10 How to enable more languages on my mobile?
There is an app called MoreLocale in the market enabling you to select more languages. Download it, it's free
3.11 How to manually delete system apks? Alternatively with GUI?
For deleting manually you only need root-access. With GUI you need RootExplorer (buy it or do what you need to do to get this app-but with these features I would suggest to buy the app ).
Note: I do not take any responsibility if you delete the wrong apk and you lose any functionality of the phone. Do this only if you know what you're doing!
The manual way:
Connect the phone via USB, fire up adb shell and type:
Code:
insmod /LOCATION TO [URL="http://TATTOOHACK.KO/tattoo-hack.ko"]TATTOOHACK.KO/tattoo-hack.ko[/URL]
mount -o rw,remount /dev/block/mtdblock3 /system
cd /system/app
rm NAMEOFAPK.apk
The GUI way:
Install RootExplorer, open it, navigate to /system/app and press the little "Mount R/W" button at the top of the screen and begin deleting
4. Dev-Goodies
4.1 Modifying update.zips and resigning them
See this thread and get enlightened
4.2 Modifying resources in apk-files and resigning them
Same procedure as above:
1. Extract the file with WinRAR/WinZIP, delete the contents of META-INF and start modifying what you have to modify
2. Pack everything again into a ZIP file and sign it with the signapk.jar file (can be found somewhere in the forum or here). The syntax of how to use this can be found in the last link (yes, it's only 10 KB ).
4.3 Installing apks via adb for getting exact error codes if installation fails
Prerequisites: Either know the exact path to the apk or put it into the same directory as your adb executable and hit up your command line:
Code:
adb install /path/to/apk/file.apk
OR
adb install file.apk (implies that apk is located in same dir as adb)
4.4 Everything related to ROM cooking
Check this link (thanks to Decad3nce) and this one (thanks to mxlaser).
5. Things I will do better in this thread due to user request
- Nothing
The end for now.
Note: If you think that my thread is good, then please rate it with 5 stars
Changelog:
Version 1.0
- Initial draft
Version 1.1
- Added complete topic 1 now
- Fixed layout and some typos
Version 2.0
- Added complete topic 2 and half of 3
Version 2.1
- First prototype with all topics finished (will rework parts which are not quite understandable)
Version 2.2
- Added new question to 1.6
Version 2.3
- Added section 4.4 -> Everything related to ROM Cooking DUDEEEESSSSS
Version 2.4
- Added 3.11 How to manually delete system apks? Alternatively with GUI?
Version 2.5
- attached working su file - thanks to lovenemesis for this
Version 2.6
- added some mirrors for the Tattoo.rar archive - thanks to emb0re for providing some space
Version 3
- added topic about creating gold cards (2.3.1)
hi
very good initiative stuck
Great work
Very intuitive guide for beginner.
Though as an experienced and new android application developer, it really took me a whole afternoon to understand every step of the whole process. I am sure this guide would save many others wonderful Saturday afternoon.
Nice Work
Great Work From You Sir. This Will Be Useful for Beginners I Think This Will Save Lot Of Our Time's. And Mods Too
Thanks for the feedback...I hope that I can fill many topics tomorrow
P.S.: Indeed this is meant for the many unexperienced users who desperately want to flash custom ROMs but don't know how to do it...this also spares a lot senseless thread-posts I hope...^^
Dude
SSj Man Can You Add Tutorial Abt How to get the Apk file which i download from market in my mobile. if that is possible
3. We have every needed file on the phone now. Type now (we are still in your terminal):
- adb shell
$ cd /data/local/bin
$ while ./m7 ; do : ; done
lots of text until you see something like "wrote shell code", press enter 2 or 3 times enter to see:
#
Click to expand...
Click to collapse
For me I need to add execute permission for m7 before expolit, with
Code:
chmod 766 m7
.
jagan_3400 said:
SSj Man Can You Add Tutorial Abt How to get the Apk file which i download from market in my mobile. if that is possible
Click to expand...
Click to collapse
You mean getting the apk from your mobile on your PC for example?
lovenemesis said:
For me I need to add execute permission for m7 before expolit, with
Code:
chmod 766 m7
.
Click to expand...
Click to collapse
Hm, normally when you push the file via adb it will have user permissions, which includes execution...but I will add it to exclude any possible error...thanks for the info.
It might be worth to mention this in 3.1 Busybox installation:
Code:
adb push busybox /system/xbin/
I accidentallly use "adb push busybox /system/xbin" without the ending "/". Well, you know the rest part of the story...
Hmm, probably this one first, at least for the stock HTC ROM
Code:
adb shell "mkdir /system/xbin"
PS: Kind of weird for its name xbin, not the usual sbin on desktop linux. ;-)
TheSSJ said:
You mean getting the apk from your mobile on your PC for example?
Hm, normally when you push the file via adb it will have user permissions, which includes execution...but I will add it to exclude any possible error...thanks for the info.
Click to expand...
Click to collapse
Maybe it's because I am using a Fedora box, which the default permission for files in $HOME does not include execution.
lovenemesis said:
Hmm, probably this one first, at least for the stock HTC ROM
Code:
adb shell "mkdir /system/xbin"
PS: Kind of weird for its name xbin, not the usual sbin on desktop linux. ;-)
Click to expand...
Click to collapse
You're right, I added it already in the guide, thanks for the feedback. Well, /system/xbin isn't a "normal" directory indeed, but it was created for extra executables which normally aren't shipped in stock ROMs (like busybox).
4. Then perform this:
- # export LD_LIBRARY_PATH=/system/lib
- # export PATH=/system/bin
- # insmod ./tattoo-hack.ko
- # mount -o rw,remount /dev/block/mtdblock5 /data
- # mount -o rw,remount /dev/block/mtdblock3 /system
- # cat ./su > /system/bin/su
- # chmod 4755 /system/bin/su
Click to expand...
Click to collapse
I suppose after this step the stock ROM is rooted. Right?
But in Android Terminal Emulator gives me $ still. "su" reports an link_image error, which basically said about missing libbinder.so library.
Is it normal or I need to push an libbinder.so to /system/lib as well?
BTW: "adb shell " gives me # straightly.
Regards,
Hmm, I pushed another "su" binary to overwrite the one in Tattoo.rar. And now it works fine in Android Terminal Emulator.
Here is the su binary I use:
View attachment su.zip
Oops, Titanium Backup still refuses to work despite of working "su" binary.
What else should I do?
market not working
hi
i dont know why but the Market does not work for me can u give any solutions for the same im just not able to log in it keeps saying error i also tried with google mail and gmail id but no luck any suggestion pls
few questons kindly answer
hi
i have afew questions can u kindly answer
1. is wipe a must before flashing a new rom
i have flashed the Modoco rom and it was mentioned that this was not needed but i have read in many threads asking to do the same before flashing
2.to bring back contacts after flashing new rom can i use
a. backup pro or titanium backup
b. can i just use the out look sync and get back my contacts from my PC
3. if i restore the stock rom and latter on want to try one of the cooked roms do i need to do the rooting again ie does flashing stock rom remove the rooting
Note : i have been a WM user new to AM is why im asking such questions in the WM i have one app pim backup which would get back all my contacts in 1 min and when flashing any WM it will automatically wipe all the data from the phone this does not seem to be the case with AM is why i have asked above Questions
thanks in advance
lovenemesis said:
Oops, Titanium Backup still refuses to work despite of working "su" binary.
What else should I do?
Click to expand...
Click to collapse
Titanium Backup needs Busybox and su to work. If Titanium Backup tells you that it found BusyBox, then try to copy "su" to the following to locations:
/system/bin and /system/xbin
I think with the first it should work then.
haree said:
hi
i dont know why but the Market does not work for me can u give any solutions for the same im just not able to log in it keeps saying error i also tried with google mail and gmail id but no luck any suggestion pls
Click to expand...
Click to collapse
Do you use MoDaCo ROM or did u switch now to another? Normally the phone asks for log-in credentials when going online. When you enter them correctly, the login window should disappear and you should be able to access market...I know this sounds stupid, but check if you entered you PW correctly!
haree said:
hi
i have afew questions can u kindly answer
1. is wipe a must before flashing a new rom
i have flashed the Modoco rom and it was mentioned that this was not needed but i have read in many threads asking to do the same before flashing
2.to bring back contacts after flashing new rom can i use
a. backup pro or titanium backup
b. can i just use the out look sync and get back my contacts from my PC
3. if i restore the stock rom and latter on want to try one of the cooked roms do i need to do the rooting again ie does flashing stock rom remove the rooting
Note : i have been a WM user new to AM is why im asking such questions in the WM i have one app pim backup which would get back all my contacts in 1 min and when flashing any WM it will automatically wipe all the data from the phone this does not seem to be the case with AM is why i have asked above Questions
thanks in advance
Click to expand...
Click to collapse
1. As I told you via PM already: If the ROM is based on the same source ROM (HTC stock in your case) then a wipe is NOT required, but if you switch android version (AOSP, Vanilla, FroYo, Eclair) then you HAVE TO wipe.
2.
a) I had only problems with Titanium backup concerning restoring contacts. I would suggest using MyBackup Pro
b) Well, if you can sync to outlook, then I suppose yes, but I really doubt that these features are implemented in custom ROMs...
3. Well, if you mean restoring the NAND-backup and then flashing another cooked ROM (which are all rooted by default ), then no - you don't need to re-root. Only if you would flash the original/official HTC ROM which comes shipped as exe-file, but I don't see the sense in flashing this one...use your NAND-backups
TheSSJ said:
Titanium Backup needs Busybox and su to work. If Titanium Backup tells you that it found BusyBox, then try to copy "su" to the following to locations:
/system/bin and /system/xbin
I think with the first it should work then.
hi
thanks buddy for patiently answering all my Q
i got it now but i dont know why this Bl***dy market does not work what every i try ie when the net is on and ur browsing u see the E on ur phone screen and then the 2 white arrows flash this it self does not happen when i try to log in to market
just dont know what is wrong
right now im using Modoco and happy with it seems to be real fast and everything is working on this ROM
Click to expand...
Click to collapse
I'm working to enable FM radio functionality, RX and TX on HTC Legend and other devices with TI FM chip.
I need help to get this done ASAP. I'm an experienced embedded Linux dev, but I'm pretty new to smartphones and Android.
A few weeks back I managed to muddle my way through on phone gold card creation, downgrading, rooting, CWMod (2.5 ?) installation, CMMod7 nightly install, S-Off and new Radio flash. Since then I haven't flashed anything and probably forgot half of what I learned.
So now I want to flash the best ROM for the purpose of figuring out the audio routing "secrets" of the HTC FM app. Any suggestions for the best ROM for that purpose ?
Next, I could use some pointers to the best posts or web pages to refer to for flashing the HTC Rom, and then later flashing back to CM7. As easy as possible. Can I do something Nandroid like and save the entire state of the phone to easily get me back to where I started with CM7 ?
Yes, I AM a dev, but very much appreciate easy to follow step by steps that don't leave me scratching my head wondering if I'll brick my device or create some other catastrophy . Eg: Should I ignore those error messages or not worry ? Do I have to reboot 5 times while clicking my heels ? Etc.
Once I get the above figured out, perhaps this thread can be used for discussion of the observations and any reverse engineering results.
Thanks !
Well, the best ROM would probably be BlaY0's, as it has the FM functionality. Take a nandroid of that and then install CM (as that's what your developing for, ye?). Then nandroid the CM and you can easily switch between the 2 without the need to set it up again.
BlaY0's ROM is based of the official HTC one, so it would probably do for the reverse engineering stuff. Thus I don't think you'd need to go back to a stock HTC ROM. If you do you can just flash a pre-rooted one (found here) and that would do it.
TheGrammarFreak said:
Well, the best ROM would probably be BlaY0's, as it has the FM functionality. Take a nandroid of that and then install CM (as that's what your developing for, ye?). Then nandroid the CM and you can easily switch between the 2 without the need to set it up again.
BlaY0's ROM is based of the official HTC one, so it would probably do for the reverse engineering stuff. Thus I don't think you'd need to go back to a stock HTC ROM. If you do you can just flash a pre-rooted one (found here) and that would do it.
Click to expand...
Click to collapse
OK, thanks GrammarFreak. BlaY0's ROM 0.7 it is.
Hate to be/seem so newb-ish....
So I'm running CM7 now. So:
(1) Run ROM Manager Backup.
(2) Watch phone go into recovery mode with red triangle and exclamation mark.
(3) Don't freak as the backup will take maybe 10-20 minutes or so.
(4) Phone reboots back to CM7 I presume.
(5) Pull any important data from sdcard including ROM backup files.
(6) Download http://blay0.r3volutionary.net/b-0.7.zip
(7) Run ROM Manager to flash Blayo.
(8) Reboot and mess around with Blayo ROM.
(9) When done messing, optionally save Blayo ROM and mods with ROM Manager Backup.
(10) Use ROM Manager restore to return to CM7 ROM.
Sound good ? I don't even have to remember which key when booting brings up CWMod recovery mode ?
I couldn't find a canonical web page documenting CWMod/ROM Manager and it's usage.
Gee my phone has been stuck in red mode for a while now...
EDIT: So I'm reading threads and getting the impression the red triangle is not what I want. So I run "adb reboot" and will check and see if the backup looks good.
I can understand that the "community" has to somehow pull together to pool info, but my experience seems typical of what so many face.
In order to figure out some sort of semi-foolproof method of doing XYZ it seems I have to search threads all over to collect the full info. 50-100+ page threads are a challenge. Do I start with the first few posts or pages of posts, or should I skip to somewhere near the end for latest info ? Yes I can read to see if first posts are updated etc.
Before I started the rooting process on my phone, I read QUITE a few big threads from begin to end. And I made LOTS of notes to try and figure it all out and avoid problems. And my head got so full it almost exploded, and I almost sorta gave up, dived in, did a few more google searches on the way and thankfully finally ended up with a nicely open device.
But it all seems so ridiculously difficult, UNLESS you happen to come across some very succinct, accurate and informative HOWTO somewhere that works well for you.
/rant off
Ok, I want you to do a couple of things:
Forget about ROM manager, it's a piece or crap and it creates more problems than it solves.
So, you said you performed S-OFF, correct? Did you let the S-OFF procedure install ClockworkMOD recovery? Given the red triangle of doom I doubt it. No worries. Here's what you do:
Download this (it's the ADB tools) to a known location. Then extract the zip to a known location. Open a command window in that location (for the sake of this guide: C:\ADB) So open CMD (start, run, type CMD, hit enter) In CMD type "cd C:\ADB". Plug your phone into the computer (make sure you're using CM). Debugging mode should be on (you'll get a notification in the status bar of your phone). Now, I want you to download this (CWM 2.5) and save it to C:\ADB. In CMD type "adb push recovery.img /sdcard" Wait for it to complete. It will output a file-size, time taken and resultant transfer rate. When it's completed type "adb shell". You'll end up with a "#" and nothing else (if you get a "$" just type "su" and hit enter, and on the phone's screen accept the Superuser request). Now, type "flash_image recovery /sdcard/recovery.img", let it do it's thang. When you see the "#" type "reboot recovery", and your phone will reboot to CWM. This is what I refer to as a win
Now, from clockworkMOD you can use the trackball (move and click) to select "backup/restore" then "backup". Let it do its stuff. Once backed up you can flash B-0.7 and then back that up. Note down the name of each backup so you know which is which
TheGrammarFreak said:
Ok, I want you to do a couple of things:
Forget about ROM manager, it's a piece or crap and it creates more problems than it solves.
So, you said you performed S-OFF, correct? Did you let the S-OFF procedure install ClockworkMOD recovery? Given the red triangle of doom I doubt it. No worries. Here's what you do:
Download this (it's the ADB tools) to a known location. Then extract the zip to a known location. Open a command window in that location (for the sake of this guide: C:\ADB) So open CMD (start, run, type CMD, hit enter) In CMD type "cd C:\ADB". Plug your phone into the computer (make sure you're using CM). Debugging mode should be on (you'll get a notification in the status bar of your phone). Now, I want you to download this (CWM 2.5) and save it to C:\ADB. In CMD type "adb push recovery.img /sdcard" Wait for it to complete. It will output a file-size, time taken and resultant transfer rate. When it's completed type "adb shell". You'll end up with a "#" and nothing else (if you get a "$" just type "su" and hit enter, and on the phone's screen accept the Superuser request). Now, type "flash_image recovery /sdcard/recovery.img", let it do it's thang. When you see the "#" type "reboot recovery", and your phone will reboot to CWM. This is what I refer to as a win
Now, from clockworkMOD you can use the trackball (move and click) to select "backup/restore" then "backup". Let it do its stuff. Once backed up you can flash B-0.7 and then back that up. Note down the name of each backup so you know which is which
Click to expand...
Click to collapse
Thanks for the newb-friendly instructions. Much of I don't need, but may help others.
I'm running Linux, I've had adb etc installed for 2 weeks. I've got the SDK installed w/ Eclipse but never tried it, but have done App Inventor. And I've been poking around in the innards of the various source codes, binaries, firmwares and other files for the last 2 weeks too.
OK, I'll "Forget about ROM manager" and just use CWM after manually rebooting into it with Volume Down or whatever.
I'm pretty positive I'm S-OFF and have CWM 2.5.0.0.7 or so installed. ROM Manager says so. I have CWM on before I S-Offed using the Bell/Virgin modified alpharev boot disk.
I'll do the backup manually with CWM later tonight when I get back to this. I checked the SD and the backup isn't there, although there are still 3 backups I took when I installed CM7 2 weeks ago.
So I guess I do a complete flush or wipe or whatever when installing the new (or a backed up) ROM ? And since the backup is a nandroid type it will absolutely restore to exactly the same state as when the backup was taken ? But the SD card is not touched...
EDIT:
"adb reboot recovery" gives me red triangle of doom.
"adb reboot bootloader" gives me AlphaRev and I see S-Off and HBOOT 1.000000000
Did AlphaRev remove CWM ?
Given that you get the red triangle we can assume you don't have CWM installed to /recovery, you have it in fakeflash. Nothing inherently wrong with that, just FYI
As for your rant in post numero uno, I've often considered trying to put together a comprehensive "document" on the matter, but it'd take an age and would probably raise more questions than it'd answer.
"adb reboot recovery" gives me red triangle of doom.
"adb reboot bootloader" gives me AlphaRev and I see S-Off and HBOOT 1.000000000
Did AlphaRev remove CWM ?
Click to expand...
Click to collapse
See above about fakeflash. You could well use the image I linked above and use flash_image on the phone or fastboot to flash it
Fakeflash is pretty easy, I either do that or do my business in rom manager as I find that easy.
Rom manager method for installing a new rom:
If rom manager isn't installed, do so from the market
start up rom manager
tap "backup current ROM" (I suggest naming your backup, I just use the rom name)
Let it reboot and do it's thing
When it's booted back into CM7, open up rom manager again
tap "install ROM from SD card"
browse your sd for your rom and tap it.
You are presented with 2 check box options
Since we already backed up make sure "backup existing rom" is unchecked
If you are flashing a new rom, make sure "Wipe Data and Cache" is checked
If you are flashing a newer version of the same rom, you can leave this area unchecked as it will not erase the stuff stored on the phones built in memory
Press ok, let it do it's thing and thats it.
Place the fakeflash update.zip from http://forum.xda-developers.com/showthread.php?t=698404 on the root of your sd card
turn off your phone
Hold the volume down button as you press the power button
using the volume buttons, navigate to "recovery"
press power
your phone will reboot to th red triangle (of DOOOM)
Don't panic, hold volume up and press power (if it gives you an error just wait few seconds)
Using the volume buttons to scroll and power for enter choose "apply sdcard:update.zip"
Use the trackball and go to "Nandroid" if you are using ClockWorkMod 2.5.xxx fake flash or "backup and recovery" if you are using ClockWorkMod 3.xxx
hit "backup"
Let it do it's thing
If you're installing a new rom, scroll to "wipe data/factory reset", wait, then choose "wipe cache partition". If your installing a newer version of the same rom, don't bother.
Scroll to "install zip from sdcard"
scroll to "choose zip from sdcard"
choose your zip, let it do it's thing, and thats that.
You're SD is not touched at all during flashing, no need to backup those files.
Wow, can't believe I typed all that out...
TheGrammarFreak said:
As for your rant in post numero uno, I've often considered trying to put together a comprehensive "document" on the matter, but it'd take an age and would probably raise more questions than it'd answer.
See above about fakeflash. You could well use the image I linked above and use flash_image on the phone or fastboot to flash it
Click to expand...
Click to collapse
Re: rant, don't want to come off as complaining, I KNOW documenting semi-foolproof procedures is tons of work, to do properly. I understand a big problem is consideration of the large set of combinations of ROMs, recoveries, apps, S-On/S-Off states, Radios, etc.
OK, cool, I want "realflash" type recovery then. I guess that's one reason to have S-Off ?
I had to slightly alter your first command by appending a '/'.
EDIT: WOOHOO ! Success I think ! Feel free to skip the rest of this post unless you want to hear the details of my adventure...
Thank you ! Editing this post the last hour I wrote "Success ! " here anticipating such, but alas, I have some issue.
I don't know if I have to be extra patient as deodexing happens, Or if I'm stuck in some boot loop... I see "HTC quietly brilliant" and screen flashing on and off and re-writing the HTC spam.
Re: HTC FM app. OK, cool, I see :
ls -l /system/app/HtcFMRadio.apk
-rw-r--r-- root root 826176 2008-08-01 07:00 HtcFMRadio.apk
And bluetooth. Is there any way to switch normal media output, like from TuneIn radio etc, to my cheap new bluetooth headset ? I pushed the button in CM7 and I see I could start a voice dial, but I figured BT would take over all audio I desired routed through it.
-----------------
I did:
adb push recovery.img /sdcard/
adb shell flash_image recovery /sdcard/recovery.img
adb reboot recovery
In the CWM menu I had to select "Nandroid", and then "Backup".
That completed.
I didn't want to bother rebooting, so manually grabbed the backup files:
adb shell ls -l /sdcard/clockworkmod/backup/
adb shell ls -l /sdcard/clockworkmod/backup/2011-02-27.03.19.57/
mkdir cm7backup-2011-02-27.03.19.57
cd cm7backup-2011-02-27.03.19.57
adb pull /sdcard/clockworkmod/backup/2011-02-27.03.19.57/boot.img
adb pull /sdcard/clockworkmod/backup/2011-02-27.03.19.57/cache.img
adb pull /sdcard/clockworkmod/backup/2011-02-27.03.19.57/data.img
adb pull /sdcard/clockworkmod/backup/2011-02-27.03.19.57/nandroid.md5
adb pull /sdcard/clockworkmod/backup/2011-02-27.03.19.57/recovery.img
adb pull /sdcard/clockworkmod/backup/2011-02-27.03.19.57/system.img
Then to be sure:
cat nandroid.md5
md5sum *.img
Yes, looks good ! Now for Blayo:
cd ..
adb push b-0.7.zip /sdcard/
Goto CWM. Version 2.5.0.1, I had a 7 at the end before. Fine I'm sure.
Use volume up/down to select install from a ZIP. Press power to select. Oh, oh, shoulda used the trackball switch as it powered off.
Whoops, press power again and screen comes back, LOL. Choose zip from sdcard and use trackball switch this time. Move and select Blayo b-0.7.zip
Wonderfully wacky confirmation. Error message saying it can't find the zip file. Hmmm....
Reboot a few times and finally do "adb reboot recovery" and retry install from ZIP.
No go, get:
-- Installing: SDCARD:b-0.7.zip
Finding update package...
Opening update package...
E:Can't open sdcard/b-0.7.zip
(bad)
Installation aborted.
Try to open 98 MB zip file. No go. AHA ! corrupted file.
Try download from mirror 2: http://www.dkmdesign.dk/custom_roms/blay0/b-0.7.zip File is supposed to be 126 MB.
Gee I'm glad there's an unzip process that checks the integrity of ROM flashes.
So again:
adb push b-0.7.zip /sdcard/
And install, running..... Done !
Try to use power button to reboot. Use back key and "reboot system now". Cross fingers and offer the gods sacrifices...
See androids on skateboards again. Recall I may have to be patient as deodexing happens... See "HTC quietly brilliant" spam,,, in this context,good. Waiting....
Waiting.... screen flashing on and off and writing the HTC mind control spam.
Try reboot when tired of waiting and same thing. AFAICT, from "adb shell ls * etc" on the filesystem, Blayo ROM is installed but just won't stop flashing the HTC logo.
speedyink said:
If you are flashing a new rom, make sure "Wipe Data and Cache" is checked
Click to expand...
Click to collapse
Thanks. Maybe that's my boot loop or whatever problem now. I didn't recall seeing that option, but should be there with CWMod, so I'll try installing Blayo again after that.
There was some Wipe in main menu, and another w/ factory reset. Also in advanced menu I selected Wipe Dalvik cache. I left the Battery Stats alone. Hmmm. Naah !
Did all 3 wipe twice for good luck. Rebooted in between. Installed. Now waiting... Oh here's the HTC screen again. Time to read the Blayo thread to see how long to wait. etc.
Man what a pain ! Yet likely a world easier than the new paths I attempted to forge on my previous LG Optimus Chic resulting in a hard brick, LOL.
WOOHOO ! Success I think !
Welcome to the BlaY0 universe.. Just remember that many of us went through this journey as well to have our phone in same state Glad you got to fully download the BlaY0 rom from my mirror.. now happy reverse engineering..
Sent from my Legend using XDA App
whitetigerdk said:
Welcome to the BlaY0 universe.. Just remember that many of us went through this journey as well to have our phone in same state Glad you got to fully download the BlaY0 rom from my mirror.. now happy reverse engineering..
Sent from my Legend using XDA App
Click to expand...
Click to collapse
Thanks. Figured I was finished messing with such nasties once I had CM.
(In case you aren't aware, I have scripts that make the FM radio "work" on CM7. I can scan and see RSSI as expected etc. Only "problem" is I haven't figured out the audio routing part yet so no sound, which is why I'm exploring the HTC app for it's special tricks.)
What I want to do now is try running my hcitool scripts and see if they work on Blayo ROM.
If yes, then the Blayo ROM has something the CM7 ROM needs.
If no, then there's likely some magic step required on either stock ROM or CM7 ROM and likely the HTC FM app is doing that step, directly or indirectly.
But the needed hcitool is not on Blayo ROM. I find 3 of the hci utils and install them. Now I can't get hciattach running, which I think is needed for hcitool.
I'm guessing I can edit /init.legend.rc and change service hciattach to enabled. Reboot and no dice. Try running from command line also with no luck. At one point it hung, but now:
# hciattach -n -s 115200 /dev/ttyHS0 texasalt 4000000 flow
Unknown device type or id
# hciattach -n -s 115200 /dev/ttyHS0 any 4000000 flow
Can't set device: Device or resource busy
Can't initialize device: Device or resource busy
# hciattach -n -s 115200 /dev/ttyHS0 any
Can't set device: Device or resource busy
Can't initialize device: Device or resource busy
Waiting with baited breath
Sent from my Legend using XDA App
pjgodd said:
Waiting with baited breath
Sent from my Legend using XDA App
Click to expand...
Click to collapse
Bated ? Baited=fish
Well AFAICT, the world of Bluez bluetooth and hciattach, hcitool, hciconfig and hcidump doesn't get along with the TI BT stack world of btipsd and btipds_cli.
I'll have to bust out the NDK and start trying APIs.
But FIRST, I'm happy to report that btipds_cli is a pretty interesting and cool tool. Once I rebooted, turned BT on and learned the quirky UI, it wasn't too long before I had FM audio coming out of the speakers or the headphone.
I even tried a BT over FM option in another menu, but no go. Next I'll try the FM Tx, cause I'd REALLY like to see if that works.
btipds_cli doesn't seem to want to start FM a second time though, so a few reboots might be needed for testing.
I think it's possible that the "14.start_audiO" option in the "4.fm_Rx/" is the missing link for FM in non HTC ROMs. I don't know yet if it initiates a digital PCM / SCO connection or just switches analog. I don't see any new processes for that but btipsd might be doing the good stuff.
Following this thread with great interest..
Sent from my Legend using XDA App
I still can't get the transmitter to work, despite all the commands seeming successful. Both with hcitool on CM7 and btipsd_ci on Blayo0.7.
So I think one, or both, of the following are the TX issues:
(A) - It is somehow disabled by the hardware. The Tx antenna pin could be tied to ground, perhaps even through a capacitor or something. It may even just be unconnected and unable to transmit a few inches because it's inside an RF shield.
(B) - The firmware file for the FM portion disables TX, yet the registers still respond as if it works.
(A) would be difficult to infeasible to fix.
(B) should be fixable by loading a firmware file from a TI FM chip device that is known to support transmission.
For a TI based device that is known to transmit, I presume firmware files for a TI or TI partner evaluation board may work.
So far I can't get hciattach and hcitool etc working on BlaY0 ROM.
I HAVE, however, gotten btipsd and btipsd_cli to work on CM7. I had to create the /data/btips directory and am running btipsd manually in foreground.
What I find is exactly the same as with my hcitool scripts: everything seems to work but actual sound doesn't exit the device. Even after doing everything else the same as with BlaY0 ROM.
The /etc/firmware files on both ROMs are identical.
So I'm thinking there is some other thing separating the two ROMs. Could be some HTC customized library, or a config file or who knows.
Hi Mike, your work is appreciated, i hope you wil get it to work. We have great legend dev's. Please BlaYo and. Ali Ba, help this guy!
mikereidis said:
I HAVE, however, gotten btipsd and btipsd_cli to work on CM7. I had to create the /data/btips directory and am running btipsd manually in foreground.
Click to expand...
Click to collapse
Then you got as far as I did a few months ago. The btipsd stuff can be found in the original init.legend.rc, if you are interested.
mikereidis said:
So I'm thinking there is some other thing separating the two ROMs. Could be some HTC customized library, or a config file or who knows.
Click to expand...
Click to collapse
"Customized library" applies here, but that's in fact a euphemism for "all kinds of proprietary code in the framework".
I gave up reverse engineering after looking at the disassembled HTC radio application. As I already told you there are loads of pointers to closed source TI code that can be found in the framework (= /system/lib/whatever.so). You will have to reverse engineer all those rpcs, libandroid_servers and god knows whatnot.
ali ba said:
I gave up reverse engineering after looking at the disassembled HTC radio application. As I already told you there are loads of pointers to closed source TI code that can be found in the framework (= /system/lib/whatever.so). You will have to reverse engineer all those rpcs, libandroid_servers and god knows whatnot.
Click to expand...
Click to collapse
Oh, there must be SOME shortcut...
Since I have the FM radio and audio working with the btipsd_cli. I'm not sure the answer would lie in the HTC FM app. Or at least the answer is in btipsd_cli also.
I'd love to find the source to btipsd_cli. I DO have source for TI's fmapp and fmstack-0.12 and I can see they share some, but not all code.
In a log I can see an HCI command is sent when audio starts; I just don't know which one or with which parameters.
btipsd_cli has some rather weird bugs that prevent me from experimenting well with audio routing. When I disable analog, audio keeps playing. At first I thought it was using digital, but now I think it's part of the buginess. When I select various digital options, various weird things happen, including a crash in btipsd for most of them.
If I can run some HCI queries, I might get better clues or the actual answer. I managed to get hciattach to sort of work with "texas" as the type, but I think I need "texasalt" and the binary I have that runs on Blayo doesn't support it. The CM7 binaries wont run on Blayo.
So unless there are some other tools I can use, I'm wondering if it's time to write an NDK app.
Unless I can increase the verbosity of the btipsd logging to tell me everything it's doing. Will check.
These AudioRouting strings aren't in the CM7 libandroid_runtime so I tried pushing the Blayo lib to CM7. GUI never boots fully, but no audio still using the btipsd_cli.
Same when I also replace libandroid_servers.so, bluez-plugin/audio.so and bluez-plugin/input.so
strings blayo/system/lib/libandroid_runtime.so |grep -i audiorouting
FM_RX_DisableAudioRouting
FM_RX_EnableAudioRouting
nativeJFmRx_SetAudioRouting(): Entered
nativeJFmRx_SetAudioRouting: fmapp_set_audio_routing() returned %d
nativeJFmRx_SetAudioRouting(): Exit
nativeJFmRx_disableAudioRouting(): Entered
nativeJFmRx_disableAudioRouting: FM_RX_DisableAudioRouting() returned %d
nativeJFmRx_disableAudioRouting(): Exit
nativeJFmRx_enableAudioRouting(): Entered
nativeJFmRx_enableAudioRouting: FM_RX_EnableAudioRouting() returned %d
nativeJFmRx_enableAudioRouting(): Exit
nativeJFmRx_EnableAudioRouting
nativeJFmRx_DisableAudioRouting
nativeJFmRx_SetAudioRouting
FM_RX_DisableAudioRouting
FM_RX_EnableAudioRouting
DisableAudioRouting
EnableAudioRouting
If you are looking for how to get back to stock Bell, go HERE.
Disclaimer: I have not tested this on anything but my phone. This is a development section of a hacking website. Make backups. Know what you are doing.
Credits:
Brut.all for apktool
edgan for 2nd-init
designgears for aroot inspiration.
xda for being a source of info.
Requirements:
Windows 7 or Ubuntu 10.10+ (10.10 and 11.04 tested)
Java installed. (For applymods, it uses apktool)
Running Phone, not in recovery mode, etc.
Tips:
Don't factory reset please if something goes wrong, it just erases your personal settings, it doesn't write to the system partition. It also deletes your data partition, making it harder to get back to stock.
Early usb mode, turn your phone on while holding down the lower volume button, when it says fastboot, release and press volume down repeatedly until it says early usb enumeration, then press up volume. It takes 30 seconds or so before adb is ready.
Version 9:
Download it here.
What's new:
Added support for 2nd-int (WIP, tested on stock Bell only)
shsu updated to allow a super user to become a super user, acts like sh in that case.
fixed linux install_recovery.sh and uninstall_recovery.sh scripts to use shsu instead of remaining using su. Ditto with ApplyMods.sh
Boot animation now smaller, using jpegs instead of png files, no difference in appearance.
Version 8:
Download it here.
What's new:
Added full phone backup and full restore phone options to the menu. It will download a backup if there is none found.
root script more universal, tries psneuter first, then gingerbreak.
Early usb recovery updated, now uses a tmpfs for system, also mounts /sdcard and /sdcard-ext.
Deodexed French 2.1.1 files incorporated.
Misc fixes
Version 7:
What's new:
New Menu script for windows and linux in the top folder, double click Menu and enter options.
ApplyMods and other scripts updated to use /data/local/tmp/system, this means I can update system.tar.gz and add folders to be copied into system.
Early USB enumeration recovery option. (experimental but useful as is)
Fixed bugs in windows scripts. Can't get user input from bat file while in a parenthesis block apparently.
Bloat backed up to sdcard now
root and unroot scripts updated with more prompts for rebooting phone.
Version 6:
What's new:
Support for Telstra 1.4.2.
ApplyMods can create signed update.zips now, Create_update.bat updated. both using basic ready made scripts in main bin folder instead of creating them on the fly, CR LF issues.
Updated root and unroot scripts, more fool proofing, has to be Bell stock firmware (psneuter doesn't work on telstra).
Includes basic boot animation, and mod for Bell apn on telstra firmware. (Have to reset to default under access point names in settings.)
transparent status bar, yellow tinted white for text color, matches front buttons somewhat.
Version 5.1:
Features:
Works under Linux and Windows 7
Includes root and no ads scripts
Patch system for applying modifications.
What's new:
New scripts for doing mods, fixes issues with patch 9 images.
Updated root and unroot scripts, more fool proofing.
New RestoreSystemPartition script
Custom apktool for more [hopefully] bug free installations.
How to use:
Extract archive, keeping folder structure intact.
run a command prompt/terminal (There is a link to one in the windows folder)
run root.bat or root.sh from the linux or windows folders, depending on which one you are using.
Turn the phone off after that is done and turn it back on again.
The rest of the scripts shouldn't be run with psneuter affecting the phone.
run ApplyMods.bat (.sh) [OPTIONAL] This applies webtop hack and translucent status bar, translucent notification drop down, etc. Select update system.tar.gz.
run install_bell_deodex.bat or .sh
System image of stock Bell.
Mirror of above
Cheers!
Very nice! Looks good!
Will try this when I get home
Sent from my Motorola Olympus
So what is the benefit of this? Will I be able to theme my device with some of the themes that are available? Or should I play it safe and wait for a bell. Sbf to leak before I try anything and brick my phone again lol thanks in advance
EDIT: i see that you have included soft_brick.bat is it the same as this one http://forum.xda-developers.com/showthread.php?t=982859 because that one did not work for me thanks again
Sent from my MB860 using XDA Premium App
cool, i'll try this tomorrow when i don't still have a ****load to do and only 5 hours to sleep
nice to see a Bell dev here!
Also I just wanted to say major props for the crazy awesome idea of doing over-the-air download and installation. Really smart and original.
Atrices, just so you know
NFHimself said:
Hi,
(What is the plural of Atrix?)
Click to expand...
Click to collapse
Can I run this on my mac? Sorry relatively new to adb
Sent from my Motorola Olympus
you could run it on a mac, just had to edit the script a bit.
Hi,
So what is the benefit of this? Will I be able to theme my device with some of the themes that are available? Or should I play it safe and wait for a bell. Sbf to leak before I try anything and brick my phone again lol thanks in advance
Click to expand...
Click to collapse
I wouldn't try theming with ATT files, I would take what was done to them and apply them myself to the deodexed files here. There may or may not be differences that are not obvious. I am never really sure if there is any benefit to this stuff, it's fun to do, about it.
EDIT: i see that you have included soft_brick.bat is it the same as this one http://forum.xda-developers.com/showthread.php?t=982859 because that one did not work for me thanks again
Click to expand...
Click to collapse
The soft_brick.bat script is specific to the folders I am using for transferring data to /system/app and /system/framework. It tries to get root via psneuter, mounts system read write, deletes dalvik-cache files, and tries to copy the files already on the phone to the right folders. It could be that just one file caused the phone to crash mid copy and copying it again will fix things. This avoids trying to do a usb data transfer of all the files which you don't have time to do otherwise. I was also thinking that install-recovery.sh would be a good place to do this, (and then clobber it later with the init.d hack) but I couldn't find setprop and I wasn't in need enough to select a file to use as a semaphore.
Can I run this on my mac? Sorry relatively new to adb
Click to expand...
Click to collapse
It would be easier to do it all from a sh script really, and that would likely be more compatible with a Mac.
Also I just wanted to say major props for the crazy awesome idea of doing over-the-air download and installation. Really smart and original.
Click to expand...
Click to collapse
Thanks!
Cheers!
maledyris said:
Atrices, just so you know
Click to expand...
Click to collapse
Thanks, a lot, really, 10 chars..
How do I recover from a softbrick from this? Thanks.
Before anything is done, all the files are extracted to /data/local/tmp/app and /data/local/tmp/framework. If you run into problems put the phone into fastboot/early usb enumeration mode (see here) and run soft_brick.bat (.sh for linux)
Quote:
A soft brick, in this case, is when you make a bad edit to your framework files and the phone won't fully boot and starts flashing a red LED at you.
There is one catch, you only get about 1-2min to do all of this before the phone reboots on its own. If that happens, do SuperOneClick steps again and continue where you left off. Better yet, build a script to do it all for you
Power off your device
Enter Fastboot:
Hold Volume down + power until you see Fastboot at the top left
Use volume down to scroll down to "Early USB Enumeration" (only shows one item at a time, if you pass it, keep going down, up selects)
Press Volume up to select
This is the message I get when i run the batch file.
This is of course when invoking Early USB Enumeration.
Wait for the count down to finish ...
'TIMEOUT' is not recognized as an internal or external command,
operable program or batch file.
clearing Dalvik cache..
rm failed for /data/dalvik-cache/[email protected]*.dex, No such file or directory
rm failed for /data/dalvik-cache/[email protected]*.dex, No such file or director
y
rm failed for /data/dalvik-cache/[email protected]*.odex, No such file or directory
rm failed for /data/dalvik-cache/[email protected]*.odex, No such file or directo
ry
reinstalling apps
cp: cannot stat '/data/local/tmp/app/*': No such file or directory
reinstalling framework..
cp: cannot stat '/data/local/tmp/framework/*': No such file or directory
done.
The timeout message means you are running a version of windows without timeout, see adeo thread.
The lines for rm just mean there are no files to delete in the Dalvik-cache, which is normal, you should see that the second time around.
The cp lines are saying that there are no files in /data/local/tmp/app (/framework).
So, that's unusual, in order to get soft bricked using my script you would to have copied files from /data/local/tmp to /system, and if you are bricked would be unable to delete the files afterword.
sequence:
cd /system
cp /data/local/tmp/app/* app/
sync
reboot now
**brick**
So, how are the /data/local/tmp/app files being deleted?
No clue. I'm not sure what to do here? Is my phone permanently bricked? Any other way to recover from this? The one thing that could have gone wrong is I tried installing from my behind my works firewall. Maybe I could not download the proper files.
No, you are soft bricked, you only made a change (that I know of) in system files.
Were you rooted before you tried this?
If you copy the soft_brick.bat files and change the last line to be adb.exe shell ls -R /data/local/tmp, what do you get?
Basically, it sounds like to need to get the files copied over to data/local/tmp, how they are missing/inaccessible is odd. So, create a script to copy the files over bit by bit, might take a while but it should be able to be done.
EDIT:
Do this:
from command prompt:
adb.exe shell ./data/local/tmp/psneuter
wait a few seconds
type this:
adb shell ls -l -R /data/local/tmp
if psneuter fails, it isn't in /data/local/tmp, which is also odd.
I was rooted before this. So I should attempt all these commands while Early USB Enumeration right? That doesn't give me much time Lol.
OK, here's the output.
C:\bell_deodex>adb.exe shell ./data/local/tmp/psneuter
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
property service neutered.
killing adbd. (should restart in a second or two)
C:\bell_deodex>adb shell ls -l -R /data/local/tmp
/data/local/tmp:
-rwxr-xr-x root root 585731 2011-01-09 02:02 psneuter
-rw-r--r-- mot_tcmd mot_tcmd 4 2011-03-30 21:00 ap_tcmd.pid
C:\bell_deodex>^A
And sorry to be a pain. How would I create the script? What are the files that need to be copied? Are they included in your script?
Hi Guys,
This is driving me crazy. A lot of people, who are too lazy to search. Well, here you go.
Allright, you brought your Xperia X1 with android. Now, there is a problem. Once in a while, the keyboard does not respond, only action is a reboot. HELP?
Allright, lets get started.
Download this package:
http://www.mediafire.com/?cp1o1glxjo145pu
Install a android of your choice(just normally).
Unpack, and copy all (yes, all) contents to you SD card.
Move the turbo or Monster kernal to the NKBoot Map, click yes to replace any excisting files.
On your computer, open up the readme, and read it carefully.
After step 4(after you entered 'su') type this:
rm /lib/modules* -rf
That will remove your current modules, and at the next boot, they will be replaced.
Reboot, and proceed with step 5 and the rest. Follow the guide excactly, then you're good!
Have a nice evening!
Not Test, But Thanks You !!!! I Need
sorry to say but when i folled your guide to just after step 4 when typing the -rf
it says cannot remove read only file system
is that normal?
thanks
yes it is. just reboot after the error, then the new modules will install!
Just thinking ... a dev might know it this is possible ...
Hm, perhaps, best solution at the moment would be, to run the unload-load-script when the phone is waking up from sleep mode. So, when keypad is lost, the user can send to sleep with the power button an immediately switch it on again ... and additionally, the script can run when a call comes in ... don't know if these events can get picked up and the event-handlers can be changed, just thinking ...
Ciao
Klaus
Kurt Krummbein said:
Hm, perhaps, best solution at the moment would be, to run the unload-load-script when the phone is waking up from sleep mode. So, when keypad is lost, the user can send to sleep with the power button an immediately switch it on again ... and additionally, the script can run when a call comes in ... don't know if these events can get picked up and the event-handlers can be changed, just thinking ...
Ciao
Klaus
Click to expand...
Click to collapse
Don't know if this could be a good option. Because I have had some freezes when runing the script. And sometimes the screen changes it orientation.
thomskipsp said:
After step 4(after you entered 'su') type this:
rm /lib/modules* -rf
Click to expand...
Click to collapse
casualt said:
sorry to say but when i folled your guide to just after step 4 when typing the -rf
it says cannot remove read only file system
is that normal?
thanks
Click to expand...
Click to collapse
Shouldn't it be?:
After step 4(after you entered 'su') type this:
rm /lib/modules/* -rf
mind the /
Anyway, I tried both ways, and rm /lib/modules/* -rf seems to work, but I can't load back into CWM if I install a kernel with seperate keyboard modules. I think I mess up the exact order of installing normal, removing modules, replacing kernel, restarting. Hope this will work
http://forum.xda-developers.com/showthread.php?t=1072387
Yes. I can restart keyboard after freeze. Although with eggy monster kernel, my screen is rotated 90degrees after that.
No. I can't get back into CWM, after I switched to a kernel with seperate modules.
The original kernels of Honeycomb v3 both worked.
I tried the kernels with seperate modules of this post and i tried the ygge kernels.
Can this be solved? No. But apparently, there is a workaround http://forum.xda-developers.com/showthread.php?t=1072387.
when I type "sh /data/opt/autostart.sh" and press Enter, I get this error:
"insmod: can't read '/lib/modiles/microp-ksc.ko': no such file or directory
insmod: can't read '/lib/modiles/microp-keypad.ko': no such file or directory"
Can you help me?.
Where is kovsky keyboard modules????
I using ygge kernels with HoneyComb Froyo V.3
PS: sorry I used the same post in several threads
Hi folks,
we have some lucky users among us with a generic (Dev) IMEI - some of these are able to get OTA updates, thought for testusers and/or developers from Samsung, after they install latest Test firmware XXLSA from sammobile....some got updates up to XXLSC and already provided a dump. Others got updates up to XXLSD (and maybe higher in future - who knows, where the journey ends...), but don't know what to do to share this firmware with us 'Flashaholics' here on xda and other forums...
Now, as more and more people asking me (why ever me...) how to make a system dump from Stock Firmware, I decided to write a short 'HowTo for Dummies'. So if you know about someone, who has a unknown Test Firmware installed, or YOU are the chosen one, just follow this tutorial and make us happy
This is just one way of several to do this - but as I think, it is the easiest way for newbies (without having to use Android SDK and adb shell on PC --> that's what experienced would do )
Prerequisites:
- at least 1,4 GB free space on internal SDcard
- a brain (and above 80 IQ-points...)!!!!!
Step 1) Rooting your Stock Firmware (thx to Phil for the steps, I just copy/pasted them) --> if you already have Root + busybox installed, go to Step 2) directly
download this Root_Superuser_3.1.3_Busybox_1.20.2-Update1-signed.zip and this cwm-non-touch-6.0.1.4-i9100.zip
Put the previously downloaded cwm-non-touch-6.0.x.x-i9100.zip file on your external sd card
Copy the Root_XXX.zip file you downloaded to internal or external sd card
Boot into stock recovery (volume up+home+power), and select "apply update from external storage". Now select the cwm-non-touch-6.x.x.x-i9100.zip file you copied in previous step (this step gives a temporary flash that will disappear after reboot)
You get CWM recovery interface (this custom recovery is temporary, not permanent)
Inside CWM, select "install zip from sdcard". Then, select "choose zip from sdcard". Now, scroll down to the "Root_XXX.zip" file and hit power button to install it.
It will add SuperSU or Superuser last version apk to system/app, last superuser binary (su) to system/xbin and busybox last version to system/xbin, all with correct file permissions.
Reboot and you get permanent root + busybox installed on your stock kernel.
(You can easily unroot your device afterwards...it is also described in Phils thread, where I took all these from: [20 Sep 2012][ICS]Universal Rooting for most ICS phones, Any ROM, now with CWM6 )
Step 2) Making a complete System Dump of Stock Firmware:
Install 'Terminal Emulator' from Playstore
Open Terminal Emulator
type 'su' with your internal keyboard and press return button
grant Superuser access on upcoming popup window
now type the following line and press return button after finished typing:
Code:
dd if=/dev/block/mmcblk0p8 of=/sdcard/modem.bin
==> this will generate 'modem.bin' (= Modem) on your internal SDcard (will be finished after a few seconds)
now type the following line and press return button after finished typing:
Code:
dd if=/dev/block/mmcblk0p5 of=/sdcard/zImage
==> this will generate 'zImage' (= Kernel) on your internal SDcard (will be finished after a few seconds)
now type the following line and press return button after finished typing:
Code:
dd if=/dev/block/mmcblk0p12 of=/sdcard/hidden.img
==> this will generate 'hidden.img' (= preload partition) on your internal SDcard (will be finished after a few minutes, as it is more then 300 mb!)
now type the following line and press return button after finished typing:
Code:
dd if=/dev/block/mmcblk0p9 of=/sdcard/factoryfs.img
==> this will generate 'factoryfs.img' (= system partition) on your internal SDcard (will be finished after a few minutes, as it is more then 800 mb!)
Now you have the following output / files on your internal SDcard:
modem.bin
zImage
hidden.img
factoryfs.img
==> zip these 4 together and upload them to a hoster ==> post the link here and devs can start building a new ROM (Stock + CustomROMs) and kernel devs (now we luckily have Phil for that) can preroot the kernel + put in CWM recovery.
That's all and really very very easy....
Disclaimer:
I am not responsible for any damages - it is your risk (though it is not a dangerous thing to do!)
hope this will be a very good guide in getting the new leaked rom from sammy
Nicely done my friend this should ease up on some of the users (the ones who get updates for us XD)
Congratulations on this, now you see why community loves you soooo. liebe endet nie !!
es ein vergnugen es zu lesen. gute arbeit eybee :good:
Thank very much boss
Hope you will be one of the prof when xda university will open.
Thank you very much
Hope now when we will see LS(any letter) it will be with the links of the dump
Envoyé depuis mon GT-N7000 avec Tapatalk
Funny
Envoyé depuis mon GT-N7000 avec Tapatalk
Cool bro thanks but you can use the supersu.zip and the busybox.zip from stock recovery
Tapatalking on my n7000
msedek said:
Cool bro thanks but you can use the supersu.zip and the busybox.zip from stock recovery
Tapatalking on my n7000
Click to expand...
Click to collapse
It was easy copy paste for me in the rooting part....you can root and install busybox in 567 different ways...in the end the result counts
Clicked for Newsworthy article. :thumbup:
Sounds really simple for someone who doesn't have the second prerequisite.
Back uped the info.
Sent from my GT-N7000 using Tapatalk 2
Sharing your valuable knowledge and experience is priceless for those who are interested. Well, me, I simply follow pros like you.
Sent from my GT-N7000 using xda premium
In addition to Step 2:
I made the dumps from my PC with a connected device with "adb", so I could copy them to the harddisk directly.
"adb devices" for checking if connection is established, "adb shell" switching to the device, "su" for root access, and then the commands eybee1970 explained in detail.
After that I fetched the files in my file manager from the connected device.
I prefer to work with terminal windows on the PC and not on the device.
With this you do not need Step 1 - because I didn't
another great one from eyebee
great guide for learners like me
thanks
ThaiDai said:
In addition to Step 2:
I made the dumps from my PC with a connected device with "adb", so I could copy them to the harddisk directly.
"adb devices" for checking if connection is established, "adb shell" switching to the device, "su" for root access, and then the commands eybee1970 explained in detail.
After that I fetched the files in my file manager from the connected device.
I prefer to work with terminal windows on the PC and not on the device.
With this you do not need Step 1 - because I didn't
Click to expand...
Click to collapse
That's why I said 'for Dummies'....no PC, no Android SDK, no adb shell...just the device
This is a superb guide! cheers eybee
Deleted
Sent from my GT-N7000 using xda app-developers app
Now the history rolls back...
as people raced to create their own custom roms.
The chosen ones with their great knowledge was kind enough to uncover about the custom rom things and shared it with some tutorials here in xda-dev for people who needed it.
Just like the old time...when WinMo has a bright future here.
Thanks a million for devs and chefs at xda-dev who always spread the lights.
ZacDerbyshire said:
Great guide. A little off topic but I don't know where else to ask and you are an expert in ROM making. How do I put things like all multiwindow apps and 4 way reboot in the ROM build before it goes on the phone? Sorry again for it being in here, can't find anywhere else to ask.
Sent from my GT-N7000 using xda app-developers app
Click to expand...
Click to collapse
4Way reboot mod is at the system/framwork/ directory "android.policy.jar" file is responsible for this stuff....
as for all multi apps after an investigation it appeared it looked for a certain statement to know whether its a sammy app patching that code to the launcher and editting the policy for this feature too gets you all apps access (almost all) as some just dont work....
there are plenty of guides and tutorials over the internet and forums... on different phones mostly but with a little time you can manage everything as you want to so READ some enjoy!
i'am guessing we need to start writing more tutorials in the N7000 section in here we have no knowledge sharing mostly developing and some new guys are ready to try their own so we have to share everything it started with eybee (thanks to him) and hopefully will continue with all other guys who do mods.... no matter how small it can be usefull.
believe it or not but even devs assist each other with mods its not like each one was born with all that OP-Code in his head
Ah...good guide eybee.Let me see if i can make a shell script to dump the partitions and make odin roms out of it.I already have scripts to dump and make odin rom for /system,/data partitions.will add preload,kernel and modem to the script.Let me see how my time permits today.Hope the script will help people.But the only drawback is it will work only on linux.Users may use cygwin too for it
Sent from my GT-N7000 using xda app-developers app
eybee1970 said:
That's why I said 'for Dummies'....no PC, no Android SDK, no adb shell...just the device
Click to expand...
Click to collapse
For my case adb shell was not succeed. Device reboots unexpectedly while dumping factoryfs. Maybe file size is too big. Thus I had to use terminal emulator though pc keyboard is much more convenience
Great tutorial!
Sent from my GT-N7000 using xda app-developers app
Two remarks:
Typing something like "dd if=/dev/block/mmcblk0p9 of=/sdcard/factoryfs.img" is never something I would call easy. If you do not have Linux shell commands knowledge, than these are about "50 characters without meaning" that you have to type (on the keyboard of your device - which is even more error-prone).
PC or Note: it is never dummy-simple.
Making a batch wich automatically generates an ROM installable with ODIN (so the result are tars) is dangerous.
The difference between "dump" and "dumb" isn't so big - as I just proved myself.
When you make a batch with a complete process from dumping, copying, building to a "blob" installable with Odin there will be no step in the process for quality control.
Example (hurts to write this): If there's something in the original Rom you are dumping that couldn't be shared then it makes its way through the process in to the final Rom. And the dummy user of these scripts will never know or can protect himself from it.
Only pro from this: after learning this the hard way you don't feel like a dummy user anymore.