[APP] Flash Image GUI - Flash Kernels and Recoveries from normal Android mode!

Search This thread

HTCLittleMonster

Senior Member
Jul 27, 2011
66
5
Peterborough
Can you provide a link to the kernel .zip file you're using as well as any error message you received or how you determined it was "not a good kernel"?


having more than one kernel in a .zip file is going to be a bit of a headache because the developer could be using some custom program, aroma script, or the generic updater-script, to code out how to determine which kernel to use. sometimes this coding can be very device specific and or could be more general. essentially, there are many variables involved here that usually require a lot of specific coding thus creating a bit of a headache in how to properly modular support for all devices, while coding up a specific device implementation.

now the command line parameters are very short and generally not a big deal, although depends on what type of edits are being made. since no technical details have been provided, could you provide a link to the kernel .zip? i can research the commands and process to determine what the kernel developer is attempting to accomplish. generally, there are a few ways to accomplish the same end goal, but never know until i see the code!

thanks for all the feedback and support. the more technical the details are that are shared, the more helpful the feedback is!

a few of the links i have in my email and am researching:
http://xdaforums.com/showthread.php?t=1970872
http://xdaforums.com/showthread.php?t=1873926

Thank you for directing me here from your other thread, first of all.
So, am I right in saying that simply by extracting the one relevant zImage file, it won't be able to flash the kernel?
Sorry, kernel's have never been a strong point for me, especially not with the whole S-ON thing. Haven't really tried kernels since the Wildfire.
Thanks
 
  • Like
Reactions: joeykrim

joeykrim

Inactive Recognized Developer
Jan 9, 2009
1,978
1,311
I know it did t say in the OP but I have to ask, does this work for the HTC One V? I have a friend and I am really wanting to help him out, thanks
Unfortunately, HTC blocks write access to the boot partition while in Android mode on the HTC One V. Without write access, Flash Image GUI does not work.

Thank you for directing me here from your other thread, first of all.
So, am I right in saying that simply by extracting the one relevant zImage file, it won't be able to flash the kernel?
Sorry, kernel's have never been a strong point for me, especially not with the whole S-ON thing. Haven't really tried kernels since the Wildfire.
Thanks
Yea, the zImage type of kernel file for the EVO 3D is following the anykernel standard which dumps the boot partition, splits out the ramdisk and kernel, appends the new kernel to the existing ramdisk, and then flashes that image.

EVO 3D handles this process very well and I spent a lot of time coding this out to handle many common exceptions. The issue remains the same with a zip file that contains multiple kernels and in this case, multiple modules.

If you want to modify the zip file to match the standard, remove the other directories for modules and kernels not needed. Also, relocate the modules directory to /system/lib/modules inside the zip file. These changes should match the more common zip file setup and Flash Image GUI should be able to handle.

Appreciate the interest and feedback! Let us know how it works out!
 
  • Like
Reactions: ramjet73

HTCLittleMonster

Senior Member
Jul 27, 2011
66
5
Peterborough
Yea, the zImage type of kernel file for the EVO 3D is following the anykernel standard which dumps the boot partition, splits out the ramdisk and kernel, appends the new kernel to the existing ramdisk, and then flashes that image.

EVO 3D handles this process very well and I spent a lot of time coding this out to handle many common exceptions. The issue remains the same with a zip file that contains multiple kernels and in this case, multiple modules.

If you want to modify the zip file to match the standard, remove the other directories for modules and kernels not needed. Also, relocate the modules directory to /system/lib/modules inside the zip file. These changes should match the more common zip file setup and Flash Image GUI should be able to handle.

Appreciate the interest and feedback! Let us know how it works out!

Okay, I've done that, however I'm slightly confused as to the two files that are in the modules folder. In another example of a kernel I have there is:
.placeholder PLACEHOLDER File
bcm4329.ko KO File

But, in the Anthrax folder there's:
bcm4329.ko KO File
bcmdhd.ko KO File

