[Q] Reverse engineering a ROM - Droid Incredible Q&A, Help & Troubleshooting

So basically looking for a tutorial or something to rip a ROM from my phone and make it easy to pass along to someone else.
Reason being is because it took me a while to get the rom setup the way I was wanting with the least amount of hassles of messing with the framework etc via Metamorph and Ninjamorph. I want to be able to port my creation over to another device without all my user data(messages and contacts etc) included...
Just want to know if there is a easy way to do this...but in the meantime I am downloading Linux and prepping to go the hard route to doing this...

magneticzero said:
So basically looking for a tutorial or something to rip a ROM from my phone and make it easy to pass along to someone else.
Reason being is because it took me a while to get the rom setup the way I was wanting with the least amount of hassles of messing with the framework etc via Metamorph and Ninjamorph. I want to be able to port my creation over to another device without all my user data(messages and contacts etc) included...
Just want to know if there is a easy way to do this...but in the meantime I am downloading Linux and prepping to go the hard route to doing this...
Click to expand...
Click to collapse
The easiest way to build ROMs is using Android Kitchen, its under under Chef Central. Just follow the directions in the thread to a tee. With Windows you basically have to set up a Linux virtual machine on your pc to use it. I've done it both ways, through Linux Ubuntu 10 and Windows. I curently have it set up on a Windows Vista laptop, took a few hours to get everything setup right then built some ROMs for my Eris with it. The ROM building part takes only a couple minutes. I haven't used it with my Incredible.
http://forum.xda-developers.com/showthread.php?t=633246

Thanks, going to try it the old fashioned way first...apktool and resigning everything, so I get a general idea...then mess with the kitchen after I get a headache from my first ROM attempt haha!

I prob would of spent 1/2 day doing it the old way, I think I finished it in 15 mins. +1 Kitchen

Related

Looking for a Dev for Advice in Cooking a ROM

