The World's Largest Source of Fiero Parts The FIERO Store Order Toll Free 800-343-7648 M-F 8:30 AM - 5:30 PM EST

Tech Tips

Browse Tech Tips > ECM Scan Tool

ECM Scan Tool

Skip to User's Guide
USB - ScanConverterThank you for purchasing a USB-ScanConverter, the easy to use scantool for the Pontiac Fiero. Please read this short file for instructions on how to install and use your new scantool. This scantool is compatible with all stock V6 Fiero ECMs, and works with 84-86 4-cylinder Fieros w/ distributors. It does not work with the 87-88 distributorless 4-cylinder engines.
InstallationPlease stick to these instructions for a smooth install! You must be logged in as Administrator for the installation procedure. The following procedure may vary slightly depending on your version of Windows. The ScanConverter hard- and software has been successfully tested on Windows 98, Windows 2000 and Windows XP.
Step 1: Install the driverFirst, plug the ScanConverter into any USB-Port on your Windows-based computer, and insert the CD. Windows will show a message notifying you that it has found new hardware called "USB-ScanConverter", and after a little while it will ask you for a driver. Depending on your version of Windows, let Windows search for a driver on the CD, or direct windows to the "Driver" directory on the CD. Depending on your Windows version, you may be warned that the driver has not been signed. Ignore this warning and proceed. If the driver has been successfully installed, you will find an entry called "USB-ScanConverter" in the device manager under "USB-Devices".
Step 2: Install the application softwareThere are two separate versions of the program for the V6 and 4-cylinder Fieros. You can install either or both programs, depending on which cars you want to troubleshoot.

Go to the V6Scan or L4Scan directory and double-click on "Setup", which will install the application program into a default directory, which you can change if you like. There is also a folder containing the Visual Basic source code to these application programs which you may modify if you like, so feel free to take a look around the source, it's meant as a starting point for your own experiments. After the installation is complete, start the program (it does not have to be connected to you car, but the ScanConverter must be connected to the PC). You will see a dialog similar to the one shown in these instructions. Click the "Start" button, and you should see your USB-ScanConverter's serial number in the lower right corner, above the software version information. If you get an error message "ScanConverter not found!", please make sure that the ScanConverter is attached to the computer, and that it is listed in the device manager.

Using the ScanConverterReading trouble codes from your engine is a snap once you find the ALDL connector.

Simply remove the cigarette lighter cover from the center console to locate the ALDL connector (shown on the image to the left). Note the little "nose" in the middle/bottom of the connector. You will see contacts inside the connector on the side of the. Align the three prongs on the USB-ScanConverter with the three contacts named "A", "B" and "E" in the picture and gently push the prongs into the contacts. To remove the USB-ScanConverter from the ALDL-Connector, gently pull the USB-ScanConverter from the ALDL-Connector.
  1. Always power up your PC/laptop and connect the USB-ScanConverter first.
  2. Connect ScanConverter to the Fiero's ALDL-connector (see below for details)
  3. Start the program for your engine (V6 or L4).
When you turn on the ignition, the ECM will start transmitting diagnostic data after a few seconds, indicated by the red LED on the ScanConverter. This LED flashes once for every data unit sent by the car's ECM. If the PC is reading the data from the ScanConverter, the green LED will indicate traffic on the USB-connection to the PC.

The software is really simple and easy to use. As you can see, it shows you all relevant data in plain English, in real time. Since the Fiero ECM is 20 years old and almost antique, the data update rate is only about 1.5 seconds. Don't blame the Scantool, that's the ECM's fault.

When you're done diagnosing, press "Quit" to exit the program.