Which format is correct?
I've attached the modified zip as an attachment and would greatly appreciate any help in getting the right structure etc to avoid any mishaps :)
Thanks
 

Attachments

  • Kernel.zip
    5.3 MB · Views: 23
Last edited:

mrbenji

Member
Apr 19, 2011
29
3
Can't flash any kernels

Hi,

So... I bought Flash Image GUI from the Market after I saw one of the kernels I wanted to try out (MiRaGe for the EVO 3D CDMA) recommended it over standard recovery-based installs. I got the following error at the "Dumping kernel and partition image" step:

"Flash Error
While attempting to flash an error occurred: null"

HTC EVO 3D, rooted and S-OFF, and F.I.G. has superuser access. In the end I successfully installed the kernel using 4EXT. Now I'm having trouble with the same kernel and a newer version of my ROM, so I wanted to retry F.I.G. -- still getting the error, with both the Market version and the version I downloaded from here, hoping it was more up-to-date.

Help?
 

joeykrim

Inactive Recognized Developer
Jan 9, 2009
1,978
1,311
Hi,

So... I bought Flash Image GUI from the Market after I saw one of the kernels I wanted to try out (MiRaGe for the EVO 3D CDMA) recommended it over standard recovery-based installs. I got the following error at the "Dumping kernel and partition image" step:

"Flash Error
While attempting to flash an error occurred: null"

HTC EVO 3D, rooted and S-OFF, and F.I.G. has superuser access. In the end I successfully installed the kernel using 4EXT. Now I'm having trouble with the same kernel and a newer version of my ROM, so I wanted to retry F.I.G. -- still getting the error, with both the Market version and the version I downloaded from here, hoping it was more up-to-date.

Help?
Can you provide a link to the exact .zip file you're attempting to flash? Once I can examine the .zip file I'll know more about the type of issue you're experiencing.
The market version and the version listed should be the same. Appreciate the support!
 

mrbenji

Member
Apr 19, 2011
29
3

joeykrim

Inactive Recognized Developer
Jan 9, 2009
1,978
1,311
Thanks for the quick response. Here's the URL for a kernel I couldn't flash : http://xdaforums.com/showthread.php?p=40970354

Sent from my Evo V 4G using Tapatalk 2
I downloaded the kernel .zip file, MiRaGe_shooter_kernel_76_05022013.zip, and using Flash Image GUI 1.5.2, from Google Play, I was able to flash and load the kernel w/o any issues in Flash Image GUI. I'm running the stock ROM on my EVO 3D.

I'm not able to find any issues with the kernel .zip file itself. Everything in the file appears to be fairly standard and setup properly.

My only other guess is there might be some type of issue with the ROM you're currently using. What kind of ROM are you running right now?

Thanks for the support!
 

mrbenji

Member
Apr 19, 2011
29
3
What kind of ROM are you running right now?
I've had this problem with the last two versions of Angry Bean, a very solid AOSP 10.1/4.2 ROM.

See, what's weird is that there's no problem installing the kernel using 4ext... but I was under the impression that FIG used a better method for kerninstallation.

Sent from my Evo V 4G using Tapatalk 2
 

joeykrim

Inactive Recognized Developer
Jan 9, 2009
1,978
1,311
I've had this problem with the last two versions of Angry Bean, a very solid AOSP 10.1/4.2 ROM.

See, what's weird is that there's no problem installing the kernel using 4ext... but I was under the impression that FIG used a better method for kerninstallation.

Sent from my Evo V 4G using Tapatalk 2
I haven't had this issue reported on any of the 20+ Android devices Flash Image GUI supports.

A custom recovery, such as 4ext, doesn't run in the Angry Bean ROM environment while Flash Image GUI does making for an unequal comparison. In some cases, Flash Image GUI will use a better method for kernel installation and has more intelligent logic to analyze the environment than the generic updater-script used by most kernel developers.

