[PROGRAM] Heimdall - Open-Source Cross-Platform Flashing Suite (1.4.0 Now Available)

Search This thread

Riseofdead

Member
Feb 21, 2012
22
8
OnePlus 9 Pro
What Galaxy S devices has Heimdall been tested with?
We’ve tested Heimdall with a Galaxy S GT-I9000 (8 GB) from the United Kingdom and Galaxy S GT-I9000 (16 GB) from Australia. We personally don’t have access to any other devices to test with, however users have confirmed Heimdall functions correctly with the all rebranded variants of the Captivate, Vibrant, Fascinate, Mesmerize, Epic 4G, Galaxy S 4G, Infuse 4G, GT-I9000T, Galaxy Tab (7 and 10.1 inches), Galaxy S II (GT-I9100), Galaxy S III (GT-I9505) and of course the international GT-I9000.

really?

Edit:

ERROR Partition "primary-boot" does not exist in the specified PIT
Ending Session...
Rebooting device...
Releasing device interface...
Re-attaching kernel driver...

Ok, i tried with several options with command line. No one works. Heimdall 1.4.0 definitly does not work. Back to 1.3.1. my device is a Samsung Galaxy S2 I9100 (International Version with 16 GB)
 
Last edited:
  • Like
Reactions: bahathir

kcrudup

Senior Member
Mar 27, 2007
1,517
749
San Francisco Bay Area
ERROR Partition "primary-boot" does not exist in the specified PIT
So try using "heimdall print-pit" to dump your PIT and see what the "Partition Name" is; for example, my GT-N8000 (Galaxy Note 10.1 3G) doesn't have a partition that works with the option "--modem", but if I use "--RADIO", it works (as that's name the modem firmware partition is called in the PIT).
 

moviedrome

Member
Aug 13, 2007
5
0
Hi, I'm sorry if this is a really dumb question. I'm trying to flash the O2 specific modem onto my Galaxy S3 which currently has the stock XXEMG4 firmware (and modem on it)

I initially tried the following command:
Code:
heimdall flash --modem modem.bin

and it tells me that the Partition modem doesn't exist

okay, so I've printed the PIT and it tells me the partition is called radio. I found an issue where they said they added the flag --radio and so I tried:

Code:
heimdall flash --radio modem.bin

This is my result:

Code:
Heimdall v1.4.0

Copyright (c) 2010-2013, Benjamin Dobell, Glass Echidna


This software is provided free of charge. Copying and redistribution is
encouraged.

If you appreciate this software and you would like to support future
development please consider donating:

Initialising connection...
Detecting device...
Claiming interface...
Setting up interface...

Initialising protocol...
Protocol initialisation successful.

Beginning session...

Some devices may take up to 2 minutes to respond.
Please be patient!

Session begun.

Downloading device's PIT file...
PIT file download successful.

ERROR: Partition "radio" does not exist in the specified PIT.
Ending session...
Rebooting device...
Releasing device interface...

Print-pit gives the following:

Code:
Downloading device's PIT file...
PIT file download successful.

Entry Count: 16
Unknown 1: 1598902083
Unknown 2: 844251476
Unknown 3: 30797
Unknown 4: 0
Unknown 5: 0
Unknown 6: 0
Unknown 7: 0
Unknown 8: 0


--- Entry #0 ---
Binary Type: 0 (AP)
Device Type: 2 (MMC)
Identifier: 80
Attributes: 2 (STL Read-Only)
Update Attributes: 1 (FOTA)
Partition Block Size/Offset: 0
Partition Block Count: 1734
File Offset (Obsolete): 0
File Size (Obsolete): 0
Partition Name: BOOTLOADER
Flash Filename: sboot.bin
FOTA Filename: 


--- Entry #1 ---
Binary Type: 0 (AP)
Device Type: 2 (MMC)
Identifier: 81
Attributes: 5 (Read/Write)
Update Attributes: 1 (FOTA)
Partition Block Size/Offset: 1734
Partition Block Count: 312
File Offset (Obsolete): 0
File Size (Obsolete): 0
Partition Name: TZSW
Flash Filename: tz.img
FOTA Filename: 


--- Entry #2 ---
Binary Type: 0 (AP)
Device Type: 2 (MMC)
Identifier: 70
Attributes: 5 (Read/Write)
Update Attributes: 1 (FOTA)
Partition Block Size/Offset: 34
Partition Block Count: 16
File Offset (Obsolete): 0
File Size (Obsolete): 0
Partition Name: PIT
Flash Filename: mx.pit
FOTA Filename: 


