Cars · Electronics

82C55 Programmable Peripheral Interface

Technical specifications and pinout mapping for the OKI MSM82C55A / Intel 82C55 Programmable Peripheral Interface (PPI) chip in Honda OBD1 ECUs.

Advanced

Adapted from pgmfi.org wiki

The 82C55 (often found as the OKI MSM82C55A) is a Programmable Peripheral Interface (PPI) integrated circuit used extensively in Honda OBD1 Engine Control Units (ECUs). It acts as an input/output (I/O) expander, enabling the main OKI 66207 microcontroller to interface with various auxiliary inputs and output drivers that cannot be handled directly by the MCU's native I/O pins.

Almost all OBD1 Civic, Integra, and Accord ECUs share a common architectural pattern for what functions are controlled by the 82C55 chip.

Configuration and Software Control

In Honda OBD1 applications, the ECU software configures the 82C55 by writing 0x90 to its internal Control Register. According to the standard Intel/OKI 82C55 datasheet:

  • Mode 0 (Basic Input/Output) is selected.
  • Port A is configured as an Input port.
  • Port B and Port C are configured as Output ports.

Note: The OKI MSM82C55 chip package found on Honda OBD1 boards has 42 pins, which is two more than the standard 40-pin package outlined in standard datasheets. These extra pins (mysterious pins 17 and 37) are unused and are likely internal connections or ground ties specific to OKI's custom packaging.


82C55 Pinout Mapping

Below is the complete electrical pinout mapping of the 82C55 PPI on standard Honda OBD1 boards, originally documented by hardware researcher Vernon (Deluded):

Pin I/O Type Signal/Port Connected Component Function & Diagnostics
1 Input PA3 A/D Board Header Diagnostic feedback for TPS/VSS circuits
2 Input PA2 Resistor R114 Input pairing (associated with R109)
3 Input PA1 Resistor R113 Input pairing (associated with R110)
4 Input PA0 Resistor R112 Input pairing (associated with R111)
5 Power/Control /RD MCU (66207) Pin 24 Shared Read enable control
6 Control /CS MCU (66207) Pin 15 Chip Select line (driven by Address Line A14)
7 Power GND Ground Digital Ground connection (VSS)
8 Control A1 MCU (66207) Pin 14 Address line A1
9 Control A0 MCU (66207) Pin 12 Address line A0
10 Output PC7 Knock Sensor Circuit Knock board diagnostic output
11 Output PC6 Transistor Q16 Output driver for EGR solenoid
12 Output PC5 Resistor R134 10kΩ pull-up resistor
13 Output PC4 Transistor Q46 Controls the Check Engine Light (MIL) output
14 Output PC0 IC14 Driver Controls VTEC Solenoid engagement
15 Output PC1 IC13 Driver Pre-VTEC control circuit
16 Output PC2 Transistor Q12 Controls the Oxygen (O2) Sensor Heater element
17 - N/C Unused No connection (42-pin package anomaly)
18 Output PC3 Knock Sensor Circuit Knock diagnostic threshold control
19 Output PB0 Chip 7U016 Pin 3 Custom Honda IC interface signal
20 Output PB1 Transistor Q14 Output driver for EVAP Purge Solenoid
21 Output PB2 Transistor Q37 Alternator control output signal
22 Output PB3 Transistor Q13 Controls the Radiator Cooling Fan Relay
23 Output PB4 IC15 Driver Controls Automatic Transmission Lockup Solenoid A
24 Output PB5 Transistor Q17 Controls IAB (Intake Air Bypass) solenoid / Shift Light / Auto Q34 lockup
25 Output PB6 Resistor Network RM13 Pin 8 10kΩ pull-up line
26 Output PB7 Chip 7U016 Pin 10 Custom Honda IC interface signal
27 Power VCC +5V Rail Logic power supply voltage (VCC)
28 Bidirectional D7 MCU (66207) Pin 8 Data Bus Bit 7
29 Bidirectional D6 MCU (66207) Pin 7 Data Bus Bit 6
30 Bidirectional D5 MCU (66207) Pin 6 Data Bus Bit 5
31 Bidirectional D4 MCU (66207) Pin 5 Data Bus Bit 4
32 Bidirectional D3 MCU (66207) Pin 4 Data Bus Bit 3
33 Bidirectional D2 MCU (66207) Pin 3 Data Bus Bit 2
34 Bidirectional D1 MCU (66207) Pin 2 Data Bus Bit 1
35 Bidirectional D0 MCU (66207) Pin 1 Data Bus Bit 0
36 Control RESET Chip 7U016 Pin 39 System Reset trigger line
37 - N/C Unused No connection (42-pin package anomaly)
38 Control /WR Resistor Network RM13 Pin 9 Shared Write enable control
39 Input PA7 A/D Board Header Diagnostic feedback for TPS/VSS circuits
40 Input PA6 Transistor Q30 Output Diagnostic feedback for O2 Heater circuit
41 Input PA5 Transistors Q26 / Q101 Diagnostic feedback for VTEC Solenoid driver (IC14)
42 Input PA4 Transistor Q28 Output Diagnostic feedback for Transmission Lockup driver (IC15)

Technical Notes & Hardware Quirks

  • Intake Resonator Multiplexing: On specific boards (e.g., JDM models or those utilizing specific software iterations), the Intake Resonator control circuit is doubled up. The trace routing goes from IC16 (pin 3)Q27 (pin 2)IC9 (pin 6).
  • Diagnostic Inputs (Port A): Inputs PA4, PA5, PA6, and PA7 are dedicated loop-back diagnostic lines. The microcontroller reads these pins to verify that an output command (like VTEC engagement or O2 heater activation) actually occurred physically. If the MCU commands PC0 (VTEC) to go high but does not see the corresponding feedback on PA5, it triggers a Check Engine Light (CEL).

Datasheets

Credits and source

Authors blundar

Source Adapted from 82C55 on pgmfi.org wiki. Licensed under CC BY-NC-SA 1.0.

Attachments & Downloads

Size: 189.1 KB
SHA-256: 4266c7f5...e3b1e74e