• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!
  • Fill out your device list and let everyone know which phones you have!    Edit Your Device Inventory

32 Gb PIT file

Search This thread

invisiblek

Recognized Developer
Feb 24, 2010
1,584
5,896
Minnesota
www.invisiblek.org
pretty sure this is what we are looking for:

16gb:
http://invisiblek.chickenkiller.com/pits/sch-i535-16gb.pit
md5sum: f9fedab6463fb6ba64d6fbcf9c74ac58

32gb:
http://invisiblek.chickenkiller.com/pits/sch-i535-32gb.pit
md5sum: 1800f1126ce952b26a9f3eee8e33869a


these were grabbed by running this from a root shell on the device:
Code:
dd if=/dev/block/mmcblk0 of=/sdcard/out.pit bs=8 count=481 skip=2176

The PIT is signed now, so we need to pull the signature. According to Ralekdev, we cannot have any padding on the end (hence the messed up command to pull it)
This should pull exactly what we need (not tested yet)

EDIT: Another morsel of information, I pulled the PIT from an AT&T 16gb SGS3 and it was exactly the same except for the signature at the end. This is actually expected but just a confirmation that the two PITs above WILL NOT work on any other device.

16gb AT&T SGSIII PIT:
http://invisiblek.chickenkiller.com/pits/sgh-i747-16gb.pit
md5sum: be4b256f60ec3ca46e9c50629fecd789
 
Last edited:

con247

Retired Recognized Developer
Sep 1, 2010
3,154
3,108
Ann Arbor
So does this mean we can make our own pit for ourself for our own backup purposes?

So like I run the dd command on my phone. It will make a valid .pit for MY device?
 

invisiblek

Recognized Developer
Feb 24, 2010
1,584
5,896
Minnesota
www.invisiblek.org
So does this mean we can make our own pit for ourself for our own backup purposes?

So like I run the dd command on my phone. It will make a valid .pit for MY device?

if you run the dd command above, it will give you a PIT that is 100% identical to the one i have posted (obviously depending on if you have a 16gb or 32gb)

there is no need for you to dump this yourself

what would be nice is to get a pit for each of the 4 major carriers' 16gb and 32gb models, got 3/8 so far...

EDIT: turns out there is not a 32gb version of the AT&T SGS3 (SGH-I747). But I did acquire 16gb and 32gb Sprint (SPH-I710) PITs
http://invisiblek.chickenkiller.com/pits
 
Last edited:

joka10

Senior Member
Feb 15, 2010
66
5
Miami
pretty sure this is what we are looking for:

16gb:
http://invisiblek.chickenkiller.com/pits/sch-i535-16gb.pit
md5sum: f9fedab6463fb6ba64d6fbcf9c74ac58

32gb:
http://invisiblek.chickenkiller.com/pits/sch-i535-32gb.pit
md5sum: 1800f1126ce952b26a9f3eee8e33869a


these were grabbed by running this from a root shell on the device:
Code:
dd if=/dev/block/mmcblk0 of=/sdcard/out.pit bs=8 count=481 skip=2176

The PIT is signed now, so we need to pull the signature. According to Ralekdev, we cannot have any padding on the end (hence the messed up command to pull it)
This should pull exactly what we need (not tested yet)

EDIT: Another morsel of information, I pulled the PIT from an AT&T 16gb SGS3 and it was exactly the same except for the signature at the end. This is actually expected but just a confirmation that the two PITs above WILL NOT work on any other device.

16gb AT&T SGSIII PIT:
http://invisiblek.chickenkiller.com/pits/sgh-i747-16gb.pit
md5sum: be4b256f60ec3ca46e9c50629fecd789

To understand a little bit better what's the difference between the pits flashed using the first dd command as opposed to the new one that you wrote. I don't get it because i was able to flash my pit's using the old method. I mean is it because the new one is uniquely signed it will actually fix a bricked phone?
 

droidstyle

Inactive Recognized Contributor
May 7, 2011
6,470
3,602
Fort Wayne
pretty sure this is what we are looking for:

16gb:
http://invisiblek.chickenkiller.com/pits/sch-i535-16gb.pit
md5sum: f9fedab6463fb6ba64d6fbcf9c74ac58