Since I was able to flash the kernel using the stock ROM and Flash Image GUI on my Sprint EVO 3D, the issue appears related to the custom ROM. The most likely scenario would be that one of the important system essential tools in the ROM that Flash Image GUI uses has been modified in a non-standard way. Unfortunately, Flash Image GUI only has control over a small and specific environment and has to operate inside the ROM environment.

If there are more reports of this issue on Angry Bean with other kernels from other users, or similar reports from other users on different ROMs, I might be able to gather more information and narrow down the issue. Unfortunately, this is the first report and I'm not able to replicate this issue on my EVO 3D device.

You mentioned purchasing through Google Play, which is a 99 cent USD purchase. If you want a refund, please PM me the account used to make the purchase and I'd be more than happy to return the 99 cents USD.

Thanks for the support and information!
 

masfocus

Member
Jun 27, 2009
9
0
Saved my wifi

Didn't know what was going on when I got the wifi error.
I just looked around for a stock kernel for ICS, flashed it and my wifi worked.

Thanks!!
 

joeykrim

Inactive Recognized Developer
Jan 9, 2009
1,978
1,311
Didn't know what was going on when I got the wifi error.
I just looked around for a stock kernel for ICS, flashed it and my wifi worked.

Thanks!!
The most common root cause of the WiFi error is that the kernel modules, including for WiFi, are loaded onto the phone separately from the kernel.

While using fastboot, the kernel to loaded to the boot partition but the modules are not loaded to the system partition.. After flashing from fastboot and rebooting, this will usually break WiFi.
While using the custom recovery (S-ON users), the boot partition is blocked but the system partition is not. Creating the opposite situation from using fastboot. The modules are loaded by the kernel portion is not, also upon reboot breaking WiFi.

Both the kernel and the kernel modules are loaded by Flash Image GUI preventing the common WiFi error.
Appreciate the support!!
 
Last edited:
  • Like
Reactions: MReinke

ramjet73

Senior Member
Jan 12, 2006
9,149
9,621
Honolulu, Hawaii
The most common root cause of the WiFi error is that the kernel modules, including for WiFi, are loaded onto the phone separately from the kernel. While in recovery mode, HTC blocks the modules from loading, but allows the kernel to load. After flashing from recovery and rebooting, this will break WiFi.
Both the kernel and the kernel modules are loaded by Flash Image GUI preventing the common WiFi error.
Appreciate the support!!
Isn't it the opposite and only when S-ON, at least on the Evo 3D?

My understanding is that the modules are in the system partition (/system/lib/modules directory) and it's the boot partition that is blocked in recovery for S-ON users but maybe I'm not clear on what you are saying. For S-OFF users it shouldn't be a problem unless they are using 4EXT recovery, leave SmartFlash enabled and don't have a bootable kernel installed.

ramjet73
 

joeykrim

Inactive Recognized Developer
Jan 9, 2009
1,978
1,311
Isn't it the opposite and only when S-ON, at least on the Evo 3D?

My understanding is that the modules are in the system partition (/system/lib/modules directory) and it's the boot partition that is blocked in recovery for S-ON users but maybe I'm not clear on what you are saying. For S-OFF users it shouldn't be a problem unless they are using 4EXT recovery, leave SmartFlash enabled and don't have a bootable kernel installed.

ramjet73
Yea, thanks and good catch. I meant to refer to fastboot and recovery separately, but appears I accidentally merged the ideas. I've edited the reply to clearly detail the issues from using fastboot and the issues from using recovery on the EVO 3D.

On my mind the last week or two has been the issues with the HTC One and the best way to provide support for it in Flash Image GUI. The main concern being that HTC changed the security policy. Some of those concerns slipped into my EVO 3D post!

Takes a bit of effort to support over 20+ devices in Flash Image GUI and keep all of the varying hardware/software security issues separate! Thanks for the support!
 
  • Like
Reactions: ramjet73

xMExHKSx