--- Entry #3 ---
Binary Type: 0 (AP)
Device Type: 2 (MMC)
Identifier: 71
Attributes: 5 (Read/Write)
Update Attributes: 1 (FOTA)
Partition Block Size/Offset: 50
Partition Block Count: 2048
File Offset (Obsolete): 0
File Size (Obsolete): 0
Partition Name: MD5HDR
Flash Filename: md5.img
FOTA Filename: 


--- Entry #4 ---
Binary Type: 0 (AP)
Device Type: 2 (MMC)
Identifier: 1
Attributes: 5 (Read/Write)
Update Attributes: 1 (FOTA)
Partition Block Size/Offset: 8192
Partition Block Count: 8192
File Offset (Obsolete): 0
File Size (Obsolete): 0
Partition Name: BOTA0
Flash Filename: -
FOTA Filename: 


--- Entry #5 ---
Binary Type: 0 (AP)
Device Type: 2 (MMC)
Identifier: 2
Attributes: 5 (Read/Write)
Update Attributes: 1 (FOTA)
Partition Block Size/Offset: 16384
Partition Block Count: 8192
File Offset (Obsolete): 0
File Size (Obsolete): 0
Partition Name: BOTA1
Flash Filename: -
FOTA Filename: 


--- Entry #6 ---
Binary Type: 0 (AP)
Device Type: 2 (MMC)
Identifier: 3
Attributes: 5 (Read/Write)
Update Attributes: 5 (FOTA)
Partition Block Size/Offset: 24576
Partition Block Count: 40960
File Offset (Obsolete): 0
File Size (Obsolete): 0
Partition Name: EFS
Flash Filename: efs.img
FOTA Filename: 


--- Entry #7 ---
Binary Type: 0 (AP)
Device Type: 2 (MMC)
Identifier: 4
Attributes: 5 (Read/Write)
Update Attributes: 1 (FOTA)
Partition Block Size/Offset: 65536
Partition Block Count: 16384
File Offset (Obsolete): 0
File Size (Obsolete): 0
Partition Name: PARAM
Flash Filename: param.bin
FOTA Filename: 


--- Entry #8 ---
Binary Type: 0 (AP)
Device Type: 2 (MMC)
Identifier: 5
Attributes: 5 (Read/Write)
Update Attributes: 1 (FOTA)
Partition Block Size/Offset: 81920
Partition Block Count: 16384
File Offset (Obsolete): 0
File Size (Obsolete): 0
Partition Name: BOOT
Flash Filename: boot.img
FOTA Filename: 


--- Entry #9 ---
Binary Type: 0 (AP)
Device Type: 2 (MMC)
Identifier: 6
Attributes: 5 (Read/Write)
Update Attributes: 1 (FOTA)
Partition Block Size/Offset: 98304
Partition Block Count: 16384
File Offset (Obsolete): 0
File Size (Obsolete): 0
Partition Name: RECOVERY
Flash Filename: recovery.img
FOTA Filename: 


--- Entry #10 ---
Binary Type: 0 (AP)
Device Type: 2 (MMC)
Identifier: 7
Attributes: 5 (Read/Write)
Update Attributes: 1 (FOTA)
Partition Block Size/Offset: 114688
Partition Block Count: 65536
File Offset (Obsolete): 0
File Size (Obsolete): 0
Partition Name: RADIO
Flash Filename: modem.bin
FOTA Filename: 


--- Entry #11 ---
Binary Type: 0 (AP)
Device Type: 2 (MMC)
Identifier: 8
Attributes: 5 (Read/Write)
Update Attributes: 5 (FOTA)
Partition Block Size/Offset: 180224
Partition Block Count: 2097152
File Offset (Obsolete): 0
File Size (Obsolete): 0
Partition Name: CACHE
Flash Filename: cache.img
FOTA Filename: 


--- Entry #12 ---
Binary Type: 0 (AP)
Device Type: 2 (MMC)
Identifier: 9
Attributes: 5 (Read/Write)
Update Attributes: 5 (FOTA)
Partition Block Size/Offset: 2277376
Partition Block Count: 3145728
File Offset (Obsolete): 0
File Size (Obsolete): 0
Partition Name: SYSTEM
Flash Filename: system.img
FOTA Filename: 