32gb:
http://invisiblek.chickenkiller.com/pits/sch-i535-32gb.pit
md5sum: 1800f1126ce952b26a9f3eee8e33869a


these were grabbed by running this from a root shell on the device:
Code:
dd if=/dev/block/mmcblk0 of=/sdcard/out.pit bs=8 count=481 skip=2176

The PIT is signed now, so we need to pull the signature. According to Ralekdev, we cannot have any padding on the end (hence the messed up command to pull it)
This should pull exactly what we need (not tested yet)

EDIT: Another morsel of information, I pulled the PIT from an AT&T 16gb SGS3 and it was exactly the same except for the signature at the end. This is actually expected but just a confirmation that the two PITs above WILL NOT work on any other device.

16gb AT&T SGSIII PIT:
http://invisiblek.chickenkiller.com/pits/sgh-i747-16gb.pit
md5sum: be4b256f60ec3ca46e9c50629fecd789
Links dont work...thx
 
  • Like
Reactions: spagman72

letinsh

Senior Member
Jun 14, 2010
421
159
Links work for me...

As for the topic of this thread, thanks to invisiblek and ralekdev, I'm back - my phone sees all 32Gb that I paid for. I'm working on a write-up and will post it here, today, as I have time.
 

droidstyle

Inactive Recognized Contributor
May 7, 2011
6,470
3,602
Fort Wayne
Links work for me...

As for the topic of this thread, thanks to invisiblek and ralekdev, I'm back - my phone sees all 32Gb that I paid for. I'm working on a write-up and will post it here, today, as I have time.

how are the links working for you? I have clicked on them from 2 different pc's and my device and all that opens is a bunch of code...no download
 

letinsh

Senior Member
Jun 14, 2010
421
159
Solved :)

What I broke:
I pre-ordered my SCH-I535 32Gb from VZW to keep my unlimited data. When the thing finally showed up, I promptly jumped into the game and rooted (using root66). Once I got root, I tried to use Odin to push a CWM recovery to the phone. Being the idiot, I failed to check the md5sum of the recovery I downloaded. I pushed a corrupt file and hard-bricked the phone.

Tracked down Josh at MobileTechVideos.com (connexion2005 here on XDA), drove out to College Station, and he JTAG'd my S3 back to life. Being that the phone had just come out and mine was the first 32Gb version he'd seen, he wrote, byte by byte, from a 16Gb image, essentially replacing my GPT and PIT files with 16Gb info. So now, my phone was back to life, but it only saw 16Gb of internal storage, not the 32Gb that were actually there. (Having said that, Josh now has his process down pat and this should never be an issue again - Thanks, Josh!)

It is my understanding that:
The PIT file contains partition names (BOOT), the names of the files that go in them (boot.img), the size of each partition (20480 blocks), the partition ID (7), and any flags (RO).
The GPT contains the physical layout for the partitions in memory (Boot partition starts at byte 70647808 and goes to byte 81133567) and reads all the info from the PIT to fill in the blanks.
(Someone correct me if this is wrong)​

So, using the "parted" command, I could view my GPT:
Code:
    (parted) unit b
    unit b
    unit b
    (parted) print free
    print free
    print free
    Model: MMC MBG8FB (sd/mmc)
    Disk /dev/block/mmcblk0: 31268536320B
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
     
    Number  Start         End           Size          File system  Name      Flags
            17408B        4194303B      4176896B      Free Space
     1      4194304B      67108863B     62914560B                  modem
     2      67108864B     67239935B     131072B                    sbl1
     3      67239936B     67502079B     262144B                    sbl2
     4      67502080B     68026367B     524288B                    sbl3
     5      68026368B     70123519B     2097152B                   aboot
     6      70123520B     70647807B     524288B                    rpm
     7      70647808B     81133567B     10485760B                  boot
     8      81133568B     81657855B     524288B                    tz
     9      81657856B     82182143B     524288B                    pad
    10      82182144B     92667903B     10485760B                  param
    11      92667904B     106954751B    14286848B     ext4         efs
    12      106954752B    110100479B    3145728B                   modemst1
    13      110100480B    113246207B    3145728B                   modemst2
    14      113246208B    1686110207B   1572864000B   ext4         system
    15      1686110208B   14826864639B  13140754432B  ext4         userdata
    16      14826864640B  14835253247B  8388608B                   persist
    17      14835253248B  15716057087B  880803840B    ext4         cache
    18      15716057088B  15726542847B  10485760B                  recovery
    19      15726542848B  15737028607B  10485760B                  fota
    20      15737028608B  15743320063B  6291456B                   backup
    21      15743320064B  15746465791B  3145728B                   fsg
    22      15746465792B  15746473983B  8192B                      ssd
    23      15746473984B  15751716863B  5242880B                   grow
            15751716864B  31268519423B  15516802560B  Free Space
