P10 Slave CPU support

User avatar
antus
Site Admin
Posts: 10014
Joined: Sat Feb 28, 2009 10:34 am
cars: TX Gemini 2L Twincam 8psi
TX Gemini SR20 18psi
Datsun 1200 Ute
Subaru Blitzen '06 EZ30 4th gen, 3.0R Spec B
Subaru WRX 2007

P10 Slave CPU support

Post by antus »

I've re-visited the older PCMs looking to add slave CPU support. I've got a POC working for P10 slave read (and a bricked P12b that aint coming back. Doh!).

But I was able to read this slave image from the P10 PCM over the internal QSPI bus from the second CPU. Does anyone know anything about these slaves? I am trying to understand 2 things.

1) I want to know where the calibration number is in this image.
2) I want the bin saved to match the bin format GM distributes, so there is no confusion when someone asks for a certain file and that file is posted from someones SPS archive. I don't want one PCM Hammer reads format and a different saved from SPS format. But to figure this out, first I need the calibration number from this file.

Block identifiers for this PCM are as follows, but I don't see any of these in the bin in hex or ascii. I am not sure if the P10 is the earliest PCM that had a slave cpu. Maybe the implementation is pretty basic compared to others.

A: 12587430
B: 12591948
C: 12583713
D: 9351580
E: 12596388
F: 12571574

Any other information about checksums or file format would be helpful.
You do not have the required permissions to view the files attached to this post.
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
kur4o
Posts: 1145
Joined: Sun Apr 10, 2016 11:20 am

Re: P10 Slave CPU support

Post by kur4o »

Some random ETC for p10 used for flashing by tis2000.

Looks like it occupies memory address starting at 10000, not sure where that is. Another interesting issue is that main flash is 1mb[If I remember correctly][will dig out some pics of board] but bins are 512kb, I think there is some more code that is not visible.

checksum is at 414 , p/n is at 418 4 bytes integral, segment number is at 416, and it says 0002, I guess there is more data for slave somewhere.

Best practice is to attach slave to main bin, as it is read from memory, Segment swapping after that can be encoded based on layout of sps files.
or save as new file with correct memory layout.
You do not have the required permissions to view the files attached to this post.
User avatar
antus
Site Admin
Posts: 10014
Joined: Sat Feb 28, 2009 10:34 am
cars: TX Gemini 2L Twincam 8psi
TX Gemini SR20 18psi
Datsun 1200 Ute
Subaru Blitzen '06 EZ30 4th gen, 3.0R Spec B
Subaru WRX 2007

Re: P10 Slave CPU support

Post by antus »

as far as I can tell the slave boots and maps ram over the first 2k so thats why I can only read 46k of 48k slave bin corrrctly. Which isn't usefull for much so I think im going to abandon read and just have write. cant see a way to read that first 2k.
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
MPC001
Posts: 174
Joined: Sat May 05, 2018 11:41 am

Re: P10 Slave CPU support

Post by MPC001 »

Very cool 😎👍. Is this a slave that runs the TAC module or controls the throttle body directly?