GM Service Manual Online
For 1990-2009 cars only

Before Programming a Control Module

Important: Do NOT program a control module unless you are directed by a service procedure or you are directed by a General Motors Corporation service bulletin. Programming a control module at any other time will not permanently correct a customers concern.

Ensure the following conditions are met before programming a control module:

    • Vehicle system voltage
       - There is no charging system concern. All charging system concerns must be repaired before programming a control module.
       - Battery voltage is greater than 12 volts but less than 16 volts. The battery must be charged before programming the control module if the battery voltage is low.
       - A battery charger is NOT connected to the vehicle's battery. Incorrect system voltage or voltage fluctuations from a battery charger, may cause programming failure or control module damage.
       - Turn OFF or disable any system that may put a load on the vehicle's battery.
   • Twilight sentinel
   • Interior lights
   • Daytime running lights (DRL). Applying the parking brake, on most vehicles, disables the DRL system. Refer to the Owners manual.
   • HVAC systems
   • Engine cooling fans etc.
    • The ignition switch is in the proper position. The scan tool prompts you to turn ON the ignition, with the engine OFF. DO NOT change the position of the ignition switch during the programming procedure, unless instructed to do so.
    • All tool connections are secure.
       - RS-232
       - The connection at the DLC is secure.
       - Voltage supply circuits
    • DO NOT disturb the tool harnesses while programming. If an interruption occurs during the programming procedure, programming failure or control module damage may occur.

Remote Programming

The Remote SPS method is a three-step process that involves the following procedures:

  1. Connecting the Tech 2 to the vehicle and obtaining the information from the module.
  2. Connecting the Tech 2 to the terminal and downloading a new calibration file from the terminal into the Tech 2 memory.
  3. Reconnecting the Tech 2 to the vehicle and uploading the new calibration file into the module.

Performing the Remote Procedure

  1. Connect the Tech 2 to the vehicle and obtain the module information using the following procedure:

  2. Object Number: 415131  Size: MH

            Important: Ensure the control module is installed in the vehicle and the battery is fully charged before programming.

    1.1. Connect the Tech 2 to the vehicle data link connector (DLC), with the engine and the Tech 2 OFF.
    1.2. Turn ON the Tech 2.
    1.3. Press Enter at the title screen.
    1.4. Turn ON the ignition, with the engine OFF.
    1.5. Select Service Programming System at the Main Menu.

            Important: Select Request Info Again if a vehicle identification number (VIN) was previously stored in the Tech 2.

    1.6. Select Request Info.
    1.7. Enter the vehicle description by following the on-screen instructions.
    1.8. Turn OFF all accessories and select Continue.

            Important: The correct VIN must be entered if the vehicle identification number (VIN) does not appear correctly.

            Important: If the vehicle is equipped with the original factory control module, no VIN will be stored.

    1.9. Verify that the correct VIN is entered on the Tech 2 and select Yes.
  3. Turn OFF the Tech 2.
  4. Disconnect the Tech 2 from the vehicle.
  5. Turn OFF the ignition.

  6. Object Number: 819333  Size: SH
  7. Transfer the data from the terminal to the Tech 2 using the following procedure:
  8. 5.1. Connect the Tech 2 to the terminal.

            Important: The TIS supports service programming with the Tech 2 scan tool only.

    5.2. Launch the TIS application at the terminal.
    5.3. Select the Service Programming System at the main screen.
    5.4. Highlight the following information on the Select Diagnostic Tool and Programming Process Screen:
       • Select Diagnostic Tool--Select Tech 2
       • Select Programming Process--Identify whether an existing module is being reprogrammed or a module is being replaced with a new one.
       • Select ECU Location--Select vehicle
    5.5. Select Next.
    5.6. Verify the connections and select Next.

            Important: You may receive a message stating that the control module could be a service control module if you selected NO to the VIN being correct. Click OK.

    5.7. Verify the VIN and select Next.
    5.8. Select the appropriate controller for the vehicle being serviced.

            Important: When selecting the vehicle configuration index (VCI) programming type, a valid VCI number for the vehicle must be entered. This number may be obtained from the Techline Customer Support.

    5.9. Select the type of programming to be performed from the following categories:
       • Normal--Used for updating an existing calibration or programming a new controller.
       • Vehicle configuration index (VCI)--Used for updating an existing controller or programming a new controller for newer vehicles whose VINs are not yet in the database.
       • Reconfigure--Used to reconfigure a vehicle for changes in tire size and axle ratios.
    5.10. Select Next.

            Important: Refer to Service bulletins before service programming is performed if the bulletins are listed along with the calibration files.

    5.11. Select the appropriate calibration file for the vehicle being serviced.
    5.12. Select Next.

            Important: Select Cancel if you receive a message stating that the calibration selected is already the current calibration in the control module and reprogramming with the same download is not allowed.

    5.13. Verify your selection on the Summary screen.
    5.14. Select Next.
  9. Close the application and return to the TIS application Selection screen after the download is complete.
  10. Turn OFF the Tech 2.
  11. Disconnect the Tech 2 from the terminal.
  12. Transfer the data from the Tech 2 to the control module using the following procedure:
  13. 9.1. Connect the Tech 2 to the vehicle DLC, with the engine and the Tech 2 OFF.
    9.2. Turn ON the Tech 2.
    9.3. Press Enter at the Title screen.
    9.4. Turn ON the ignition, with the engine OFF.
    9.5. Select Service Programming System.
    9.6. Select the Program ECU function on the Tech 2.
    9.7. Verify the VIN and calibration numbers, select Continue.
    9.8. Follow the on-screen instructions and select Continue.
    9.9. Select continue and exit the program after the Tech 2 displays Programming was Successful.
  14. Turn OFF the ignition.
  15. Turn OFF the Tech 2.
  16. Disconnect the Tech 2 from the vehicle.

