Results 1 to 15 of 509

Thread: 1997 F-Body ECM

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Fuel Injected!
    Join Date
    Jan 2019
    Location
    Canada
    Posts
    477
    Hi,

    Just wondering if anyone knows where I could find "General Motors Class 2 Physical Message Diagnostic Strategy Specification" document. It would make easy work of a large task...

    Thanks, -Tom

  2. #2
    Fuel Injected!
    Join Date
    Nov 2017
    Location
    Californiacation
    Age
    57
    Posts
    834
    Is there a SAE number that goes with that doc?
    -Carl

  3. #3
    Fuel Injected!
    Join Date
    Jan 2019
    Location
    Canada
    Posts
    477
    Quote Originally Posted by In-Tech View Post
    Is there a SAE number that goes with that doc?
    Hi Carl,

    There is no SAE number, it is a GM internal only document. These things do have a way of leaking out over years though.

    I found the document title in another GM internal document named "Service Programming System (SPS) Interpreter Programmers Reference Manual". This doc was published by GM customer care for (I believe) the aftermarket test industry. In the document there is a section on mode $AE which interested me. This section references a list of CPID which I believe stands for control parameter identifier or some such. It may be that a list of CPID is in one of these docs, and that would save me a bunch of time.

    Cheers,
    Tom

  4. #4
    Fuel Injected!
    Join Date
    Mar 2013
    Posts
    1,478
    Look what I gathered here for mode AE on later Pcms. I am not sure if the commands are standardized or not, but if they work for 97 pcm it will be a great find.

    Some commands are still missing from the list. And there is more undefined too.
    Attached Files Attached Files

  5. #5
    Fuel Injected!
    Join Date
    Jan 2019
    Location
    Canada
    Posts
    477
    Quote Originally Posted by kur4o View Post
    Look what I gathered here for mode AE on later Pcms. I am not sure if the commands are standardized or not, but if they work for 97 pcm it will be a great find.

    Some commands are still missing from the list. And there is more undefined too.
    Thank you, that's a big help. I have already decoded the complete $AE $01 suite of commands. If I find any missing from your info I will post them. Your file also has other commands in the $AE $02 and $03 range. Those are the ones I am after.

    Again, thanks -Tom

  6. #6
    Fuel Injected!
    Join Date
    Jan 2019
    Location
    Canada
    Posts
    477
    I have a question for those more used to working on LT1s with pro tools... There is a built in test that permits the user to pulse/disable injectors. As part of that, the user can set the a/f ratio. How do the pro tools use this. I expect that injectors are disabled in sequence to find a dead cylinder (?). Perhaps the commanded a/f ratio is used to stop feedback from O2s that will detect excess air (from the un-fueled cyl) in the exhaust. If someone could describe the test and give details about the intent/result it would be interesting for me.

    Still a bit unsure about the following. I have done no testing with the A/F ratio part. I have disabled each injector and seen that work on my scope. The testing is triggered by the following j1850 sequence:

    4C 10 F0 AE 02 00 00 20 00 00 xx <CRC>

    xx =
    00 NONE
    01 CYLINDER 1
    02 CYLINDER 2
    04 CYLINDER 3
    08 CYLINDER 4
    10 CYLINDER 5
    20 CYLINDER 6
    40 CYLINDER 7
    80 CYLINDER 8
    FF ALL

    4C 10 F0 AE 02 00 00 60 00 00 xx <CRC>
    xx =
    commanded a/f

    When I get completed there will be a post about all the supported mode $AE commands (or most of them). I am not knowledgeable on auto trans and the whole sub-mode $03 is a/t might need some help there also.

    -Tom

  7. #7
    Fuel Injected!
    Join Date
    Jan 2019
    Location
    Canada
    Posts
    477
    Quote Originally Posted by Tom H View Post
    I have a question for those more used to working on LT1s with pro tools... There is a built in test that permits the user to pulse/disable injectors. As part of that, the user can set the a/f ratio. How do the pro tools use this. I expect that injectors are disabled in sequence to find a dead cylinder (?). Perhaps the commanded a/f ratio is used to stop feedback from O2s that will detect excess air (from the un-fueled cyl) in the exhaust. If someone could describe the test and give details about the intent/result it would be interesting for me.

    Still a bit unsure about the following. I have done no testing with the A/F ratio part. I have disabled each injector and seen that work on my scope. The testing is triggered by the following j1850 sequence:

    4C 10 F0 AE 02 00 00 20 00 00 xx <CRC>

    xx =
    00 NONE
    01 CYLINDER 1
    02 CYLINDER 2
    04 CYLINDER 3
    08 CYLINDER 4
    10 CYLINDER 5
    20 CYLINDER 6
    40 CYLINDER 7
    80 CYLINDER 8
    FF ALL

    4C 10 F0 AE 02 00 00 60 00 00 xx <CRC>
    xx =
    commanded a/f

    When I get completed there will be a post about all the supported mode $AE commands (or most of them). I am not knowledgeable on auto trans and the whole sub-mode $03 is a/t might need some help there also.

    -Tom
    Some errors above...
    4C 10 F0 AE 02 00 00 20 00 00 xx <CRC> sets afr
    4C 10 F0 AE 02 00 00 60 00 00 xx <CRC> sets disabled cyls

    more on the way...

  8. #8
    Fuel Injected!
    Join Date
    Jan 2019
    Location
    Canada
    Posts
    477
    Quote Originally Posted by kur4o View Post
    Look what I gathered here for mode AE on later Pcms. I am not sure if the commands are standardized or not, but if they work for 97 pcm it will be a great find.

    Some commands are still missing from the list. And there is more undefined too.
    Interesting to look as the similarities and differences between your command collection and what I find for '97...

    Later PCM
    ----------
    FUEL GAUGE
    6C 10 F1 AE 02 40 1A 00 00 00 00 D4 10%
    6C 10 F1 AE 02 40 33 00 00 00 00 08 20%
    6C 10 F1 AE 02 40 4D 00 00 00 00 AE 30%
    6C 10 F1 AE 02 40 66 00 00 00 00 A6 40%
    6C 10 F1 AE 02 40 80 00 00 00 00 BA 50%


    '97 PCM
    --------
    4C 10 F0 AE 02 40 00 00 00 00 00 <CRC>


    In the '97 code mode $ae submode $40 has no other parameters and I believe is used to clear out the short term fuel trim table (both left and right).

    code is
    Code:
    BANK0:7040
    BANK0:7040 loc_7040:                                                                       ; CODE XREF: VEC_OUTPUT_CMP2+326j
    BANK0:7040                                                                                 ; VEC_OUTPUT_CMP2+335j
    BANK0:7040                                 ldaa    M$AES$02P$00                            ; M$AE PID $02 PARAM 0
    BANK0:7043                                 bita    #$40
    BANK0:7045                                 beq     loc_7060
    BANK0:7045
    BANK0:7047                                 brset   <byte_7D $04 loc_7063                   ; BIT 01
    BANK0:7047                                                                                 ; BIT 02
    BANK0:7047                                                                                 ; BIT 04
    BANK0:7047                                                                                 ; BIT 08
    BANK0:7047                                                                                 ; BIT 10
    BANK0:7047                                                                                 ; BIT 20
    BANK0:7047                                                                                 ; BIT 40 TX MESSAGE IN PROGRESS
    BANK0:7047                                                                                 ; BIT 80 DISABLE BACKGROUND MESSAGES
    BANK0:7047                                                                                 ;
    BANK0:7047
    BANK0:704B                                 bset    <byte_7D $04                            ; BIT 01
    BANK0:704B                                                                                 ; BIT 02
    BANK0:704B                                                                                 ; BIT 04
    BANK0:704B                                                                                 ; BIT 08
    BANK0:704B                                                                                 ; BIT 10
    BANK0:704B                                                                                 ; BIT 20
    BANK0:704B                                                                                 ; BIT 40 TX MESSAGE IN PROGRESS
    BANK0:704B                                                                                 ; BIT 80 DISABLE BACKGROUND MESSAGES
    BANK0:704B                                                                                 ;
    BANK0:704E                                 ldaa    #$80                                    ; CENTER FOR SHORT TERM FUEL TRIM
    BANK0:7050                                 ldx     #$0026
    BANK0:7050
    BANK0:7053
    BANK0:7053 loc_7053:                                                                       ; CODE XREF: VEC_OUTPUT_CMP2+350j
    BANK0:7053                                 staa    $23,x                                   ; CLEAR TABLE TOP DOWN
    BANK0:7055                                 dex                                             ; $0049 THROUGH $0024
    BANK0:7056                                 bne     loc_7053                                ; LOOP CLEARING SHORT TERM FUEL TRIM SETTINGS
    BANK0:7056
    BANK0:7058                                 staa    STFT_B1                                 ; B1 (LEFT) SHORT TERM FUEL TRIM
    BANK0:705B                                 staa    STFT_B2                                 ; B2 (RIGHT) SHORT TERM FUEL TRIM
    BANK0:705E                                 bra     loc_7063
    Not completely figured out yet but mostly there. I will continue next post ...
    -Tom

  9. #9
    Fuel Injected!
    Join Date
    Jan 2019
    Location
    Canada
    Posts
    477
    Later PCM
    ----------
    ??? pwd ID
    6C 10 F1 AE 02 80 [XX] 00 00 00 00

    '97 PCM
    --------
    4C 10 F0 AE 02 80 00 00 00 00 00

    In the '97 code mode $ae submode $80 has no other parameters and I believe is used to center the IAC.

    Code is:
    Code:
    BANK0:7025 loc_7025:                                                                       ; CODE XREF: VEC_OUTPUT_CMP2:loc_701Ej
    BANK0:7025                                 ldaa    M$AES$02P$00                            ; M$AE PID $02 PARAM 0
    BANK0:7028                                 bita    #$80
    BANK0:702A                                 beq     loc_703D
    BANK0:702A
    BANK0:702C                                 brset   <byte_7D $02 loc_7040                   ; BIT 01
    BANK0:702C                                                                                 ; BIT 02
    BANK0:702C                                                                                 ; BIT 04
    BANK0:702C                                                                                 ; BIT 08
    BANK0:702C                                                                                 ; BIT 10
    BANK0:702C                                                                                 ; BIT 20
    BANK0:702C                                                                                 ; BIT 40 TX MESSAGE IN PROGRESS
    BANK0:702C                                                                                 ; BIT 80 DISABLE BACKGROUND MESSAGES
    BANK0:702C                                                                                 ;
    BANK0:702C
    BANK0:7030                                 bset    <byte_7D $02                            ; BIT 01
    BANK0:7030                                                                                 ; BIT 02
    BANK0:7030                                                                                 ; BIT 04
    BANK0:7030                                                                                 ; BIT 08
    BANK0:7030                                                                                 ; BIT 10
    BANK0:7030                                                                                 ; BIT 20
    BANK0:7030                                                                                 ; BIT 40 TX MESSAGE IN PROGRESS
    BANK0:7030                                                                                 ; BIT 80 DISABLE BACKGROUND MESSAGES
    BANK0:7030                                                                                 ;
    BANK0:7033                                 bset    <byte_B7 $04                            ; BIT 01
    BANK0:7033                                                                                 ; BIT 02 GEAR CHANGE IAC STEPS ACTIVE
    BANK0:7033                                                                                 ; BIT 04
    BANK0:7033                                                                                 ; BIT 08 IAC TIMEOUT STEPS TIMER EXPIRED
    BANK0:7033                                                                                 ; BIT 10 PARK/NEUTRAL SELECTED PREVIOUS STATE
    BANK0:7033                                                                                 ; BIT 20
    BANK0:7033                                                                                 ; BIT 40 IAC LOW SPEED CONDITIONS ?? VEHICLE MOVING ??
    BANK0:7033                                                                                 ; BIT 80 AUTO TRANS PARK/NEUTRAL SELECTED FLAG
    BANK0:7033                                                                                 ;
    BANK0:7036                                 ldab    #$FF
    BANK0:7038                                 stab    IAC_POSITION                            ; IAC MOTOR POSITION
    BANK0:703B                                 bra     loc_7040

    The idle air control system is quite complex. There are a bunch of things relating to shifting of automatic trans from neutral to in gear, air conditioning, perhaps power steering load, various test controls. Also to be considered is the timing of the outputs to the motor. Each step needs to be sent and then a delay before the next step. This is needed to let the motor catch up with the applied state. It is going to take some effort to sort through all this.
    -Tom

  10. #10
    Fuel Injected!
    Join Date
    Mar 2013
    Posts
    1,478
    Usually when a cylinder is cut the tool monitors increase in map and drop in rpm, to figure if the cylinder is producing less power. High increase in map indicates strong cylinder. No change indicates bad cylinder.

    It can be hardbuilt in code, that whenever a cylinder is disabled the pcm commands Open loop. In earier code when a cylinder is disabled you cannot change or command afr. The command is exclusive to each other. There might be something similar in the later code.

    It is more than likely there will be some commands that are not present throughout the years. For example 97 can`t command fuel gauge, because there is not such an option built in the pcm.

    Automatic trans have some simple commands for solenoids and line pressure. Most are simple on/off. Some pwm solenoids can be commanded with different pwm%.

Similar Threads

  1. 94-95 LT1 $EE Y-body vs. F/B-body PCM differences
    By johnny_b in forum GM EFI Systems
    Replies: 5
    Last Post: 01-15-2023, 02:41 PM
  2. Tuner Pro XDF 1999-2000 F Body + Y Body
    By john h in forum OBDII Tuning
    Replies: 33
    Last Post: 02-02-2020, 11:12 PM
  3. Replies: 31
    Last Post: 09-20-2018, 06:00 AM
  4. F-body engine install to B-body
    By serge_an in forum GM EFI Systems
    Replies: 4
    Last Post: 09-22-2016, 02:51 PM
  5. 95 F-body Fuel Pump with 95 B-Body Engine/Tank
    By EPS3 in forum GM EFI Systems
    Replies: 7
    Last Post: 09-19-2016, 02:40 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •