: Vanagons with Subaru WRX Turbo Engines "VWRX.COM" DOMAIN IS FOR SALE, SEND OFFERS TO freerock2k@gmail.com




Sold
My Conversion
Our Memories
Select Monitor
Links
VWRX.com - Volkswagen Vanagon powered by Subaru WRX STi Turbo engine

Subaru Select Monitor Scan Tool

NEW: Source code now available under GNU General Public License!

The Select Monitor Scan Tool is designed to read and display real-time data on a Windows PC directly from a Subaru ECU.

Includes default profiles for the following ECU versions:
ROM IDNameContributed by
0x7440141995 JDM WRX (STi Version 2)Kevin Frank
0x7136XX1991 USDM TurboVikash Ravi Goel
0x7236XX1991-1994 USDM TurboVikash Ravi Goel
0x7031XX1990-1991 USDM 5MT NAVikash Ravi Goel
0x7032XX1990-1991 USDM 4EAT NAVikash Ravi Goel
0x7232XX1992 USDM NAVikash Ravi Goel
0x7332XX1993-1994 USDM NAVikash Ravi Goel
0xA301171999 EDM Forester EJ20 NAAlexey K. Bybnov
0xA301131997 EDM Impreza GT sport wagonHarald Bachmayer
0xA301131998 EDM Impreza GT sport wagonPaulo Barata
0x7225XX1992 SVXPhil Skuse
0x7425XX1994 SVXPhil Skuse
All OBD-I Subaru ECU versions are supported, but some parameter address hunting may be required. See instructions below:

Communication with the ECU is achieved by connecting the select monitor connector to your computer's serial port. This connection requires translation of signal levels from RS232 to TTL. A level translator is required when connecting your PC to this select monitor port. Below are two example schematic diagrams of how to make an RS232 to TTL translator for this application.

RS232-Discrete Schematic Rev B

RS232-Integrated Schematic Rev B

Pinout of the Select Monitor Connectors
OBD-IOBD-II*

Click to buy mate connector
Photo by Vikash Ravi Goel
PinSignal
2Transmit
3Receive
5+12V
9Ground
PinSignal
12Transmit
13Receive
16+12V
5Ground
* Untested with OBD-II ECU's, but the Select Monitor protocol is supposed to also be supported for at least some of the early OBD-II Subaru ECU's. NOTE: The Select Monitor protocol uses the same connector, but different pins then the OBD-II protocol.

Once your translator is built and connected to your PC, you can use the SelectMonitorDump utility to identify your ECU ROM ID. If your ROM ID is unique you will need to create a new profile in the SelectMonitor.ini file with the configuration information for your ECU. The SelectMonitorDump utility will help you identify the memory locations where each parameter's data lives. A new configuration section can then be added to the SelectMonitor.ini file for your ROM ID and the SelectMonitor application can then be used.

Each data parameter lives in an eight bit data space, which means each parameter's value can range from 0 to FF hexadecimal (which is 0 to 255 decimal). The first column in the display window is the Address in hexadecimal and the second column is the RAW Data (N) in hexadecimal. The next twelve columns represent all of the different calculations used when converting the Data values to actual usable data. This is done to help you identify which calculation makes the most sense for the particular Data value at a particular address. The object here is to try and find as many of the following eighteen parameters as you can (or want to use) somewhere in the address map.

ECU Parameters
DescriptionUnitsConversionColumn
Ignition AdvanceDeg BTDCN2
Knock CorrectionDegN2
Engine Load N2
Battery VoltageVN * 0.083
Vehicle SpeedKMHN * 24
Engine SpeedRPMN * 255
Coolant TempDeg CN - 506
Airflow SensorVN * 5 / 2567
Throttle Position SensorVN * 5 / 2567
Boost Solenoid Duty Cycle% DCN * 100 / 2567
Injector Pulse WidthmsN * 256 / 10008
ISU Duty Valve% DCN * 100 / 2569
O2 AvgmVN * 5000 / 51210
O2 MinmVN * 5000 / 25611
O2 MaxmVN * 5000 / 25611
A/F Correction%N - 12812
Atmospheric PressuremmHgN * 813
Manifold Relative PressureBar( N - 128 ) / 8514

Unfortunately the address map ranges from 0000 to FFFF hexidecimal, that's 65536 possible address locations! Obviously you can't go through and search every single possible address for each parameter. Since the ECU ROM lives from 8000 to FFFF there really is only 0000 to 7FFF where you will find parameters. Luckily there is some overlap between different ECU ROM ID versions. Hopefully you will be able to find the parameters for your ECU by simply trying known parameter addresses for other ECU versions. Once you have the parameter addresses figured out for your ECU, you can create a new section in the SelectMonitor.ini file for your ECU's ROM ID.

The SelectMonitor.ini file contains all configuration information for the SelectMonitorDump utility and the SelectMonitor application. Use a plain text editor like notepad.exe when editing the SelectMonitor.ini file. Lots of other optional stuff in the SelectMonitor.ini file that I will document when I have more time...

Once you have a ROM ID section in the SelectMonitor.ini for your ECU, the SelectMonitor application is ready for use.

The fewer parameters that are checked, the faster the data will update. You can enter Graphic Mode to give you an analog gauge display as shown on the top of this page. To leave Graphic Mode, double click on the status bar at the bottom of the window.

Please email me your SelectMonitor.ini file when you are certain your configuration is working properly, and I will add your ROM ID section to the master SelectMonitor.ini file. This way the next users will be able to benefit from your discoveries if their ECU ROM ID is the same, or will at least give them some more probable parameter addresses to try. My hope is that eventually the master SelectMonitor.ini file will contain sections for the most common ECU ROM IDs out there.

THE FOLLOWING HARDWARE, SOFTWARE AND INFORMATION IS FREE TO DOWNLOAD. THERE IS ABSOLUTELY NO WARRANTY OF ANY KIND. BY USING THIS HARDWARE, SOFTWARE AND/OR INFORMATION YOU AGREE THAT THE AUTHOR SHALL NOT BE HELD RESPONSIBLE FOR ANY DAMAGES THAT MAY OCCUR.

Select Monitor Software (zip) - Version 1.1.0 - July 22, 2008 for Windows (95,98,NT,ME,2K,XP)

Master SelectMonitor.ini file (right click save as) - Version 1.1.0 - July 22, 2008

If you find this software useful, please make a donation. Your donation will motivate me to continue supporting this software and make more improvements. Suggested donation is $19.95, but feel free to donate as much or as little as you feel this software is worth to you. Thanks, Kevin Frank