Credits:
birbeck for the usual random java guidance, slushpupie for his previous java guidance, dodgejcr for extreme amounts of testing, and one_love_420 and shift for some great graphics!
testers: JT-, couga6442, happytweak and many others I might have forgot in the furry of three days I built the initial app from scratch!
HTC Vivid Testers: PirateGhost and IanWizard - thank you!!
Thanks to SDX
Device must be "unlocked"
HTC Unlock:
If you have a device which has successfully completed the HTC unlock method, this application will work to flash kernels and assist in flashing the kernels for ROMs!
Please see the guides at the bottom of this post!
Background:
flash_image (bmlwrite) is an extremely useful utility for flashing custom kernels, boot logos and recoveries. This binary has made it possible to easily flash all these items and is used almost everywhere behind the scenes (i.e. in custom recoveries, packaged into kernel /sbin, etc).
Description:
This android application, FlashImageGUI, is basically a GUI interface for the linux binary, flash_image provided by google in AOSP for loading custom kernels and recovery images onto the phone.
This app allows the flashing of kernels and custom recovery images in normal android mode!
Current Device Support:
Full Kernel, Logo and Recovery flashing: Samsung Moment, Transform, Intercept and Acclaim - the s3c6410 series of devices
Full Kernel (Anykernel and boot.img) Flashing and Recovery (zip file or image) flashing: HTC Vivid/Holiday, HTC EVO 3D CDMA and GSM, HTC EVO, HTC EVO Shift, Nexus S/Nexus S 4G & LG Optimus
Full Kernel (zImage) Flashing: Samsung Epic
Check application version for updates
Future Support:
Will continue to test kernels as they are released to ensure compatibility!
Install Directions:
Install process is the same as any other .apk. Download to computer and adb push or mount sdcard on computer and copy over or download directly to the phone. Use any file manager, adb, connectbot/terminal emulator to install.
My preferred method, maybe a bit technical: ./adb install c:\downloads\FlashImageGUI.apk
Download Locations
Market (99 cents!): Flash Image GUI
Release version (free from my personal hosting): Flash Image GUI
Contact:
Any questions, comments, concerns, or issues, please post in this thread, PM, tweet, IRC or send me an email! Thanks for all the help and support!
Screenshots:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Feedback:
Please post any helpful feedback. I'm always looking to improve the application!
HTC Unlock - User Guides for Flash Image GUI!!
HTC Unlock - Users Guide for ROMs with a Kernel (boot.img file):
1) Unlock using HTC method
2) Load this application, Flash Image GUI, onto the device, either through the Market or the link provided in this OP.
3) Download ROM .zip file to the sdcard on the device.
4) Open up Flash Image GUI, select Browse and select the ROM .zip file, downloaded to /sdcard in the previous step.
5) Flash Image GUI will provide a warning, reminding that the ROM .zip file will *need* to be flashed in the custom recovery afterward.
6) Flash Image GUI will index the full ROM .zip file searching for the kernel and kernel modules. Once located, the Flash Image button should be enabled.
7) Select the Flash Image button and Flash Image GUI will load the kernel and kernel modules from inside the ROM zip file.
8) Once completed, turn off the device. (Assuming you've already loaded a custom recovery)
9) Hold volume down + power to boot into the bootloader. Select recovery.
9) Inside the custom recovery, load/flash the ROM zip file.
10) Reboot to normal Android mode and all should work including Wifi!
HTC Unlock -Users Guide for flashing ONLY a Kernel (zip file):
1) Make sure the selected Kernel is compatible with the currently loaded ROM. If not, this will result in a lot of frustration!!! See troubleshooting steps below.
2) Download kernel zip file to /sdcard.
3) Open Flash Image GUI, browse and select kernel zip file, downloaded/loaded to sdcard in previous step.
3) Flash Image GUI will validate the kernel zip file is contains the minimum required files
4) Select the Flash Image button and Flash Image GUI will load the kernel and the kernel modules from the source kernel zip file.
5) Reboot
Troubleshooting after Rebooting:
First step, when experiencing issues flashing is to RE FLASH the files again. Many times, re flashing again will clear up any issues. If not, see the issues/solutions below.
Issue #1: If the device hangs or reboots while on the splash screen, the kernel (or packaged ramdisk in the kernel) is NOT compatible with your device!!!
Solution for #1: Have to boot into fastboot and load the custom recovery to flash a known good kernel or restore a previously known good nandroid backup. Command: fastboot boot c:\downloads\cwm-recovery.img
Issue #2: If the device hangs or reboots while on the boot animation, the ROM is likely NOT compatible with the kernel!!!
Solution for #2: Have to boot into fastboot and load the custom recovery to flash a known good ROM/kernel combination either from a zip file or restore from a nandroid backup.
Very cool, this will take away a lot of the headaches in the superguide thread lol.
Pleasure working with you again joeykrim and with pirateghost. Glad you got this phone supported with the quickness. Great work!
App worked flawlessly for me. I love that we're simplifying this process.
okay so im coming from the samsung captivate, so Im new to the htc. looking at the op, I still have to go to the htc site and unlock my phone first before I can do any of the other steps in the post right?
djfrost40 said:
okay so im coming from the samsung captivate, so Im new to the htc. looking at the op, I still have to go to the htc site and unlock my phone first before I can do any of the other steps in the post right?
Click to expand...
Click to collapse
Yes, good point. I added a note to the OP for that.
Unfortunately, HTC is not as simple as Samsung when it comes to allowing customization. There are other upsides though and with everything in life, it is a trade off! Welcome!
I unlocked my brand new AT&T Vivid today. Followed the superguide and rooted the phone, put on CWM 5.5.0.4.. Now I cannot figure out how to flash that boot image. I know I am suppose to extract the boot.img out of the zip, tried flashing it in HBoot, but didn't see it, This tool found it but warned me not to flash it. Is there something else that goes with the boot.img? want to flash Wild Childs rom
dudeluv said:
I unlocked my brand new AT&T Vivid today. Followed the superguide and rooted the phone, put on CWM 5.5.0.4.. Now I cannot figure out how to flash that boot image. I know I am suppose to extract the boot.img out of the zip, tried flashing it in HBoot, but didn't see it, This tool found it but warned me not to flash it. Is there something else that goes with the boot.img? want to flash Wild Childs rom
Click to expand...
Click to collapse
remember how you unlocked the phone?
exactly like that, only you need the boot.img and a slightly different command
fastboot flash boot boot.img
if you dont have fastboot in your environment path, then you need to be IN the same folder as fastboot.exe. the path to boot.img has to be exact, so if boot.img is NOT in the same folder as fastboot.exe you need to specify its path....
fastboot flash boot c:\users\username\desktop\boot.img
Pirateghost said:
remember how you unlocked the phone?
exactly like that, only you need the boot.img and a slightly different command
fastboot flash boot boot.img
if you dont have fastboot in your environment path, then you need to be IN the same folder as fastboot.exe. the path to boot.img has to be exact, so if boot.img is NOT in the same folder as fastboot.exe you need to specify its path....
fastboot flash boot c:\users\username\desktop\boot.img
Click to expand...
Click to collapse
Oh, okay, so put the Boot.img with the fastboot.exe in the same folder, run cmd with the with the phone in Bootloader and direct it to where the folder is located at on your PC.run this command if the folder is on your desktop fastboot flash boot c:\users\username\desktop\boot.img
I got it, Thanks.
dudeluv said:
Oh, okay, so put the Boot.img with the fastboot.exe in the same folder, run cmd with the with the phone in Bootloader and direct it to where the folder is located at on your PC.run this command if the folder is on your desktop fastboot flash boot c:\users\username\desktop\boot.img
I got it, Thanks.
Click to expand...
Click to collapse
if you have boot.img in the same folder as fastboot.exe, then no, just open a command prompt where fastboot.exe is, and run the command
fastboot flash boot boot.img
Pirateghost said:
if you have boot.img in the same folder as fastboot.exe, then no, just open a command prompt where fastboot.exe is, and run the command
fastboot flash boot boot.img
Click to expand...
Click to collapse
Oh okay, that sounds easier
dudeluv said:
Now I cannot figure out how to flash that boot image. I know I am suppose to extract the boot.img out of the zip, tried flashing it in HBoot, but didn't see it, This tool found it but warned me not to flash it.
Click to expand...
Click to collapse
Since we are in the Flash Image GUI thread, I feel inclined to answer the question regarding the application, Flash Image GUI.
There are a handful of warnings in the application because the HTC EVO 3D released in August of 2011 had this same HTC unlock method and I've been assisting people now for 6 months. There a handful of pitfalls which confuse many users and result in errors on their device. If you carefully read the warnings and follow the directions, you will prevent the common pitfalls and known issues.
1) This tool will warn you, but the warning doesn't say to NOT flash, it only warns you that you will be missing kernel modules if you ONLY flash the boot.img.
2) If you're wanting to load a ROM, as mentioned, select the whole ROM .zip file from Flash Image GUI. Flash Image GUI will handle all the logistics by scanning the file, locating the modules and kernel, and loading both of this. Make sure, after flashing the ROM .zip file in Flash Image GUI, the same ROM .zip file is flashed from recovery mode. Recovery mode will install the "system" portion of the ROM .zip while Flash Image GUI installs the "kernel" portion of the ROM .zip. If both portions are not loaded, many times the device will not boot.
3) When using Flash Image GUI, you don't need to extract the boot.img. It is better to select the whole kernel .zip file. The reason why is whenever you flash a kernel, boot.img or zImage, you MUST flash the accompanying modules, including WiFi. If not, most of the time, Wifi will NOT work.
If you find a warning to be incomplete or misguiding, please post up at least a portion of the exact text you see. I'm more than happy to revisit and working on improving wording but is hard for me to understand mis communications w/o exact feedback!
Let me explain why there is the warning for only flashing the boot.img. The modules (WiFi, etc) must match the kernel as they are compiled/setup at the same time. If the kernel mismatches with the modules, then the modules will not work. This is the main reason why there are posts saying, "Help, my Wifi stopped working".
Hope that helps clarify any confusion! Appreciate the support!
joeykrim said:
Since we are in the Flash Image GUI thread, I feel inclined to answer the question regarding the application, Flash Image GUI.
There are a handful of warnings in the application because the HTC EVO 3D released in August of 2011 had this same HTC unlock method and I've been assisting people now for 6 months. There a handful of pitfalls which confuse many users and result in errors on their device. If you carefully read the warnings and follow the directions, you will prevent the common pitfalls and known issues.
1) This tool will warn you, but the warning doesn't say to NOT flash, it only warns you that you will be missing kernel modules if you ONLY flash the boot.img.
2) If you're wanting to load a ROM, as mentioned, select the whole ROM .zip file from Flash Image GUI. Flash Image GUI will handle all the logistics by scanning the file, locating the modules and kernel, and loading both of this. Make sure, after flashing the ROM .zip file in Flash Image GUI, the same ROM .zip file is flashed from recovery mode. Recovery mode will install the "system" portion of the ROM .zip while Flash Image GUI installs the "kernel" portion of the ROM .zip. If both portions are not loaded, many times the device will not boot.
3) When using Flash Image GUI, you don't need to extract the boot.img. It is better to select the whole kernel .zip file. The reason why is whenever you flash a kernel, boot.img or zImage, you MUST flash the accompanying modules, including WiFi. If not, most of the time, Wifi will NOT work.
If you find a warning to be incomplete or misguiding, please post up at least a portion of the exact text you see. I'm more than happy to revisit and working on improving wording but is hard for me to understand mis communications w/o exact feedback!
Let me explain why there is the warning for only flashing the boot.img. The modules (WiFi, etc) must match the kernel as they are compiled/setup at the same time. If the kernel mismatches with the modules, then the modules will not work. This is the main reason why there are posts saying, "Help, my Wifi stopped working".
Hope that helps clarify any confusion! Appreciate the support!
Click to expand...
Click to collapse
Thanks for the clarification. I flashed a kernel last night Pirates way.
I have Flash Image GUI on my ROM. Correct me if I am wrong, some roms do not have the boot.img included in the rom, they have it separate, From what I understand is I would just include the boot.img, taken out of the zip and drop it into the rom, Then browse to where the rom is on the sd card with Flash Image GUI and then flash the boot.img..... go into recovery then flash the rom,
My original question, If I have the Boot.img out of the zip, drag it onto the sd card, is it okay just to flash the Boot.img alone? then turn the phone off and go into recovery, flash the rom?
When I tried it this way, I got warnings. So I posted that question.
dudeluv said:
Thanks for the clarification. I flashed a kernel last night Pirates way.
I have Flash Image GUI on my ROM. Correct me if I am wrong, some roms do not have the boot.img included in the rom, they have it separate, From what I understand is I would just include the boot.img, taken out of the zip and drop it into the rom, Then browse to where the rom is on the sd card with Flash Image GUI and then flash the boot.img..... go into recovery then flash the rom,
My original question, If I have the Boot.img out of the zip, drag it onto the sd card, is it okay just to flash the Boot.img alone? then turn the phone off and go into recovery, flash the rom?
When I tried it this way, I got warnings. So I posted that question.
Click to expand...
Click to collapse
Yes to all of the above.
Flash Image GUI will flash basically all the combinations you can create. I've added warnings though to caution uses who aren't familar with the process as I prefer not to see the Flash Image GUI bricked my phone posts/emails/market comments.
Well historitcally, most ROMs if requiring a kernel with either include it or link to a flashable .zip of it.
With this whole HTC unlock issue and confusion, some ROM devs are providing their ROM required kernel separately as a boot.img file.
The warning you received when attempting to flash just the boot.img file was only to inform you that you must immediately flash the associated ROM .zip file from recovery mode or the device might not boot properly.
Thanks for requesting clarification and I'll revisit the wording to verify the clarity. Appreciate the support!
joeykrim said:
Yes to all of the above.
Click to expand...
Click to collapse
Cool, next ROM I flash I am going to try this.
where can i find a kernal for my stock velocity 4g? (says in bootloader that its a holiday)
WinterKnights said:
where can i find a kernal for my stock velocity 4g? (says in bootloader that its a holiday)
Click to expand...
Click to collapse
Majority of customized kernels will be found in the Development board.
If you're looking for the 100% stock kernel, the best source is to extract them from the stock RUU files. These are generally leaked and posted by a user named Football. His threads are also usually in the Development board.
Good luck and appreciate the support!
This is an embarrassingly rudimentary question.
I HTC-Unlocked my Vivid (running GB 2.3.4), and successfully installed FlashGUI. However, after launching it, it wants root before going any further. I would have thought that would be necessary, but the instructions on the OP make no mention of it. They just state HTC Unlock as a pre-req.
Given everyone else's success in using the app, it's painfully obvious that I'm missing something. Any pointers ?
-RKA
rasar42 said:
This is an embarrassingly rudimentary question.
I HTC-Unlocked my Vivid (running GB 2.3.4), and successfully installed FlashGUI. However, after launching it, it wants root before going any further. I would have thought that would be necessary, but the instructions on the OP make no mention of it. They just state HTC Unlock as a pre-req.
Given everyone else's success in using the app, it's painfully obvious that I'm missing something. Any pointers ?
-RKA
Click to expand...
Click to collapse
Wow, over 10k users and for some reason this was never pointed out as clearly as you've mentioned. You're definitely right as root access is not mentioned in the OP. In the Android Market, I have it at the top, but on the forum made the assumption people knew root access was required.
Due to Android's security architecture, root access is required before being Android grants write access to the kernel or recovery partition.
Quickest way, is probably to use fastboot to load a custom recovery and flash the superuser.zip file. This will install the Superuser application along with the su binary and setup the correct permissions.
Once root access is properly setup, everything should be good to go!
In summary, as security changes, the most consistent method after using HTC's official unlock will be to use fastboot to load a custom recovery and flash the superuser.zip file.
Hope that helps!
Will it work using on an Inspire 4G?
I know how to fastboot flash .img files and understand it includes the radio and kernel components. I'm rooted and have TWRP recovery. But which .img file contains the radio and which the kernel? I ask because I'll be going from the latest T-Mo rom (LYZ28J) to Project Fi having just received my sim. If I flash just the system.img from LYV48E (Fi rom) will I have the correct kernel and radio or will I have to flash boot.img also or something else? Since kernels and radios can be flashed separately I'm just not sure where everything comes from. I would appreciate some clarity.
Groid said:
I know how to fastboot flash .img files and understand it includes the radio and kernel components. I'm rooted and have TWRP recovery. But which .img file contains the radio and which the kernel? I ask because I'll be going from the latest T-Mo rom (LYZ28J) to Project Fi having just received my sim. If I flash just the system.img from LYV48E (Fi rom) will I have the correct kernel and radio or will I have to flash boot.img also or something else? Since kernels and radios can be flashed separately I'm just not sure where everything comes from. I would appreciate some clarity.
Click to expand...
Click to collapse
have you ever unzipped a factory.img .tar file to see what files it contains?
Groid said:
I know how to fastboot flash .img files and understand it includes the radio and kernel components. I'm rooted and have TWRP recovery. But which .img file contains the radio and which the kernel? I ask because I'll be going from the latest T-Mo rom (LYZ28J) to Project Fi having just received my sim. If I flash just the system.img from LYV48E (Fi rom) will I have the correct kernel and radio or will I have to flash boot.img also or something else? Since kernels and radios can be flashed separately I'm just not sure where everything comes from. I would appreciate some clarity.
Click to expand...
Click to collapse
simms22 said:
have you ever unzipped a factory.img .tar file to see what files it contains?
Click to expand...
Click to collapse
If I were a betting man, I'd be backing the horse called "Wish I'd done that before posting"
Tiptonian said:
If I were a betting man, I'd be backing the horse called "Wish I'd done that before posting"
Click to expand...
Click to collapse
Hahaa. Unzip and you shall receive. LMAO
simms22 said:
have you ever unzipped a factory.img .tar file to see what files it contains?
Click to expand...
Click to collapse
Not sure what you mean by this. I have the system, boot, recovery, and userdata .img files. I don't know which one has the kernel or which one has the radio. You imply I can unzip, for example, system.img to see what files are there, but I cannot unzip it or any of the .img files. My main question still is unanswered which is which .img files do I need to (m)fastboot flash to insure I have the correct (stock) kernel and radio for the Project Fi rom? I may just flash them all, flash TWRP, re-root and start clean, but I wanted to consider the option of keeping data. Any helpful answers?
Tiptonian said:
If I were a betting man, I'd be backing the horse called "Wish I'd done that before posting"
Click to expand...
Click to collapse
prdog1 said:
Hahaa. Unzip and you shall receive. LMAO
Click to expand...
Click to collapse
So glad my post was such a source of amusement for you. Sorry I didn't make it clear I know how download factory images, unzip the .tgz file to get the .tar file. Unzip the .tar file to get to the .zip file. Unzip the .zip file to get the boot, recovery, system, and userdata .img files. But no one actually tried to answer my question.
Groid said:
So glad my post was such a source of amusement for you. Sorry I didn't make it clear I know how download factory images, unzip the .tgz file to get the .tar file. Unzip the .tar file to get to the .zip file. Unzip the .zip file to get the boot, recovery, system, and userdata .img files. But no one actually tried to answer my question.
Click to expand...
Click to collapse
kernel is boot.img, radio is radio.img
Thank you for your reply. I suspected boot.img is the kernel but wanted to make sure. I notice that the radio-shamu-. . .02.78.02.img and boot-shamu. . .71.10.img are in the shamu-lvy48e folder in the .tar file with the flash batch files. The enclosed .zip file has the system, boot, userdata, recovery, and cache .img files along with the text file specifying the bootloader (kernel) and baseband (radio). I now understand that the boot.img is the kernel which is the same version my current one in LYZ28J, so I need not flash it. The radio is different based on the android-info.txt file. So, the last piece of the puzzle for me is will I get the updated radio by flashing the system.img or must I separately flash the radio-shamu -. . .-02.78.02.img?
Groid said:
Thank you for your reply. I suspected boot.img is the kernel but wanted to make sure. I notice that the radio-shamu-. . .02.78.02.img and boot-shamu. . .71.10.img are in the shamu-lvy42e folder in the .tar file with the flash batch files. The enclosed .zip file has the system, boot, userdata, recovery, and cache .img files along with the text file specifying the bootloader (kernel) and baseband (radio). I now understand that the boot.img is the kernel which is the same version my current one in LYZ28J, so I need not flash it. The radio is different based on the android-info.txt file. So, the last piece of the puzzle for me is will I get the updated radio by flashing the system.img or must I separately flash the radio-shamu -. . .-02.78.02.img?
Click to expand...
Click to collapse
youll get the updated radio in the factory.img, but you can always flash the radio itsrlf via fastboot(fastboot flash radio radioname.img).
Groid said:
Thank you for your reply. I suspected boot.img is the kernel but wanted to make sure. I notice that the radio-shamu-. . .02.78.02.img and boot-shamu. . .71.10.img are in the shamu-lvy48e folder in the .tar file with the flash batch files. The enclosed .zip file has the system, boot, userdata, recovery, and cache .img files along with the text file specifying the bootloader (kernel) and baseband (radio). I now understand that the boot.img is the kernel which is the same version my current one in LYZ28J, so I need not flash it. The radio is different based on the android-info.txt file. So, the last piece of the puzzle for me is will I get the updated radio by flashing the system.img or must I separately flash the radio-shamu -. . .-02.78.02.img?
Click to expand...
Click to collapse
If have updated SDK will get everything in flash-all.bat. If not and have to do all separate they are all separate. Bootloader, radio, boot, system, cache, userdata. There is no radio in system.img. It is the radio. img. On first unzip get bootloader, radio, flash-all and the folder for the rest of the images. If want radio fastboot flash radio (radio.img).
Thank you for answering my question about whether or not the radio gets updated by flashing system.img. Unfortunately, I cannot get ADB to work properly. I initially seem to have it working with the ADB devices statement from the command prompt, it returns the serial #, but when I try to execute the batch file ADB seems to be disconnected. At least I have experience with (m)fastboot and will just flash the radio and system .imgs since the bootloader is the same. I'll keep TWRP recovery, format cache, update supersu for root and I should be good to go.
Groid said:
Thank you for answering my question about whether or not the radio gets updated by flashing system.img. Unfortunately, I cannot get ADB to work properly. I initially seem to have it working with the ADB devices statement from the command prompt, it returns the serial #, but when I try to execute the batch file ADB seems to be disconnected. At least I have experience with (m)fastboot and will just flash the radio and system .imgs since the bootloader is the same. I'll keep TWRP recovery, format cache, update supersu for root and I should be good to go.
Click to expand...
Click to collapse
well, adb doesnt work in the bootloader, and its only fastboot that can flash those files..
Thanks, I was responding to using adb to sideload with the flash(all).bat. Fastboot works fine for me so I don't really miss using adb commands.