I've read through the forums, done a lot of reading through a TON of resources over the past few weeks. I know I should learn some Java and probably learn how to build an app or two for Android but I'm a bit short on time with everything going on in my life and want to learn as I go. Trying to learn Java online gives me a headache since I'm sure there is no shortway of learning it and that is all there is online -.-'
I am looking for a developer to help me "cook" up a ROM. I'll start with what I have done and what I know. Maybe someone could add in some information or tips/suggestions/tweaks that I could use that would be helpful. This is the first time I'll be attempting to build my own ROM since my Touch Pro days so please bear with me.
I have tried to look at different resources but most of it gets tossed over to the Hero. I'm not sure how similar they are but I rather not risk it.
What I have done:
Setup Kitchen via Cygwin.
Downloaded Stock RUU For 3.70 base.
Set home folder.
What I know:
What most of the options do in the Kitchen
How to add and remove applications from the working folder.
(SHHH I'M NEW TO THIS!) lol
What I want to know:
How to add themes
How to add radios (included in the ROM)
Dalvik moved to cache instead of eating up main memory
SNQ 4 in 1 Reboot MOD
Power Control Notification Bar MOD
Automatically Zipalign all apps after each boot (Is this just option 6 in the kitchen?)
How to pull the latest .apk files to update my ROM. (Do I just update via the Market on my phone and then go into system/data to get the latest .apk file? Not sure)
How to add kernels (included in the ROM) http://forum.xda-developers.com/showpost.php?p=7628768&postcount=1664
-I found this but I am a bit confused. Lets say I want to use netarchy's 4.3.1-bfs no havs kernel. I looked through the .zip file and saw theres 3 folders. kernel, META-INF, and system. What do I do with these? Or do I just deal with the zip. Need someone to walk me through this or point me in the right direction.
Thanks to everyone who responds in advance. (I hope someone does)
Bumpppppppp
sekigah84 said:
I've read through the forums, done a lot of reading through a TON of resources over the past few weeks. I know I should learn some Java and probably learn how to build an app or two for Android but I'm a bit short on time with everything going on in my life and want to learn as I go. Trying to learn Java online gives me a headache since I'm sure there is no shortway of learning it and that is all there is online -.-'
I am looking for a developer to help me "cook" up a ROM. I'll start with what I have done and what I know. Maybe someone could add in some information or tips/suggestions/tweaks that I could use that would be helpful. This is the first time I'll be attempting to build my own ROM since my Touch Pro days so please bear with me.
I have tried to look at different resources but most of it gets tossed over to the Hero. I'm not sure how similar they are but I rather not risk it.
What I have done:
Setup Kitchen via Cygwin.
Downloaded Stock RUU For 3.70 base.
Set home folder.
What I know:
What most of the options do in the Kitchen
How to add and remove applications from the working folder.
(SHHH I'M NEW TO THIS!) lol
What I want to know:
How to add themes
How to add radios (included in the ROM)
Dalvik moved to cache instead of eating up main memory
SNQ 4 in 1 Reboot MOD
Power Control Notification Bar MOD
Automatically Zipalign all apps after each boot (Is this just option 6 in the kitchen?)
How to pull the latest .apk files to update my ROM. (Do I just update via the Market on my phone and then go into system/data to get the latest .apk file? Not sure)
How to add kernels (included in the ROM) http://forum.xda-developers.com/showpost.php?p=7628768&postcount=1664
-I found this but I am a bit confused. Lets say I want to use netarchy's 4.3.1-bfs no havs kernel. I looked through the .zip file and saw theres 3 folders. kernel, META-INF, and system. What do I do with these? Or do I just deal with the zip. Need someone to walk me through this or point me in the right direction.
Thanks to everyone who responds in advance. (I hope someone does)
Click to expand...
Click to collapse
If I'm not mistaken, most of the things you want to do would probably have to be done manually.
You can zip align and add the radios through dsixda's kitchen but the themes need to be added to the framework. apktool will work for this but this is where knowing java comes in handy.
When looking at a kernel like Net's the zImage file is the actual kernel, you'll want to use the kitchen to add that to the boot.img and the other lib files, etc, you can copy to the ROM.
To add and remove files usually I'll just keep an open copy of the zip and work with it through file explorer. Just rezip & resign it once your done and you should be good to go.
I keep a copy of Ubuntu running in Oracle's VM for the kitchen and mounting image files, it may take a minute to set up if you aren't familiar with linux but it makes it easier to pull stuff out of update zips.
well since you are just starting out, xhausx's info is great and ive used simalar methods b4 for testing. But i reccomend buying first at least 2(or more) Java books and read them, because cooking a rom isnt just gonna hapen in 1 day and takes some knowledge of java to make a rom.
Later down the road i reccomend trying to learn how to make a rom thru Terminal(in Linux) as ive heard can do alot more.
So, if i were u i would use the method above.
All this INFO i posted has either come from other devs or google(Who is your friend), so take what you want from this and learn then begin Building your ROM.
Yeah I'm a Google whore. Been trying to find a few good self-learning books with Java. Tried some online tutorial pages and I have the JDK. Made a "Hello World" program just to see if I could get it to output but maybe I missed something but I can't seem to get it from .java to .class LOL (JAVA NOOB!)
Anyway, I'm probably going to find a few books and get reading. I'm probably also going to be tearing through a few of the ROMs on the forums to see how they set their files up and just do some messing around. I hope to God I don't brick my phone lol.
Didn't really expect to build a ROM anytime soon. Wanted to learn so I could try my hand at developing something. Always wanted to make an app but never had the time to do so. Guess its time now lol.
Thanks for your info guys.
sekigah84 said:
Yeah I'm a Google whore. Been trying to find a few good self-learning books with Java. Tried some online tutorial pages and I have the JDK. Made a "Hello World" program just to see if I could get it to output but maybe I missed something but I can't seem to get it from .java to .class LOL (JAVA NOOB!)
Click to expand...
Click to collapse
Did you add java to the windows PATH?
Sent from my Evo powered by MIUI
Comrade P said:
Did you add java to the windows PATH?
Sent from my Evo powered by MIUI
Click to expand...
Click to collapse
Yeah I figured that out just before you posted this. LOL. O boy. I got a while to go.

KIN Two setup tool:SPST

I got a file and some apps & drivers.
You can find a PDF file in the attachement.
Please read it to see whether it can help.
Apps & Drivers:
http-//rapidshare.com/files/455584224/KinTwoSetupApp.rar
( - should be replaced with : )
Hi guys, here is another USB driver for KIN TWO which is a little bit different to the one uploaded above.
http-//rapidshare.com/files/456921463/KUSBDrivers.rar
( - should be replaced with : )
Thanks to every one here.
Let's work together/
This looks to be exactly what we are looking for. This will definitely open up the possibilities of modifying the current kin os, or porting a new os to the device. However, this guide is useless without the tools and files mentioned in the document. You said you had some files as well, do you have these files?
SPST Vn.n.n.msi.
PB10ZUnPB20ZU (Lab) Vn.n.n.msi.
SPSTUSBDriverInstall.msi.
InstallPMXMTP.msi
With these files we be able to finally successfully hack this phone.
This is great. We have the resources, now we must figure out how to get a modified os on the phone using the tools.
Awesome find KinPhoneLover; not sure how and where you got this SPST, but it could be the very thing that is needed. For people who bricked their kin phones, they should try the "refurbish feature" to see if that will successfully reset their phones back to "factory mode". As for getting a new OS on the phone, in the pdf at the "Upgrade section", when you browse for the firmware file, it is a .ecn file. Not sure how flashing is done for Cyanogen and those other Android custom firmwares, or their file type extensions. If SPST only supports/allows .ecn files, that could be a problem trying to use those Android custom firmwares.
wow, this is exactly what we needed....did this get leeked or something? it says its from the sharp corp., so im guessing they got it somehow by chatting with them? why isnt there a lot of buzz about this??? i can read my phone number and everything off of this...so close to getting android, or just putting java apps on it..
Too bad its only 32 bit But yes. This is one step closer. Please, people with brick kin, test it out. See if we can get the ball rolling again.
Radar2004 said:
Too bad its only 32 bit But yes. This is one step closer. Please, people with brick kin, test it out. See if we can get the ball rolling again.
Click to expand...
Click to collapse
yes, i have to use my slow home computer, instead of using my quad core 64bit laptop
Just got everything up in running. Is anyone else having a problem with the SPST constantly dropping the connection with the phone and reconnecting? I'm not sure if this is due to running XP in a virtual box or if its something I can readily fix.
Short Answer: doesnt work.
Long Story: This needs your phone to be ON even for refurbish option and then, able to connect to a COM port. Unfortunately, that doesnt happen in SBL / APX mode and phone doesnt boot (autoreboots) so no COM mode available.
Just another software installed (for me).
No news in the front, guys. I guess i just need to get rid of verizon software (the one trying to get an OTA), not something from "normal" kin states.
Okay so now that we have a tool to upgrade the software all we need are custom firmware files to flash to it. However I don't see any option to read/dump the firmware using this software.
dezgrz seems to be correct, there don't seem to be a way to read/dump the current OS to make a backup of it. The PRL and ERI options don't seem to be what we want. The Provision option is the only option where we can read stuff from the phone. Could someone run that option, check all those settings (NAM1, security, feature, data, etc) and write it to a file and upload it? Maybe there will be something useful in there.
I gotta order a new battery, then I'll see if I can get anywhere with this... need to load up a 32bit OS first, apparently.
Either way, this is a huge step. Maybe not complete, but still a huge step. Thanks OP.
Hm..??
This seems interesting. I been watching this site until someone "Exploited" the phone. I have a mac, and does this work for kin? What does it do?
zero2duo said:
Could someone run that option, check all those settings (NAM1, security, feature, data, etc) and write it to a file and upload it? Maybe there will be something useful in there.
Click to expand...
Click to collapse
That features seem to be available already with "QPST" software... which didnt make anything advance (yet).
As i said, i renamed my NAM succesfully, and changed some security options (which i guess that doesnt matter, cause i *was* able to work anyway).
not much you can do that you cant do already, besides looking at your phones info. I was able to change voicemail numbers, was *86, i changed it to to just 8, and it says voicemail, but doesnt connect. Still playing around.
Why don't you just take it back to Verizon and get a replacement. How would they ever know you messed it up trying to hack it?
MicroNateDram said:
Why don't you just take it back to Verizon and get a replacement. How would they ever know you messed it up trying to hack it?
Click to expand...
Click to collapse
You should read the whole threads and/or other threads to understand why.
This phone needs to get hacked. I love my phone but i dont like the OS that the phone has. If this phone isnt hacked by the time summer comes, ill be glad to participate. I've hacked many phones but this may be a challenge. I would like to see apps on this phone.
PS I know the phone has java so where can i go to play games or apps for java?
Kinuser1 said:
PS I know the phone has java so where can i go to play games or apps for java?
Click to expand...
Click to collapse
Javascript
johnkussack said:
Javascript
Click to expand...
Click to collapse
Out of all the things I know, why wouldn't I know that its Javascript? Jeeezus. I would happily spend time on this phone but my grades are more important. Now what site could I go to on my phone to play apps/games.
P.S your post didn't really help me.

[VIDEO GUIDE] [CDMA] Using Heimdall to flash Roms

I received alot of pm's and emails in the past 72 hours regarding issues with the roms I released, issues that to me all sounded like there was confusion on using heimdall.
So I decided to eliminate any future confusion by creating a video of using heimdall and flashing one of my roms.
Though I use Linux, I feel it doesn't matter when it comes down to the basics of using the Program.
I cant help troubleshoot problems with Windows users, Mac, or even Linux as there are far to many variations of systems out there, even if you have the exact same computer i do, that doesn't mean you might have the same software, or might not be up to date, or you might have updates i don't have.
So for the sake of general understanding of using Heimdall, here is a video i made, posted on You Tube, and there for life...
Oh, please pardon the horrible audio, I think it was my headset. You can understand me, however i sound.....horrible.
Also, expect a few more walkthroughs from me, or even updating this specific one as well. I actually love creating work-flows, so once i get a better mic setup, maybe I will just start pumping out some Guides.
Jim
http://youtu.be/lgj4_xDOHN0
thanks man, your video really helped. im literally new to the tab scene.
thank you, this video help me a lot.
Thanks for the guide.BUT i cant get the older versins of Heimdall to run on my computer. I know for some reason you decided to use an old version, but I dont remember why. Because of this, I havent been able to flash your rom. I recognize how you use that old gui as thats how you had to do it in the early dev days, but the new one is lacking . any tips?
egofreak said:
Thanks for the guide.BUT i cant get the older versins of Heimdall to run on my computer. I know for some reason you decided to use an old version, but I dont remember why. Because of this, I havent been able to flash your rom. I recognize how you use that old gui as thats how you had to do it in the early dev days, but the new one is lacking . any tips?
Click to expand...
Click to collapse
I wrote up how to use the new GUI in Heimdall 1.3 over here. It's confusing to figure out at first but easy once you do.
egofreak said:
Thanks for the guide.BUT i cant get the older versins of Heimdall to run on my computer. I know for some reason you decided to use an old version, but I dont remember why. Because of this, I havent been able to flash your rom. I recognize how you use that old gui as thats how you had to do it in the early dev days, but the new one is lacking . any tips?
Click to expand...
Click to collapse
You can still download 1.1 from the creators website.
I use 1.1 for one very good reason.
I can flash what I want. I can flash just the kernel, or recovery, or just reflash a borked filesystem, I have experimented and done thing most devs would cringe over, its a straight forward no bs app that didn't need a makeover.
However, all versions are still out for grabs.
Sent from my SCH-I800 using XDA App
so i saw in your video that you are flashing the recovery when you install your rom. is there a way to get back to stock recovery if we need to take back into sprint for repair?
thank you soooo much man. i tried everything until this. it's soooo much easier than anything else. thank you it works.
i lov it and everything seems to work. is there anyway to change the way the screens switch instead of that fold out look
Thank you!

Rooting Koodo t989D With Linux Help

Hiya everyone. So; Normally I do my rooting and whatnot on my windoze XP Hard drive, using ODIN. However; for some reason my Windoze is suddenly having some issues with USB (I'm working on resolving it; not why I'm posting.) so I'm left with my Linux HDD (Oh noes! Like I'm really complaining I can't use windoze...lol...). However that being said, I have no idea how to go about doing this on Linux. I run OpenSUSE 12.3 32bit.
I'm not a Linux Poweruser, still learning, but I'm not entirely useless with it either; I know how to do basic program compiling (./configure, make, make install, etc); Am somewhat comfortable in Terminal / CLI, and have a live USB handy incase it breaks
I have done a bit of research and know that Heimdall is the way to go with Linux, however I've also read that Heimdall is not compatible with the T-Mobile S2? Does Kodoo fall into that incompatibility as well, since they can flash the same ROM's?
If it IS possible to root the Kodoo Galaxy s2x t-989D using Linux; can someone either point me to a detailed link explanation of the process, or post here and walk me through this? Assume I know nothing; to save questions. I'd rather have too much information and do it with ease than have not enough and have my woman castrate me for bricking her Phone, and then have to give her my S3 ;p
Thanks! :good:
Dragostini said:
Hiya everyone. So; Normally I do my rooting and whatnot on my windoze XP Hard drive, using ODIN. However; for some reason my Windoze is suddenly having some issues with USB (I'm working on resolving it; not why I'm posting.) so I'm left with my Linux HDD (Oh noes! Like I'm really complaining I can't use windoze...lol...). However that being said, I have no idea how to go about doing this on Linux. I run OpenSUSE 12.3 32bit.
I'm not a Linux Poweruser, still learning, but I'm not entirely useless with it either; I know how to do basic program compiling (./configure, make, make install, etc); Am somewhat comfortable in Terminal / CLI, and have a live USB handy incase it breaks
I have done a bit of research and know that Heimdall is the way to go with Linux, however I've also read that Heimdall is not compatible with the T-Mobile S2? Does Kodoo fall into that incompatibility as well, since they can flash the same ROM's?
If it IS possible to root the Kodoo Galaxy s2x t-989D using Linux; can someone either point me to a detailed link explanation of the process, or post here and walk me through this? Assume I know nothing; to save questions. I'd rather have too much information and do it with ease than have not enough and have my woman castrate me for bricking her Phone, and then have to give her my S3 ;p
Thanks! :good:
Click to expand...
Click to collapse
OK your going to need the program heimdall, and heimdall frontend, I assume u know ur way around a CLI if I've been using Linux so what ur going to need to do is flash the recovery, put phone in download mode, connect to PC, DL twrp2.6.0.4 img file and extract it to ur working folder, open heimdall and run command heimdall-flash -recovery recovery.img cache.img, that'll flash the recovery to the phone, from there its just booting into recovery and flashing a ROM(if u want a custom ROM) or rebooting system from recovery, it will ask if u want to install superuser access, tap install and ur good.. Hope that helps
Sent from my SAMSUNG-SGH-T989 using XDA Premium 4 mobile app

Upgrading from JSS15Q to LMY48I

Hello all, I haven't been here for about 2 years, got busy with some things. I'm currently running a home compiled JSS15Q that has a touchscreen hack to load in the firmware that works best with my tablet. I'd like to build 5.1.1 LMY48I from source and give it a try. Do I need to upgrade any bootloaders or other stuff before attempting to push the new OS on there?
It's been 2 years since I did any of this stuff so I'm a bit foggy about it all. I had a good handle on it back then, but I've slept a lot since then. I might go with sfhub's locked in firmware this time since I was accomplishing pretty much the same thing just a different way. That's, of course, assuming that the old firmware is compatible with the newer releases of Android OS.
I built the older release in a VirtualBox VM running Ubuntu 12.04. I think I need to upgrade some things to be sure that the compile of 5.1.1 works as it should. I was about out of space on the 12.04 VM and I was going to grow the partition, but I'm thinking it might be smarter to just follow the build-from-source instructions from scratch in a new VM install. It takes a huge amount of space to do a build. AOSP took 20GB and JSS15Q took about 40GB of drive space. I "only" set up a 100GB VM which means I likely don't have enough room to download the newer release source.
If anyone that's done this has any advice, I'd sure appreciate hearing it. Thanks for reading.
Sounds like you already have it figured out.
There is a new bootloader so don't forget that. Sfhubs firmwares work fine.
I forget how big it was when I synced 5.1.1 but if you delete the jellybean code you should be fine.
LOL You're giving me wayyyy too much credit. I'm pretty much stumbling around in the dark here. I went with the new VM using Ubuntu 14.04. I struggled through all the apt-get commands especially the one with libgl1-mesa-glx:i386. It just didn't want to install because of some dependency quirk of some sort with something called cheese. I finally found a solution by doing this:
sudo apt-get install libglew-dev libcheese7 libcheese-gtk23 libclutter-gst-2.0-0 libcogl15 libclutter-gtk-1.0-0 libclutter-1.0-0 xserver-xorg-input-all
God only knows why I had to do all that to get the libgl-mesa-glx installed, but it finally let me do the get for libgl-mesa-glx:i386. Then I could finally create the symlink for the mesa library. After that, I successfully repo synced the source tree; it took up 35GB of disk space. I did the lunch command, picked flo user (11) and started my make command to build. That's running right now.
I was concerned about the proprietary binaries for the broadcomm stuff, but I found a directory under ./device/asus/flo called self-extractors. I'm guessing that stuff takes care of itself now and you don't have to do the steps of finding, downloading and extracting it into the tree. That's my guess anyway. I'm following this "howto":
http://source.android.com/source/requirements.html
I had been looking at an older one on blogspot, but it was for a different device and I figured it would be better to follow the one I'm using instead since it seems more current. I hope this build works okay and doesn't drag badly from bloat. I like my tablet's responsiveness on jellybean. I'm wondering now if I shouldn't have just gone to kitkat instead of all the way to lollipop. Oh well, live and learn. Thanks again for you input and for reading this. Let me know if I'm messing up.
I got it compiled. It took about 2.5 hours. I tried to find the program that I modified before, but I can't find it anywhere in the source tree. They've apparently moved everything around real good. If anyone knows where the touchscreen firmware update takes place, I'd appreciate knowing. It used to be in a program named ektf3k.c That program no longer exists in the build. I can use sfhub's utility to lock in the firmware I need, but I'd still like to know how where they moved the firmware update stuff.
afremont said:
I got it compiled. It took about 2.5 hours. I tried to find the program that I modified before, but I can't find it anywhere in the source tree. They've apparently moved everything around real good. If anyone knows where the touchscreen firmware update takes place, I'd appreciate knowing. It used to be in a program named ektf3k.c That program no longer exists in the build. I can use sfhub's utility to lock in the firmware I need, but I'd still like to know how where they moved the firmware update stuff.
Click to expand...
Click to collapse
I built the whole thing without the proprietary binaries installed. I'm guessing that my build is basically useless. I'm kinda disappointed that they don't bring up the binaries until after they walk you through the lengthy compile process. I guess I have to do a make clobber, unpack the binaries and then do the whole build over again. The build went fine as far as I can tell.
Can anyone verify if I have to do it all over with the binaries unpacked? I'm afraid to try flashing the stuff I built just to see what happens. Would there be any harm in that?

Categories

Resources