--- Entry #13 ---
Binary Type: 0 (AP)
Device Type: 2 (MMC)
Identifier: 10
Attributes: 5 (Read/Write)
Update Attributes: 5 (FOTA)
Partition Block Size/Offset: 5423104
Partition Block Count: 1146880
File Offset (Obsolete): 0
File Size (Obsolete): 0
Partition Name: HIDDEN
Flash Filename: hidden.img
FOTA Filename: 


--- Entry #14 ---
Binary Type: 0 (AP)
Device Type: 2 (MMC)
Identifier: 11
Attributes: 5 (Read/Write)
Update Attributes: 1 (FOTA)
Partition Block Size/Offset: 6569984
Partition Block Count: 16384
File Offset (Obsolete): 0
File Size (Obsolete): 0
Partition Name: OTA
Flash Filename: -
FOTA Filename: 


--- Entry #15 ---
Binary Type: 0 (AP)
Device Type: 2 (MMC)
Identifier: 12
Attributes: 5 (Read/Write)
Update Attributes: 5 (FOTA)
Partition Block Size/Offset: 6586368
Partition Block Count: 0
File Offset (Obsolete): 0
File Size (Obsolete): 0
Partition Name: USERDATA
Flash Filename: userdata.img
FOTA Filename: remained

So entry 10 clearly says radio, any ideas what i'm doing wrong?

Also probably not the place to ask but while I'm here - is it okay to just flash a radio, I don't want to root or change anything else, just change the modem to try and improve the crap signal O2 give me
 

RoryB

Inactive Recognized Developer
Sep 4, 2008
2,921
766
Lexington
It's been a long time since I read Heimdall stuff, but I think it is case sensitive. Try:

Code:
heimdall flash --[COLOR="Red"]RADIO [/COLOR]modem.bin
 

groksteady

Senior Member
Feb 6, 2012
395
107
Shanghai
Hi, I'm sorry if this is a really dumb question. I'm trying to flash the O2 specific modem onto my Galaxy S3 which currently has the stock XXEMG4 firmware (and modem on it)

I initially tried the following command:
Code:
heimdall flash --modem modem.bin

and it tells me that the Partition modem doesn't exist

okay, so I've printed the PIT and it tells me the partition is called radio. I found an issue where they said they added the flag --radio and so I tried:

Code:
heimdall flash --radio modem.bin

Just to be sure, do you have the right path to the file?

Sent from my GT-I9000 using xda app-developers app
 

moviedrome

Member
Aug 13, 2007
5
0
It's been a long time since I read Heimdall stuff, but I think it is case sensitive. Try:

Code:
heimdall flash --[COLOR="Red"]RADIO [/COLOR]modem.bin

I'll try that thanks

Just to be sure, do you have the right path to the file?

Sent from my GT-I9000 using xda app-developers app

Yep, I've navigated to the directory in terminal before I run heimdall that contains modem.bin

Does anyone know if it's okay to just flash the modem? I'm not going to break it doing that am I? If that is successful then I may move on to rooting etc but I don't have access to Odin as I'm on a mac so it just seems to make things more difficult
 

dk75

Senior Member
Feb 3, 2009
264
93
Dunno, but maybe try adding PIT to it:
Code:
heimdall flash --pit partitions.pit --RADIO modem.bin
 

Benjamin Dobell

Inactive Recognized Developer
Jul 1, 2010
843
600
Melbourne
www.glassechidna.com.au
What Galaxy S devices has Heimdall been tested with?
We’ve tested Heimdall with a Galaxy S GT-I9000 (8 GB) from the United Kingdom and Galaxy S GT-I9000 (16 GB) from Australia. We personally don’t have access to any other devices to test with, however users have confirmed Heimdall functions correctly with the all rebranded variants of the Captivate, Vibrant, Fascinate, Mesmerize, Epic 4G, Galaxy S 4G, Infuse 4G, GT-I9000T, Galaxy Tab (7 and 10.1 inches), Galaxy S II (GT-I9100), Galaxy S III (GT-I9505) and of course the international GT-I9000.

really?

Well, the statement you've quoted is wrong, but only because the GT-I9505 is a SGS4, not an SGS3. But both the SGS3 (GT-I9300) and SGS4 (GT-I9505) have been tested and are supported.