Member
Sep 30, 2011
33
0
Hi, can i flash radio using this app? 1.49.0011 hboot. htc evo 3d gsm. if possible, should i choose the recovery image?
 

joeykrim

Inactive Recognized Developer
Jan 9, 2009
1,978
1,311
Hi, can i flash radio using this app? 1.49.0011 hboot. htc evo 3d gsm. if possible, should i choose the recovery image?
No, application doesn't support flashing the radio. As far as I've seen HTC didn't expose access to the radio while booted in Android mode.
Even flashing the radio from recovery, isn't direct, I think it hands off the process to the bootloader to do the actual radio flashing.
If things have changed or a new method has been discovered, please link me to the thread and I'll research out the new details!
Hope that helps and appreciate the support!
 

Top Liked Posts

  • There are no posts matching your filters.
  • 85
    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.!
    Thanks to SDX

    HTC Unlock - Newer Hboot:
    If you have a newer Hboot version on either a CDMA or GSM device which has successfully completed the HTC unlock method, this application will work to flash kernels!
    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 (so far ONLY Samsung devices) 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 EVO 3D CDMA and GSM, Amaze, Vivid/Holiday, EVO, EVO Shift, Samsung Google Galaxy Nexus, Nexus S/Nexus S 4G & LG Optimus
    Full Kernel (zImage) Flashing: Samsung Epic
    Check application version for updates

    Specific EVO 3D Support:
    Custom Kernels - CDMA
    [Kernel] [AOSP & Sense] Tiamat 1.1.0 | 2.6.35.14
    [KERNEL] Infected-AnthraX
    [KERNEL] mildAnthraX
    [KERNEL] Silverneedle 1.0
    [KERNEL] mKernel

    Custom Recovery
    Use my app to easily load the Teamwin Recovery - TWRP 2.
    Download either PG86IMG.zip or recovery .img to your sdcard, select from the app and flash!
    CWM 5.0.2.0 - EVO 3D CDMA - - http://download.clockworkmod.com/recoveries/recovery-clockwork-5.0.2.0-shooter.img
    CWM 5.0.2.0 - EVO 3D GSM - http://download.clockworkmod.com/recoveries/recovery-clockwork-5.0.2.0-shooteru.img

    Future Support:
    Will continue to test kernels as they are released to ensure compatibility!

    YouTube Video Directions:
    http://www.youtube.com/watch?v=cEVhKbvXawM&hd=1&list=PL9B601B5B9B4F42BE
    Thanks disturb3d1/wwjoshdew!

    Great Photo Guide:
    http://htcevohacks.com/htc-evo-3d-hacks/how-to-install-kernelrom-on-hboot-1-50-for-htc-evo-3d/

    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): Flash Image GUI

    Contact:
    Any questions, comments, concerns, or issues, please post in this thread or send me an email! Thanks for all the help and support!

    FAQ:
    Q: Will this app support a marketplace to pick and chose kernels from?
    A: No. Use Kernel Manager!

    Screenshots:
    sshot-FlashImageGUI-main-portrait-evo3d-v1.3.2-50.png


    FlashImageGUI-main-portrait-optionsmenu-evo3d-v1.3.2-50.png


    sshot-FlashImageGUI-main-portrait-flash-kernel-evo3d-50.png


    Feedback:
    Please post any helpful feedback. I'm always looking to improve the application!

    HTC Unlock - Hboot 1.5 User Guides for Flash Image GUI!!

    HTC Unlock - Hboot 1.5 Users Guide for ROMs with a Kernel (boot.img file):
    1) Unlock using HTC method for Hboot 1.5 users
    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 modules and kernel from inside the ROM zip file.
    8) Select reboot recovery.
    9) Inside the custom recovery, wipe data is ROM requires and load/flash the ROM zip file.
    10) Reboot to normal Android mode and all should work including Wifi!


    HTC Unlock - Hboot 1.5 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.
    3
    No this allows flashing of Kernels AND Recoveries , just not sure if Recoveries can be flashed with S-ON ;)

    It even has links to the recoveries in the first post :)

    "Full Kernel (Anykernel and boot.img) Flashing and Recovery (zip file or image) flashing: HTC EVO 3D CDMA and GSM, HTC EVO, HTC EVO Shift, Nexus S/Nexus S 4G & LG Optimus
    "
    Yes, recovery images can be flashed into the recovery partition with S-On.
    There are two main drawbacks to S-On.
    1) Kernels can't be flashed from the standard recovery mode. BUT, they can be flashed from fastboot mode or from normal android mode. FIG works in normal android mode making it easy/simple to flash kernels and the kernel portion of ROMs.
    2) I've read S-On does not allow the radio.img to be flashed. I haven't researched this too much as there has been no updated radio.img released yet for the EVO 3D. I'm sure once an updated radio.img comes around, we'll figure this out too!

    Thanks for the support and feedback!
    2
    thanks for taking the time to help out bro!! youre awesome!! :D

    ---------- Post added at 02:45 AM ---------- Previous post was at 01:47 AM ----------

    @Joey.. I'm not extremely new to the rooting business, But however I am, kinda new to knowing what the kernels do and how do they help when flashing ROMs, and last but not release, you can flash ROMs with that app correct. Sorry for so many questions, just trying to learn and understand.

    ---------- Post added at 03:11 AM ---------- Previous post was at 02:45 AM ----------

    Im confused... on this command: 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

    I have the file FlashGUI.apk on my sdcard.. where to now.. sorry Im slow today
    You can use Root Explorer or other applications to install an .apk from sdcard. Using adb, my preferred method is to use the above command which installs the .apk file from your host computer, over the USB connections to your phone.
    ./adb install c:\downloads\FlashImageGUI.apk.
    The command might work if you try, adb install /sdcard/FlashImageGUI.apk.

    Thanks! I've added it to the OP!
    2
    Stupid question, maybe.

    Is this only for those on Hboot 1.5?

    I am rocking 1.40.1100

    Far as I know it's for everyone, but a necessity for 1.50
    Works on all Hboot versions. I've been using and testing it extensively with 1.3 on my own device!

    As an update, I was able to add a Reboot Recovery button after the flash completes to help people save a few extra steps in version 1.3.6 released yesterday!

    Thanks for the support!
    2
    @Joey... sou you are saying that I have successfully unlocked bootloader but stuck at trying to get s-off with the new hboot version, Im using htcevohacks.com method (http://htcevohacks.com/htc-evo-3d-hacks/how-to-root-evo-3d-2-08-651-2-and-later-htc-unlock-method/) but seem to be stuck trying to flash recovery typing this command :fastboot flash recovery cwm-4.0.1.4-shooter.img. please help:confused:
    The point you're stuck at, has nothing to do with this thread, Flash Image GUI, as this thread is dedicated to an application. Although, I can provide a solution to your issue which Flash Image GUI does assist with! In addition, I'll also provide alternative solutions if you're not using Flash Image GUI.

    I do have links in the OP to the custom recoveries available for the EVO 3D. I've wrote up a very nice and detailed generic reply for this type of issue as I frequent the EVO 3D Q&A board a bit too often:
    Steps 1 - 3 will work having used AlphaRevX's revolutionary method. Steps 1 & 3 will work having used HTC's unlock method. The two methods unlock the internal memory write protection differently, hence the difference in steps for flash a custom recovery on the EVO 3D.

    1) Flash from normal android mode: My application works well for this, Flash Image GUI, as well as flashing kernels, especially when being away from or not having a computer available. Select either the PG86IMG.zip, or the actual recovery.img file from the sdcard and flash!

    2) Flash through the bootloader by putting a PG86IMG.zip file on the root of your sdcard. The TWRP version of this file is located a their site linked to in the OP.

    3) Flash the actual recovery image through fastboot by using the following command: fastboot flash recovery c:\downloads\twrp-recovery.img

    Hope that helps! Good luck!