As you can see, all my partitions are there, but I've got this 14.45Gb of "Free Space" unformatted and unuseable by me after my final partition.

The good GPT for a 32Gb S3 looks like this:
Code:
isk /dev/block/mmcblk0: 31268536320B
Sector size (logical/physical): 512B/512B
Partition Table: gpt
 
Number  Start         End           Size          File system  Name      Flags
 1      4194304B      67108863B     62914560B                  modem
 2      67108864B     67239935B     131072B                    sbl1
 3      67239936B     67502079B     262144B                    sbl2
 4      67502080B     68026367B     524288B                    sbl3
 5      68026368B     70123519B     2097152B                   aboot
 6      70123520B     70647807B     524288B                    rpm
 7      70647808B     81133567B     10485760B                  boot
 8      81133568B     81657855B     524288B                    tz
 9      81657856B     82182143B     524288B                    pad
10      82182144B     92667903B     10485760B                  param
11      92667904B     106954751B    14286848B     ext4         efs
12      106954752B    110100479B    3145728B                   modemst1
13      110100480B    113246207B    3145728B                   modemst2
14      113246208B    1686110207B   1572864000B   ext4         system
15      1686110208B   30337400831B  28651290624B  ext4         userdata
16      30337400832B  30345789439B  8388608B      ext4         persist
17      30345789440B  31226593279B  880803840B    ext4         cache
18      31226593280B  31237079039B  10485760B                  recovery
19      31237079040B  31247564799B  10485760B                  fota
20      31247564800B  31253856255B  6291456B                   backup
21      31253856256B  31257001983B  3145728B                   fsg
22      31257001984B  31257010175B  8192B                      ssd
23      31257010176B  31262253055B  5242880B                   grow


How I fixed it:


So, being the n00b I am, I thought I'd use the tools included with parted to make some partitions at the end of the Free Space, move the data to them, then grow my Userdata partition.
I dd'd the contents of each partition (/dev/block/mmcblk0pXX) to my sdcard to have backups of everything.
Using mkpart, etc, I sized the new partitions just right, renamed them just so, then dd'd the contents of each partition from my sdcard back to the new partition.....
Then tried to reboot....
Hard Brick, again.

Back out to College Station (I think I'm their only walk-in customer... :p ) where Josh brought me back to life again.

Search continued. I learned I couldn't just change the GPT...there was something that kept that from sticking. Turns out, both the GPT and the PIT are hashed and (I think) the PIT is signed.

Talking with invisiblek and ralekdev, they helped me figure out exactly where the PIT was located
Code:
dd if=/dev/block/mmcblk0 of=/sdcard/out.pit bs=8 count=481 skip=2176
and where the GPT is:
Code:
dd if=/dev/block/mmcblk0 of=/sdcard/gpt.bin bs=8 count=2176

Invisiblek then ripped the PIT from his 32Gb S3 and sent it to me.

ralekdev did me a solid and verified that flashing the PIT via Odin wouldn't bork me again, but also gave me a safe bootchain to put in the PDA section to flash at the same time.

So, using the above linked SCH-I535 32Gb PIT file in the PIT field and ralekdev's bootchain in the PDA field, I checked the auto-reboot, repartition, and f.reset time checkboxes, crossed my fingers and pulled the trigger.

Flashed successfully, leaving all my data (ROM, settings, data, etc) unchanged. The PIT only changes the references, and doesn't actually move any data. I rebooted, but my phone still only showed 16Gb for Userdata.
I dumped my PIT and GPT using the above dd commands, and ralekdev confirmed that the flash was successful and the changes stuck, but it didn't affect my currently installed ROM.

So I downloaded invisiblek's bone-stock rom, put it in the PDA section of Odin, and installed.

That did the trick. As the install starts, it references the PIT to figure out where to put everything.

I re-rooted and grabbed CWM recovery, and now I'm back to the races!!

Big shout-out to invisiblek and ralekdev for all their help, and connexion2005 for bringing me back to life, twice. :victory:

As I stated above, MobileTechVideos and Josh can now successfully fix 32Gb S3's without this being an issue :)
 
Last edited:

Ralekdev

Retired Senior Recognized Developer
Sep 4, 2010
32
384
Talking with invisiblek and ralekdev, they helped me figure out exactly where the PIT was located
Code:
dd if=/dev/block/mmcblk0 of=/sdcard/out.pit bs=8 count=481 skip=2176
and where the GPT is:
Code:
dd if=/dev/block/mmcblk0 of=/sdcard/gpt.bin bs=1 count=2175

Slight correction, the GPT can be dumped with
Code:
dd if=/dev/block/mmcblk0 of=/sdcard/gpt.bin bs=8 count=2176

It's 0x200 bytes for the protective MBR, 0x200 for the GPT header, and 128 x 128 byte GPT partition headers = 0x4400 bytes for the full GPT block.

I already removed the bootchain from my dropbox so that link won't work, but it's just the standard VRALF2. You can also get it here http://invisiblek.chickenkiller.com/BOOTLOADER_I535VRALF2_618049_REV09_user_low_ship.tar.md5
 
Last edited:

letinsh

Senior Member
Jun 14, 2010
421
159
Slight correction, the GPT can be dumped with
Code:
dd if=/dev/block/mmcblk0 of=/sdcard/gpt.bin bs=8 count=2176

It's 0x100 bytes for the protective MBR, 0x100 for the GPT header, and 128 x 128 byte GPT partition headers = 0x4400 bytes for the full GPT block.

I already removed the bootchain from my dropbox so that link won't work, but it's just the standard VRALF2. You can also get it here http://invisiblek.chickenkiller.com/BOOTLOADER_I535VRALF2_618049_REV09_user_low_ship.tar.md5

Corrected and updated. Thanks!
 

Top Liked Posts

  • There are no posts matching your filters.
  • 9
    pretty sure this is what we are looking for:

    16gb:
    http://invisiblek.chickenkiller.com/pits/sch-i535-16gb.pit
    md5sum: f9fedab6463fb6ba64d6fbcf9c74ac58

    32gb:
    http://invisiblek.chickenkiller.com/pits/sch-i535-32gb.pit
    md5sum: 1800f1126ce952b26a9f3eee8e33869a


    these were grabbed by running this from a root shell on the device:
    Code:
    dd if=/dev/block/mmcblk0 of=/sdcard/out.pit bs=8 count=481 skip=2176

    The PIT is signed now, so we need to pull the signature. According to Ralekdev, we cannot have any padding on the end (hence the messed up command to pull it)
    This should pull exactly what we need (not tested yet)

    EDIT: Another morsel of information, I pulled the PIT from an AT&T 16gb SGS3 and it was exactly the same except for the signature at the end. This is actually expected but just a confirmation that the two PITs above WILL NOT work on any other device.

    16gb AT&T SGSIII PIT:
    http://invisiblek.chickenkiller.com/pits/sgh-i747-16gb.pit
    md5sum: be4b256f60ec3ca46e9c50629fecd789
    5
    Solved :)

    What I broke:
    I pre-ordered my SCH-I535 32Gb from VZW to keep my unlimited data. When the thing finally showed up, I promptly jumped into the game and rooted (using root66). Once I got root, I tried to use Odin to push a CWM recovery to the phone. Being the idiot, I failed to check the md5sum of the recovery I downloaded. I pushed a corrupt file and hard-bricked the phone.

    Tracked down Josh at MobileTechVideos.com (connexion2005 here on XDA), drove out to College Station, and he JTAG'd my S3 back to life. Being that the phone had just come out and mine was the first 32Gb version he'd seen, he wrote, byte by byte, from a 16Gb image, essentially replacing my GPT and PIT files with 16Gb info. So now, my phone was back to life, but it only saw 16Gb of internal storage, not the 32Gb that were actually there. (Having said that, Josh now has his process down pat and this should never be an issue again - Thanks, Josh!)

    It is my understanding that:
    The PIT file contains partition names (BOOT), the names of the files that go in them (boot.img), the size of each partition (20480 blocks), the partition ID (7), and any flags (RO).
    The GPT contains the physical layout for the partitions in memory (Boot partition starts at byte 70647808 and goes to byte 81133567) and reads all the info from the PIT to fill in the blanks.
    (Someone correct me if this is wrong)​

    So, using the "parted" command, I could view my GPT:
    Code:
        (parted) unit b
        unit b
        unit b
        (parted) print free
        print free
        print free
        Model: MMC MBG8FB (sd/mmc)
        Disk /dev/block/mmcblk0: 31268536320B
        Sector size (logical/physical): 512B/512B
        Partition Table: gpt
         
        Number  Start         End           Size          File system  Name      Flags
                17408B        4194303B      4176896B      Free Space
         1      4194304B      67108863B     62914560B                  modem
         2      67108864B     67239935B     131072B                    sbl1
         3      67239936B     67502079B     262144B                    sbl2
         4      67502080B     68026367B     524288B                    sbl3
         5      68026368B     70123519B     2097152B                   aboot
         6      70123520B     70647807B     524288B                    rpm
         7      70647808B     81133567B     10485760B                  boot
         8      81133568B     81657855B     524288B                    tz
         9      81657856B     82182143B     524288B                    pad
        10      82182144B     92667903B     10485760B                  param
        11      92667904B     106954751B    14286848B     ext4         efs
        12      106954752B    110100479B    3145728B                   modemst1
        13      110100480B    113246207B    3145728B                   modemst2
        14      113246208B    1686110207B   1572864000B   ext4         system
        15      1686110208B   14826864639B  13140754432B  ext4         userdata
        16      14826864640B  14835253247B  8388608B                   persist
        17      14835253248B  15716057087B  880803840B    ext4         cache
        18      15716057088B  15726542847B  10485760B                  recovery
        19      15726542848B  15737028607B  10485760B                  fota
        20      15737028608B  15743320063B  6291456B                   backup
        21      15743320064B  15746465791B  3145728B                   fsg
        22      15746465792B  15746473983B  8192B                      ssd
        23      15746473984B  15751716863B  5242880B                   grow
                15751716864B  31268519423B  15516802560B  Free Space
    As you can see, all my partitions are there, but I've got this 14.45Gb of "Free Space" unformatted and unuseable by me after my final partition.

    The good GPT for a 32Gb S3 looks like this:
    Code:
    isk /dev/block/mmcblk0: 31268536320B
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
     
    Number  Start         End           Size          File system  Name      Flags
     1      4194304B      67108863B     62914560B                  modem
     2      67108864B     67239935B     131072B                    sbl1
     3      67239936B     67502079B     262144B                    sbl2
     4      67502080B     68026367B     524288B                    sbl3
     5      68026368B     70123519B     2097152B                   aboot
     6      70123520B     70647807B     524288B                    rpm
     7      70647808B     81133567B     10485760B                  boot
     8      81133568B     81657855B     524288B                    tz
     9      81657856B     82182143B     524288B                    pad
    10      82182144B     92667903B     10485760B                  param
    11      92667904B     106954751B    14286848B     ext4         efs
    12      106954752B    110100479B    3145728B                   modemst1
    13      110100480B    113246207B    3145728B                   modemst2
    14      113246208B    1686110207B   1572864000B   ext4         system
    15      1686110208B   30337400831B  28651290624B  ext4         userdata
    16      30337400832B  30345789439B  8388608B      ext4         persist
    17      30345789440B  31226593279B  880803840B    ext4         cache
    18      31226593280B  31237079039B  10485760B                  recovery
    19      31237079040B  31247564799B  10485760B                  fota
    20      31247564800B  31253856255B  6291456B                   backup
    21      31253856256B  31257001983B  3145728B                   fsg
    22      31257001984B  31257010175B  8192B                      ssd
    23      31257010176B  31262253055B  5242880B                   grow


    How I fixed it:


    So, being the n00b I am, I thought I'd use the tools included with parted to make some partitions at the end of the Free Space, move the data to them, then grow my Userdata partition.
    I dd'd the contents of each partition (/dev/block/mmcblk0pXX) to my sdcard to have backups of everything.
    Using mkpart, etc, I sized the new partitions just right, renamed them just so, then dd'd the contents of each partition from my sdcard back to the new partition.....
    Then tried to reboot....
    Hard Brick, again.

    Back out to College Station (I think I'm their only walk-in customer... :p ) where Josh brought me back to life again.

    Search continued. I learned I couldn't just change the GPT...there was something that kept that from sticking. Turns out, both the GPT and the PIT are hashed and (I think) the PIT is signed.

    Talking with invisiblek and ralekdev, they helped me figure out exactly where the PIT was located
    Code:
    dd if=/dev/block/mmcblk0 of=/sdcard/out.pit bs=8 count=481 skip=2176
    and where the GPT is:
    Code:
    dd if=/dev/block/mmcblk0 of=/sdcard/gpt.bin bs=8 count=2176

    Invisiblek then ripped the PIT from his 32Gb S3 and sent it to me.

    ralekdev did me a solid and verified that flashing the PIT via Odin wouldn't bork me again, but also gave me a safe bootchain to put in the PDA section to flash at the same time.

    So, using the above linked SCH-I535 32Gb PIT file in the PIT field and ralekdev's bootchain in the PDA field, I checked the auto-reboot, repartition, and f.reset time checkboxes, crossed my fingers and pulled the trigger.

    Flashed successfully, leaving all my data (ROM, settings, data, etc) unchanged. The PIT only changes the references, and doesn't actually move any data. I rebooted, but my phone still only showed 16Gb for Userdata.
    I dumped my PIT and GPT using the above dd commands, and ralekdev confirmed that the flash was successful and the changes stuck, but it didn't affect my currently installed ROM.

    So I downloaded invisiblek's bone-stock rom, put it in the PDA section of Odin, and installed.

    That did the trick. As the install starts, it references the PIT to figure out where to put everything.

    I re-rooted and grabbed CWM recovery, and now I'm back to the races!!

    Big shout-out to invisiblek and ralekdev for all their help, and connexion2005 for bringing me back to life, twice. :victory:

    As I stated above, MobileTechVideos and Josh can now successfully fix 32Gb S3's without this being an issue :)
    2
    man that would be great if somebody would post a pitfile for both versions...I know that would help a few folks that corrupted thier emmc internal memory and get the "e cant mount" errors in recovery.
    2
    Talking with invisiblek and ralekdev, they helped me figure out exactly where the PIT was located
    Code:
    dd if=/dev/block/mmcblk0 of=/sdcard/out.pit bs=8 count=481 skip=2176
    and where the GPT is:
    Code:
    dd if=/dev/block/mmcblk0 of=/sdcard/gpt.bin bs=1 count=2175

    Slight correction, the GPT can be dumped with
    Code:
    dd if=/dev/block/mmcblk0 of=/sdcard/gpt.bin bs=8 count=2176

    It's 0x200 bytes for the protective MBR, 0x200 for the GPT header, and 128 x 128 byte GPT partition headers = 0x4400 bytes for the full GPT block.

    I already removed the bootchain from my dropbox so that link won't work, but it's just the standard VRALF2. You can also get it here http://invisiblek.chickenkiller.com/BOOTLOADER_I535VRALF2_618049_REV09_user_low_ship.tar.md5
    1
    I am in need of the PIT file for a SCH-I535 32Gb version.

    Anyone willing/able to rip one for me? My 32Gb phone got JTAG'd back to life but using files from a 16Gb version, so it's kinda confused as to how much internal storage it has. I'm hoping I can flash the PIT from a 32Gb phone, then do a reinstall of the ROM and it'll recognize all of my available storage....

    Thanks for your help!

    -Andy

    EDIT:
    Problem solved: See post#57