ERROR Partition "primary-boot" does not exist in the specified PIT
Ending Session...
Rebooting device...
Releasing device interface...
Re-attaching kernel driver...

Ok, i tried with several options with command line. No one works. Heimdall 1.4.0 definitly does not work. Back to 1.3.1. my device is a Samsung Galaxy S2 I9100 (International Version with 16 GB)

Heimdall 1.4.0 does work, the trick is to read the README, or if you're an existing user, at least the release notes ;)

Support for legacy-style partition identifications such as --primary-boot has been removed from 1.4.0 because not all devices have the same partitions and as such the legacy partition identification was at best confusing, but mostly just wrong. From Heimdall 1.4.0 onwards you must use exact partition names, or partition IDs, which both can be obtained by printing the PIT.

It's been a long time since I read Heimdall stuff, but I think it is case sensitive. Try:

Code:
heimdall flash --[COLOR="Red"]RADIO [/COLOR]modem.bin

This is correct, the partition names are case sensitive.

what does that do though? I haven't got a partitions.pit file?

You don't need to provide a PIT file, if one is not provided Heimdall grabs the information from the device. Providing the PIT file is a counter-measure of sorts. If you provide a PIT file Heimdall will verify that it matches the PIT file on the device. If they don't match Heimdall will refuse to continue with the flash.
 
  • Like
Reactions: moviedrome

Benjamin Dobell

Inactive Recognized Developer
Jul 1, 2010
843
600
Melbourne
www.glassechidna.com.au
I've used GUI only, and there I've needed PIT file for partition to be recognized.

This is correct, Heimdall Frontend does require a PIT file in order to provide you with a list of possible partitions to flash. However, as mentioned in my previous comment, a PIT file is not required from command line.

In any case, the current PIT can be downloaded from your device and saved to your computer using the "download-pit" command from command line, or from the Utilities tab in Heimdall Frontend.
 

moviedrome

Member
Aug 13, 2007
5
0
okay i've flased the modem and I got the following:

Code:
heimdall flash --RADIO modem.bin
Heimdall v1.4.0

Copyright (c) 2010-2013, Benjamin Dobell, Glass Echidna


This software is provided free of charge. Copying and redistribution is
encouraged.

If you appreciate this software and you would like to support future
development please consider donating:

Initialising connection...
Detecting device...
Claiming interface...
Setting up interface...

Initialising protocol...
Protocol initialisation successful.

Beginning session...

Some devices may take up to 2 minutes to respond.
Please be patient!

Session begun.

Downloading device's PIT file...
PIT file download successful.

Uploading RADIO
100%
RADIO upload successful

Ending session...
Rebooting device...
Releasing device interface...

So it says it's successful but now it is telling me I have no signal and to insert the sim? What do I do now? please help me

---------- Post added at 10:52 PM ---------- Previous post was at 10:28 PM ----------

heart attack over, i reflashed XXEMG4 and it has come back to life :)

That'll teach me to read properly before I flash, in the modems thread it clearly says you can't use older modems once you've gone to xxemg4.
 

mg2195

Senior Member
Dec 5, 2011
2,983
2,572
29
RSM
Wondering if you plan on adding support to the Galaxy S4...more specifically the ATT variant (SGH-I337)

it appears to work with everything flashing wise...except the system partition...everything else goes through except system...i get this error:

Code:
Uploading SYSTEM
100%
ERROR: Failed to confirm end of file transfer sequence!
ERROR: SYSTEM upload failed!

Anything i can do to help with this? or is it something that I am doing wrong or am missing?

Again everything else appears to flash successfully
 

ushiyama

Senior Member
Flash ext[n] image files

Instead of make an .rfs image i thinking in make an .ext2 or .ext4 image an try to use it to flash. I will work on factory.rfs and dbdata.rfs and make and modified factory.ext2 and dbdata.ext2 of them.
Can i use Heimdall 1.4.0 to flash it from linux to an I9000B device?
 
Last edited:

jaythenut

Senior Member
Sep 6, 2012
7,330
2,374
just found this well cool no more using my kids pc for odin
ive got a gs4 i9505 ,and heimdall cant download pit, anyone got any ideas , i am going into download mode:

DInitialising connection...
Detecting device...
Claiming interface...
ERROR: Claiming interface failed!
 
Last edited:

Ms. K

