Recovery boot pin locations

They go by many names, P01, P10, P12, P59, E38, VPW, '0411 etc.
Post Reply
User avatar
antus
Site Admin
Posts: 8989
Joined: Sat Feb 28, 2009 8:34 pm
cars: TX Gemini 2L Twincam
TX Gemini SR20 18psi
Datsun 1200 Ute
Subaru Blitzen '06 EZ30 4th gen, 3.0R Spec B
Contact:

Recovery boot pin locations

Post by antus »

This is old news but I can't find a good on-site thread with the details so I am starting a new one here.

Most VPW type GM PCMs have a bootloader with build in functionality to see if the flash memory is corrupt or requires first time programming on the production line when the PCM starts up. This feature can be abused to hack around the software lock in the operating system for read and write operations. It is often used to fix a corrupted PCM when the seed is damaged. I'll add to this list over time.

What is happening? The flash memory has a an address bus with a number of pins which the CPU uses to ask the flash to respond with the data at a given address. The data bus is pulled high, meaning by default each pin as a value of '1'. When the CPU wants to set an address bit to 0 it will put a ground signal on the pin, which changes the state to a '0'. In this case we are using a physical wire to put the ground state on the pin. The pin is Address pin A12.This means that memory reads where Address pin 12 is a '1' (which is all addresses above the boot sector) will instead get a '0' in that location and read from a different address. This means 2 things. Firstly the operating system code that runs above this address will crash due to the CPU reading the wrong opcodes. The PCM has protection against this kind of corruption (known as the watchdog, or sometimes COP - Computer Operating Properly). So the watch dog wont get updated as it does every couple of milliseconds during normal operation, and it hardware resets the PCM. Next the bootloader initialises the PCM. It is at the start of the chip, so all of its code is below the section where A12 matters, so it runs properly. Then it looks for the 'calibration OK' signature at the end of the calibration segement, and the 'OS OK' signature at the end of the OS segment. One or both of these are affected by A12 being forced to 0, so the bootloader sees a (temporary) problem and does not hand off to the operating system. Instead it opens the door for remote programming to recover the system. This all happens quicker than we humans can move, so all we need to do is connect the end of a wire to ground, then touch the other end of the wire to the pin in the picture, and the PCM will reboot in to recovery ready for PCM Hammer (or other software) to begin a recovery read or write operation. The moment we lift our wire off the flash is operating normally again, so a read bin will be able to read the entire flash correctly, or write it correctly.

P01:
Recovery Boot P01.jpg
P59:
Recovery boot P59.jpg
P08:
Recovery boot P08.jpg
These PCMs are believed to not have a recovery mode:
P04
Black Box (4 pin)

These PCMs are believed to have it, but we still need to gather the documentation. If you have that information let us know.
E54
P10
P12
Have you read the FAQ? For lots of information and links to significant threads see here: http://pcmhacking.net/forums/viewtopic.php?f=7&t=1396
darkman5001
Posts: 250
Joined: Sat Dec 18, 2021 8:15 am
cars: 2005 Yukon, 2004 Suburban, 2001 Tahoe, 2002 Envoy, 2006 Envoy, 2003 Lincoln LS
Location: New Jersey, USA

Re: Recovery boot pin locations

Post by darkman5001 »

I still have the boards from the P10 and P12 that I dismantled to help PCM Hammer development of the P10 and the P12. Maybe I can take a look at these boards and pins off the CPUs for both and come up with something that I can test.
User avatar
antus
Site Admin
Posts: 8989
Joined: Sat Feb 28, 2009 8:34 pm
cars: TX Gemini 2L Twincam
TX Gemini SR20 18psi
Datsun 1200 Ute
Subaru Blitzen '06 EZ30 4th gen, 3.0R Spec B
Contact:

Re: Recovery boot pin locations

Post by antus »

Yep that'd be cool. I remember using this mode in development, it may be documented on the site somewhere, too. I just havn't had the time to search. Even if you can find a thread with the info I'll make up a pic like the above and store it here.
Have you read the FAQ? For lots of information and links to significant threads see here: http://pcmhacking.net/forums/viewtopic.php?f=7&t=1396
Ken
Posts: 226
Joined: Tue Dec 17, 2013 1:05 am

Re: Recovery boot pin locations

Post by Ken »

antus wrote: Fri May 16, 2025 9:59 am These PCMs are believed to not have a recovery mode:
P04
Black Box (4 pin)

I Haven't had the chance to validate this yet, though found this some time ago.
2005_Buick_P04_Unlock_Pin.JPG
2005_Buick_P04_Unlock_Pin.JPG (216.86 KiB) Viewed 420 times

Edit,
Another P04 pic, intel.
P04 BDM Pinout Fixed.jpg
P04 BDM Pinout Fixed.jpg (456.63 KiB) Viewed 409 times

antus wrote: Fri May 16, 2025 9:59 am These PCMs are believed to have it, but we still need to gather the documentation. If you have that information let us know.
E54
P10
P12

Edit2:
Found some E54 screens.
E54_Flash_Chip.JPG
E54_Flash_Chip.JPG (128.05 KiB) Viewed 412 times
E54-Mainboard-Back_New.JPG
E54-Mainboard-Back_New.JPG (273.77 KiB) Viewed 412 times

I have a folder on one of my laptops with more unlock pin screens, i'll have to go digging I guess.
Haven't yet had the chance to test any of the above, though when I found them, was posted as having been tested by the original poster of the info.
User avatar
04silverado6.0
Posts: 24
Joined: Wed Nov 29, 2023 1:39 pm
Location: Kentucky

Re: Recovery boot pin locations

Post by 04silverado6.0 »

I have successfully unlocked a e54 with this method. Can confirm that the photo is correct.
Post Reply