Programming Verification

  1. Turn OFF the ignition for 30 seconds.
  2. Attempt to start the engine.
  3. Repeat the Service Programming procedure if the engine does not start or has an engine performance concern.

Pass-Thru Programming


Object Number: 662925  Size: SH

Pass-Thru programming allows the scan tool to remain connected to the terminal and to the vehicle throughout the programming process. The vehicle must be in close proximity to the terminal while using Pass-Thru.

Performing the Pass-Thru Procedure

    Important: The TIS supports service programming with the Tech 2 scan tool only.

  1. Launch the TIS application at the terminal.
  2. Select the Service Programming System.
  3. Highlight the following information on the Select Diagnostic Tool and Programming Process screen:
  4. • Select Diagnostic Tool--Select Pass-Thru
    • Select Programming Process--Identify whether an existing module is being reprogrammed or a module is being replaced with a new one.
    • Select ECU Location--Select vehicle
  5. Select Next.
  6. Complete all terminal-directed data on the Preparing for Communication/Determine Vehicle screen until Next is highlighted.
  7. Important: In order to reduce the potential for signal loss, the RS-232 cable should not be more than 25 feet long.

  8. Select Next.
  9. Follow the instructions on the Preparing for Communication screen.
  10. Select Next.
  11. Important: The correct VIN must be entered if the vehicle identification number (VIN) does not appear correctly.

    Important: If the vehicle is equipped with the original factory control module, no VIN will be stored.

  12. Verify the VIN on the Validate Vehicle Identification Number screen.
  13. Select Next.
  14. Important: 

       • When selecting the vehicle configuration index (VCI) programming type, a valid VCI number for the vehicle must be entered. This number may be obtained from the Techline Customer Support.
       • The correct tire size and axle ratio must be highlighted and a valid VCI number entered if you select Reconfigure for your programming type.

  15. If an option screen appears, verify the vehicle configuration and/or RPO information.
  16. Select Next.
  17. Highlight the appropriate control module and programming type on the Supported Controllers screen.
  18. Select Next.
  19. Important: Select Cancel if you receive a message stating that the calibration selected is already the current calibration in the control module and reprogramming with the same download is not allowed.

  20. Select the proper calibrations on the Calibration Selection screen.
  21. Ensure all the folder tabs have a green check mark.
  22. Select Next.
  23. Verify the current calibrations with the selected calibrations.
  24. Select Next.
  25. The Transfer Data screen will appear until the progress bar reaches 100 percent. This may take up to 30 minutes.
  26. Complete all of the terminal-directed data on the Programming Complete screen.
  27. Turn OFF the Tech 2.
  28. Disconnect the Tech 2 from the vehicle.

Programming Verification

  1. Turn OFF the ignition for 30 seconds.
  2. Attempt to start the engine.
  3. Repeat the Service Programming procedure if the engine does not start or has an engine performance concern.
  4. Inspect the connections of the following components:
  5. • The Techline™ Terminal
    • The scan tool
    • The DLC
    • The PCM
  6. Reprogram the control module.