Senior Member
Sep 5, 2013
198
31
Orlando
Error using Heimdall on a MAC

HI,

I am unable to get my S4 into recovery mode no matter what form I try. I can get into the " downloading target screen".
When I used Heimdall. It detected my device. But when I tried to create my "PIT", I received this message.

Initializing connection
Detecting Device
Claiming Interface
Setting up Interface

Checking if protocol is initialized
Protocol is not initializing
Initializing protocol
ERROR:Failed to initialize protocol.

What should I do? I have the ROM, VirginRom on my phone. Everything works. But I saw that I had the incorrect Kernel.

I would appreciate anyone's help.

Ms. K
 

iXNyNe

Senior Member
Dec 26, 2010
1,133
473
37
nemchik.com
HI,

I am unable to get my S4 into recovery mode no matter what form I try. I can get into the " downloading target screen".
When I used Heimdall. It detected my device. But when I tried to create my "PIT", I received this message.

Initializing connection
Detecting Device
Claiming Interface
Setting up Interface

Checking if protocol is initialized
Protocol is not initializing
Initializing protocol
ERROR:Failed to initialize protocol.

What should I do? I have the ROM, VirginRom on my phone. Everything works. But I saw that I had the incorrect Kernel.

I would appreciate anyone's help.

Ms. K

There two ways to look at your situation;
1) backups of EVERYTHING are always good to have. Making and maintaining backups is the safe and responsible thing to do whenever you start making your way through various device mods. They can really save you in case of an accident or major failure.
2) backing up your PIT is almost useless. PIT is the partition table and its rarely modified on modern android devices since 4.0 (ice cream sandwich) pretty much requires mtp partitioning. Back in the days of android 2.x (all the various flavors) many who wanted to switch from their manufacturers ROM to an aosp based ROM would need to repartition their device.

My honest advice to you is find a compatible kernel (make absolutely sure it is compatible with your ROM) and flash it using mobile Odin (there are plenty of instructions in the first few posts of the mobile Odin thread about how to safely do this). A proper kernel should include a working recovery, but if not look into clockworkmod (cwm) or team win (twrp) which you should be able to install as long as you can get adb (if heimdall detected your device then adb should be working)

Heimdall is an awesome tool but sounds like overkill for what your currently doing (which sounds like you just need a working kernel/ROM/recovery combination). Once you have a working recovery, do a nandroid backup (backup from within the recovery).

If anything I've said above is incorrect, I'm sorry for being a bit out of date, I haven't needed heimdall or Odin in quite some time personally.

Sent from my SGH-I777 using Tapatalk 4
 

Ms. K

Senior Member
Sep 5, 2013
198
31
Orlando
Incorrect situation

There two ways to look at your situation;
1) backups of EVERYTHING are always good to have. Making and maintaining backups is the safe and responsible thing to do whenever you start making your way through various device mods. They can really save you in case of an accident or major failure.
2) backing up your PIT is almost useless. PIT is the partition table and its rarely modified on modern android devices since 4.0 (ice cream sandwich) pretty much requires mtp partitioning. Back in the days of android 2.x (all the various flavors) many who wanted to switch from their manufacturers ROM to an aosp based ROM would need to repartition their device.

My honest advice to you is find a compatible kernel (make absolutely sure it is compatible with your ROM) and flash it using mobile Odin (there are plenty of instructions in the first few posts of the mobile Odin thread about how to safely do this). A proper kernel should include a working recovery, but if not look into clockworkmod (cwm) or team win (twrp) which you should be able to install as long as you can get adb (if heimdall detected your device then adb should be working)

Heimdall is an awesome tool but sounds like overkill for what your currently doing (which sounds like you just need a working kernel/ROM/recovery combination). Once you have a working recovery, do a nandroid backup (backup from within the recovery).

If anything I've said above is incorrect, I'm sorry for being a bit out of date, I haven't needed heimdall or Odin in quite some time personally.


Sent from my SGH-I777 using Tapatalk 4

Hi,


Thank you so much for your time. I actually had the right kernel but for some reason the Loki zip must not have went through. I actually got my recovery back by taking back to where I purchased it from. I"m looking at the ROM, Graviton now.

http://xdaforums.com/showthread.php?t=2372742

I love how helpful everyone here is. Thank you so much for your time.

Ms. K

