The vanagon is running an EJ22 engine from a 1990 Subaru Legacy. The EJ22 is a boxer (opposed twin) engine, legendary for its simplicity and reliability.

The conversion was done using a Kennedy Engineering (aka KEP) adapter kit.

EJ22 OBD1 Engine Diagnostics

The Subaru engineers wisely decided to put in a simple "Subaru Select Monitor" (SSM) communication system to their ECU, using serial communication running 1953 baud talking at 5V TTL level.

These are the engine parameters that can be read in realtime.

Continuous parameters:
  • ROM ID
  • System voltage
  • Vehicle speed
  • Engine speed
  • Coolant temperature
  • Ignition timing
  • Airflow signal
  • Load
  • Throttle position signal
  • Zeroed throttle position
  • Injector pulse width
  • IAC valve duty cycle
  • Oxygen sensor signal
  • Fuel trim
  • Timing correction
  • Boost control duty cycle
  • Barometric pressure
  • Boost/vacuum
Binary parameters:
  • Ignition switch
  • Automatic transmission mode
  • Test mode
  • Read memory mode
  • Neutral switch
  • Park switch
  • California mode
  • Idle switch
  • Air conditioning switch
  • Air conditioning relay active
  • Radiator fan relay active
  • Fuel pump relay active
  • Canister purge valve active
  • Pinging detected
  • Pressure exchange
Click for explanations of these parameters.
Click for typical values during running conditions.
Here's some plots of various parameters during:
  • engine warmup
  • 0 to 60 to 0

Software

I've been able to get 3 diagnostic tools working:
  • B10 diagnostic tool
  • EvoScan
  • Select Monitor Utility
B10 diagnostic tool
The
B10 diagnostic tool written by Vikash Ravi Goel is a great tool that talks TTL over a parallel (printer) port (see "Hardware" below for details). Its limitations are that it can only monitor one SSM parameter at a time, and it has to run as a native DOS process on a laptop (not a DOS window within windows!). It was the first groundbreaking independent software written to monitor the SSM protocol, after much time by the authors on reverse engineering the ROMs inside EJ22 ECUs.
Evoscan
The EvoScan monitor and data logger by Hamish Ahern is a great piece of software that can monitor any or all of the SSM parameters together and in realtime as values or as gauges, (unlike the B10 which can only monitor one at a time). It can also log the data, which can be analyzed later. Here's a time plot of a warmup cycle of my engine.

Hamish sells cables which connect to the OBD1 SSM port. Because i wanted both USB- and the parallel-based cables to work, I used an FTDI TTL-232R-WE USB to TTL Serial Cable from ftdichip.com (see "Hardware" below for details).
Select Monitor Utility
I've had mixed results using the Select Monitor Utility written by Kevin Frank. I also used the USB/TTL cable to connect this utility. However, on my laptop the sync to the Select Monitor program was intermittent; I would only get a few seconds of good data followed by a few of garbage, repeating. After hours of messing with it, I found that running the PortMon port monitor (from sysinternals.com) somehow changes the buffering to allow the sync to stay on longer.

Hardware

Since the two tools use different hardware (one a parallel cable, the other a USB/Serial one), and in order to be able to see the diagnostics while sitting in the front of the van, I decided to connect the ECU's connector to a shielded cable which runs underneath the van to a simple 3-connector audio jack on the dash. Both of my cables have audio jacks which plug into that port.
The connection to the Subaru ECU is made via a Scosche Su02B connector.

To make cables for either, here's the pin numbers and pin-outs for the ECU's connector, Scosche connector, USB serial cable, and parallel cable:
subaru connector on wiring harness
    ------   ------
   | 1  2 |_| 3  4 |
   |               |
   | 5  6  7  8  9 |
    ---------------
(looking into face of ECU connector, NOT the Scosche connector)
parallel cable
This cable is made with a 25-pin male D-Sub Centronics connector, with only 3 of the wires connected to 3 of the Scosche wires:
  parallel-pin  Subaru     Scosche
  --------------------------------
  13 (select)   2 (XMIT)   wht    
  1  (strobe)   3 (REC)    grn    
  -             5 (+12V)   gry/blk
  25 (ground)   9 (GND)    prp/blk

   -----------------
   \ 1          13 /
    \          25 /
     \-----------/
(looking into the pins of the Centronics connector, NOT the laptop port)
usb cable
FTDI TTL-232-WE 5v ftdichip.com
  TTL-232-WE    Subaru     Scosche
  --------------------------------
  yel (RxD)     2 (XMIT)   wht    
  org (TxD)     3 (REC)    grn    
  -             5 (+12V)   gry/blk
  blk (GND)     9 (GND)    prp/blk
[home] [vanagon] [ej22 engine] [SSM params]    

copyright ©bill codding 2002-2005. all rights reserved.