Using a Scantool for Troubleshootingby Oliver Scholz Since I have built so many scantools in the past years, many people are fascinated by the things a scantool displays, but are unsure about how to properly use it and what you can do with it. The following paragraphs will give you a short introduction on the use of a scantool on the Fiero.
LimitationsFirst of all, more important than what you can do with a scantool is what you cannot do with it. The scantool is not a miracle tool. It is a tool like a voltmeter or scope, and it can aid you in diagnosing a problem, but it rarely points you directly to the problem. You do need a good working knowledge of how an engine works, and what the possible causes are for the symptoms you experience, and then use the scantool to verify your theory. And even the values you read on the scantool are only what the ECM measures, so a bad sensor reading may not only be caused by a bad sensor, but also by bad wiring or even a defect in the ECM itself. The ECM only monitors the input side (i.e. sensors) and some key internal variables, but it does not check the output side (bad drivers, or defective solenoids). A bad solenoid or short in the wiring can easily fry drivers inside the ECM, which the ECM itself will not detect. Be sure to verify all ECM controlled solenoids at the ECM connectors before installing a new ECM, because if you haven't fixed what caused the old ECM to blow in the first place, you're likely to blow the new ECM as well in short time. Also, the update rate of the values varies from ECM to ECM. The V6 ECM for example only updates values every 1.5 seconds, so it may be too slow to show short glitches in the signals. All these factors have to be taken into account when diagnosing the engine with a scantool.
Basic useA scantool shows various "positions", (i.e. readings of certain values). Normally those positions are measured values of sensors, or calculated internal variables. Also, the scantool displays the stored trouble codes (which are the same codes you get when the ECM blinks the trouble codes through the "Service Engine Soon"-Lamp). If you read any position, you read that value and observe it under various conditions. For example, you can pick the TPS (throttle position sensor) and watch its value change when you push the accelerator pedal. When observing variable value, it may be useful to compare the values to a known good vehicle when judging if a value is out of range. The ECM does recognize out of range errors only if they are really out of range, usually caused by shorts or opens in the wiring or sensor. Ideally you have written down some value ranges for the positions when the engine was still okay so you have something to compare with, but an identical vehicle that works is sometimes even better.
When to use a scantoolThere are three reasons why you would hook up a scantool to your car:
  1. You are just curious. That's okay. Take the time to write down some of the values for later reference. It can't hurt.
  2. You are getting the Check Engine Light. In this case you will first read the stored trouble codes with the scantool, and use the diagnostic charts in the Helms manual for troubleshooting (they're very good). Once you have fixed the problem you'll reset the trouble codes and check that they don't reappear.
  3. The engine behaves weird, but you're not getting a code. "Weird" can be a wide range of symptoms from stalling to bad fuel economy. All engine problems may not be simple fixes, some thing will be mechanical issues (i.s. internal engine components, etc.)

Trouble Code Diagnostic hintsPinpointing the exact trouble source is usually not too difficult with the Helm's service manual diagrams. The following are probable causes for the trouble codes you may receive.

Code 12: Not a trouble code at all, it only means the engine is not rotating.

Code 13: An open in the oxygen sensor. Either sensor or wiring. The sensor should be replaced every two years anyway.

Code 14/15: Coolant temp sensor grossly out of range. This is usually a problem with the wiring or ECM contacts.

Code 21/22: TPS sensor out of range. Set the scantool to TPS and check if the value is steadily under 0.2V or over 4.5V while slowly varying the throttle (engine off, ignition on). If so, it's the wiring. If the throttle does vary, the TPS is worn.

Code 23/25: Air temp sensor grossly out of range. This is usually a problem with the wiring or ECM contacts.

Code 24: Speed sensor: This one rarely goes bad, but the plastic gear on the VSS can break. If the speedo is dead you usually get a Code 24 along with it, but sometimes the speedo can appear intact and still deliver no pulses to the ECM. You can swap a speedo from another Fiero to test. All Fiero speedos are compatible and can be used for that purpose.

Code 32: EGR circuit feedback. Usually the service tech people just replace the EGR solenoid when they get this fault, but it can also be caused by wiring problems or cracked vacuum hoses (or even a leaking EGR valve).

Code 33/34: MAP sensor grossly out of range. This is usually a problem with the wiring or ECM contacts.

Code 35: Idle speed error. This fault means that the ECM could not control the idle speed within its set limits, and this is likely to be caused by other factors, namely vacuum leaks (EGR-tube!), bad sensors, faults in the wiring, etc. Again, be sure to use the diagnostic tree in a service manual for this one.

Code 42: EST fault. This is the only code that is difficult to diagnose and the scantool will not be much help for this code. Code 42 is usually caused by a bad module, bad module ground (two screws that hold module in place are the ground), bad wiring or interference through misrouted spark plug wires.

Code 44/45: O2 sensor grossly out of range. This is usually a problem with the wiring or ECM contacts, but the sensor does wear and should be replaced every two years.

Code 51: PROM error. Unlikely fault, but easily checked by replacing the PROM with another one. If that doesn't help, the ECM is bad.

Code 52: CalPak error. Even more unlikely than Code 51.

Code 53: System over voltage. Check voltage vs. rpm. If it goes over 15V, you have a bad regulator on the alternator. If not, clear fault and see if comes back again. If it does, the ECM is bad.

Code 55: Bad ECM. Either a bad ground or a bad ECM.

Scan Position troubleshooting hintsAlthough the ECM monitors the sensors constantly for out of range readings, some sensors do age and their readings gradually change, which is something the ECM can not detect. Bad contacts can also change readings which stay within the limits and do not cause a trouble code to be set. The effect of this is usually bad fuel economy, sluggish response, etc. The following list contains a short description for each of the positions a scantool displays, what it is, how to diagnose, etc.

MAT: Manifold Air Temperature (Air Charge Temp. Sensor). This is the sensor reading. It should read close to ambient temperature (or CTS) if the car has been sitting overnight. This sensor does age, so check it every now and then.

CTS: Coolant Temperature Sensor. This is the sensor reading. It should read close to ambient temperature (or MAT) if the car has been sitting overnight. This sensor does age, so check it every now and then. This one is useful to check when the thermostat opens: observe the values as the engine temperature increases. You'll see the temperature drop and stabilize when the thermostat opens.

MAP: This sensor is best compared to a known good vehicle with the engine off. With the engine running you can see the value varying, but you can only verify that the value is changing, not it's accuracy. With a vacuum pump and gauge you can check the reading with the table provided in the Helm's manual.

TPS: This sensor does not age, but it wears because it's mechanical. Usually it wears near the idle position, so check the reading by slowly varying the accelerator pedal and see if the value follows. The slow update rate of the scantool is really hurting here, so an analog gauge measuring directly at the TPS may give better results.

BAT: Current battery voltage. Interesting, but not really all that helpful. Only useful for diagnosing a bad regulator.

O2: This is the current O2 voltage. Again, the update rate is too slow, but you can check if the value changes at all once the sensor has heated up. The sensor responds slower and slower with age, causing reduced economy at first. Later on, drivability problems may appear. Replace the sensor every two years.

VSS: Current speed. Used to check Code 24, or to verify the accuracy of the speedo. Not really useful for anything else.

RPM: Current rpm. Useful for checking accuracy of the tachometer, but not much else.

IAC: Idle Air Control steps. This is what the ECM thinks is the current IAC position, not what it actually is! So, if the IAC sticks or the wiring is bad, the IAC value can be anything. but correlate with the real position. The IAC steps are zero with the IAC closed, and increase the more the IAC opens. After startup the IAC is high and as the engine warms the IAC will slowly go to zero. If there is a vacuum leak (EGR-tube), the IAC will close more quickly, because the ECM will need less additional air due to the leak. Comparison to another vehicle or notes from previous scantool checks can be helpful here.

BPW: This is the Base Pulse Width for the injector(s). Interesting, but of little use for diagnostics.

ADV: This is the spark advance in degrees, calculated from a base offset. The base offset it set by rotating the distributor (if equipped), so this again is where the ECM thinks the timing is. A strobe light is much, much better for checking the real timing (remember the 1.5s update rate).

EGR: This is the currently commanded EGR duty cycle (goes from 0-100%). 0% means no EGR, valve is closed. The more EGR is commanded, the more the valve opens. This one is not very useful for diagnosing EGR problems (the EGR diagnostic switch is for that purpose), but it is interesting to see under what conditions the ECM actually commands EGR. Since this is another commanded value, it does not necessarily reflect the actual state of the EGR.

INT: The integrator is a variable used for emissions control. Without getting too technical, this value is used to enrich or lean out the mixture. It should be around 128, which is the center value. If it is constantly too high or too low, there may be a vacuum leak or leaking injector for which the ECM is trying to compensate for.

BLM: This is a value related to the INT variable, but it is a long term variable. You really need to be into the inner workings of the ECM to work with this one.

O2X: This is the O2 crosscounts value. The O2 reading will always swing around the center value of 0.45V. Each time the O2 value crosses the center line, this value is incremented. This value will only count up and wrap to zero if it exceeds 255. The faster this counter goes up, the better the regulation.

PROM ID: Some Scantools show the PROM-ID of the installed PROM. GM technicians use this to look up which PROM is installed without opening up the ECM.

Flag PositionsFlags are readings which are On/Off, Open/Closed, etc. Usually they show the value of an input that is not a sensor but a switch, or the state of an output that drives a solenoid.

A/C Clutch output: This flag reflects what the ECM commands the A/C clutch to do. If this indicates "on", the A/C clutch should come on, or there is a problem.

A/C Request input: This flag indicates if the A/C is commanded on. Easy to verify by pressing the appropriate switches on the A/C control head.

Fan Switch output: This means the fan is being commanded on by the ECM. If this flag is on and the fan is not, either the fan relay or the fan itself is bad.

TCC Solenoid output (automatic only): This flag shows if the TCC solenoid is engaged or not. Interesting to see when the ECM turns this one on, but as with all outputs, if the TCC is not working correctly, this value is not related to what's actually happening.

Shift light output (manual only): Not useful unless your shift light bulb is burnt out.

EGR Switch input: This is the diagnostic switch that causes Code 35. By applying and releasing vacuum to this switch while observing the flag status, you can determine if the switch, wiring, or the vacuum components are bad.

Loop status: When the engine is cold and the O2 sensor is not yet working the engine is in open loop. This means that the emission controls are switched off. When the O2 sensor has warmed up and emission controls kick in, the engine goes closed loop.

Mixture status: This is an internal variable that shows if the mixture is currently rich or lean.

Battery status: Shows if the ECM considers the current voltage to be adequate.

SafetyPlease do not use the scantool while driving, because it may distract you and cause an accident resulting in personal injury and/or property damages! The scantool is intended for use in a garage environment only. Any use of the scantool happens at your own risk.
Legal noticeThe hard- and software (hereafter referred to as "scantool"), are provided for your use without any express or implied warranty or representation of any kind or nature regarding accuracy, completeness, merchantability, fitness for a particular purpose, or title or non-infringement, of any material in the scantool, and disclaims all such warranties or representations. The user assumes all risk of use of the scantool, including without limitation any direct or indirect damages, consequential damages, punitive damages, examplary, or other damages arising from any use of the scantool, and any direct or indirect consequence of use of the scantool, including without limitation, any damage caused to vehicles, unnecessary replacement of parts, labor, etc. In no event shall the manufacturer or the Fiero Store, or any of its employees, officers, directors, or trustees, be liable for any damages of any kind or nature, including without limitation any direct or indirect damages, consequential damages, punitive damages, examplary, or other damages arising from or in connection with the existence or use of the scantool. All program files, binaries, icons, etc. contained in this distribution are protected under copyright in the US and other countries, and are licensed for use with the USB-ScanConverter only! It is illegal to redistribute any part or portion of the code or binaries for use with other hard- or software without the express written consent of the copyright owner! The source code is provided for educational purposes only, and the copyright remains with the author. You are allowed to make as many copies of the distribution as you like for backup purposes. Windows, Windows 2000, Windows 98 and Windows XP are trademarks of Microsoft Corp.

Related Stock Items...

Part #51415