Samsung s4
Model Number
Samsung SGH-1337
Android Version
4.2.2
Baseband Version
1337UCUAMDL
Kernel Version
3.4.0-453947
se.infra@SEI-46 #1
Sat Apr 27 17:06 KST 2013
Build Version
JDQ391337UCUAMDL
 
Wondering if you plan on adding support to the Galaxy S4...more specifically the ATT variant (SGH-I337)

it appears to work with everything flashing wise...except the system partition...everything else goes through except system...i get this error:

Code:
Uploading SYSTEM
100%
ERROR: Failed to confirm end of file transfer sequence!
ERROR: SYSTEM upload failed!

Anything i can do to help with this? or is it something that I am doing wrong or am missing?

Again everything else appears to flash successfully

I'm seeing a similar error message with the US AT&T i317 Note 2 when attempting to flash the modem. The modem flashes to 100% (correctly -compared a dd dump with original) then ends with:

Code:
ERROR: RADIO upload failed!
 
Ending session...
ERROR:  Failed to send end session packet!
Releasing device interface...

(Then below the status window left of the progress bar, "Failed to confirm end of file transfer sequence!")


UPDATE (face palm) - This error is a result of attempting to flash a modem pulled from the phone after an OTA update using "dd" and not stripping the trailing zeros off the file. On the i317, Samsung is signing the modem.bin with a CA cert and the bootloader is erroring out if the file is not the correct length. (After editing the modem.bin to the correct length, the Heimdall flash worked flawlessly).

To recover from the bad flash was easy enough - flash a known working package in download mode.

Benjamin - Both mg2195 and I arrived here independently, but both were long time Samsung Infuse users, and have benefited from your work and that of Adam Outler. Heimdall and Heimdall-One-Click roms and kernel packages were provided by qkster and have been used extensively by many on the xda Infuse forum. Thank you for making that possible.
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 254
    What is Heimdall?
    Heimdall is a cross-platform open-source tool suite used to flash ROMs onto Samsung Galaxy S devices.

    How does it work?
    Heimdall uses the same protocol as Odin to interact with a device in download mode. USB communication in Heimdall is handled by the popular open-source USB library, libusb-1.0.

    Why “Heimdall”?
    The flashing software Odin is named after the king of gods in Norse mythology. Loke, the software component on the Galaxy S that provides functionality to flash, may also to be named after an important character in Norse mythology, often translated as Loki. As such I have named my flashing software Heimdall, after the Norse god, and guardian of the Bifrost Bridge.

    What platforms does Heimdall run on?
    Linux, OS X and Windows (XP, Vista, 7 etc.)

    Why use Heimdall when we can use Odin?
    Odin is generally unreliable and only runs on Windows systems. Furthermore, Odin is leaked Samsung software that is not freely available or well understood by the community.

    Is Heimdall safe?
    No matter what method you chose, flashing firmware onto your phone has a lot of potential for disaster. We have tested Heimdall with a variety of phones flashing several different firmware versions resulting in a 100% success rate. As such we believe that Heimdall is generally reliable. However keep in mind, just like any flashing software, Heimdall has the potential to brick your phone if not used correctly.

    How do Galaxy S phones get bricked when flashing?
    Besides the inherent risks like power outs, accidental removal of the USB cable etc. The Galaxy S appears to be running extremely unreliable USB control software.

    A failure to flash does not automatically equate to a bricked phone. However if you're extremely unlucky and the flash fails whilst transferring the primary boot-loader, secondary boot-loader or params.lfs (all quite small) than you've got yourself a paper weight that you're hoping Samsung will replace.

    Please be extremely careful mixing files from different firmware releases. Don't do so unless you're certain it will work!

    What Galaxy S variants has Heimdall been tested with?
    We’ve tested Heimdall with a Galaxy S GT-I9000 (8 GB) from the United Kingdom and Galaxy S GT-I9000 (16 GB) from Australia. We don’t personally have access to any other devices to test with, however users have confirmed Heimdall functions correctly with the AT&T Captivate, Bell Vibrant, Telstra GT-I9000T, Epic 4G and the Galaxy Tab.

    Enough talk, where can we get it?
    The latest release is available here. Please read the instructions and README files included in the archives.

    I love you, man. Will you have my baby?
    No, but I will very gladly accept donations. If you appreciate my work and would like to support future development you can make a donation here. If you think you have something else to offer, then feel free to shoot me a PM or contact me via the contact form on the Glass Echidna website.
    8
    My response to the extremely rude user whose e-mail is included in my previous post:

    [Name Redacted],

    Am *I* kidding...? Really?

    Instead of whinging to developers who volunteer their free-time to provide the community with free and open-source software, perhaps you could get of your arse and contribute.

    Firstly, did you actually read the README? It includes extremely detailed steps that explain precisely how to use both Heimdall and Heimdall Frontend? Did you even bother to look for official documentation? Considering you intend to flash a device I'd say 8 hours of reading isn't at all unreasonable. You should actually have some comprehension of what it is you're trying to achieve, unless you'd like world's most expensive paperweight sitting on your desk. The process is only a disarray if you take no logical steps to understand it, the obvious first step being; read the README!

    Secondly, how in all honesty do you expect me to support every variation of Samsung device ever released? I can assure, there's a lot. I live in Australia, we don't even operate archaic CDMA networks here! The software was originally written for the international Galaxy S (GT-I9000). The fact that it works with any of Samsung's other of devices is little more than a coincidence. *If* you would like support for the Galaxy CDMA tablet, aside from implementing it yourself (it's open-source after all), then perhaps you should consider donating towards the cost of purchasing such a device. Alternatively, perhaps you would consider mailing your tablet to me and paying the postage for me to return it to you when I'm done. Then I'll volunteer *my free-time* to add support for yet another device. Because believe it or not I can't afford to spend tens of thousands of dollars purchasing every variation of every device under the sun in exchange for the occasional donation, which mind you, don't even cover my bandwidth costs!

    I strongly suggest next time you give some thought to what you write before contacting someone who gives up their free-time to help people just like you.

    - Ben
    7
    Hey everyone,

    Sorry for disappearing for a little while, I've been quite busy. However the good news is that I just managed to set aside some time to work on an update to Heimdall!

    The update will be command line only (for now) and adds the following functionality:
    - Support for the Galaxy S II! (Hopefully, keep reading.)
    - Support for SHW-M110S (Korean Galaxy S).
    - Improved support for Galaxy Tab, Captivate and Vibrants (see below).
    - No reboot option.
    - Dump the devices PIT file and print the information in a human readable format.
    - Support for more named partition parameters i.e. --hidden, --movinand.
    - One more major feature (read below).

    However the biggest change is probably the proper support for PIT files. This means that less things are hard-coded. Instead Heimdall will be grabbing data from your device's PIT file or the PIT file you specify when repartitioning. This may seem like it has minor impact on the usefulness of Heimdall but it actually allowed me to add a second method of specifying files to be flashed to your phone.

    You can now type
    heimdall --<partition identifier> <filename>
    i.e.

    This essentially means you can flash any file your device supports as long as you know the partition identifier. Of course I don't expect you to know them off the top of your head. This is where the PIT file dumping functionality comes in.
    Walah! You now have a complete list of all the files your device supports.

    Another minor change is that I've removed the restriction on needing to specify bootloaders (or any files in particular) when repartitioning. However, this was in place as a safety feature. I honestly have no idea whether repartitioning without certain files is safe, and I have no immediate plans to find out, so please be careful!

    Back to the Galaxy S II. I don't own a Galaxy S II, so I'm unable to test any changes at present. However I very much would like to own a Galaxy S II! I'm certainly not one to hold out on releasing open-source software until a certain amount of donations have been received. I don't particularly agree with that. However let's just say that I'd very much like to be able to develop (and test) for the Galaxy S II and your donations would be very much appreciated! Again, a very big thanks to those of you who have donated!!!

    Donate Link: http://www.glassechidna.com.au/donate/

    Source Code ETA: < 24 hours
    Platform-specific binaries might take a little while longer to churn out.
    5
    Source for 1.2.0 (beta) Heimdall command line tool has been pushed to Github. I'm going to get some sleep, when I wake up I'll start posting binaries.

    Galaxy S II users, let me know if it works.
    4
    I've used GUI only, and there I've needed PIT file for partition to be recognized.

    This is correct, Heimdall Frontend does require a PIT file in order to provide you with a list of possible partitions to flash. However, as mentioned in my previous comment, a PIT file is not required from command line.

    In any case, the current PIT can be downloaded from your device and saved to your computer using the "download-pit" command from command line, or from the Utilities tab in Heimdall Frontend.