How To Use a Diagnostic Car Code Reader

Updated: Apr. 15, 2024

Imagine quickly diagnosing why your car's check engine light is on. A scan tool, also known as a trouble code reader, can help you identify the problem yourself.

Next Project

20 to 30 minutes




$30 to $500


On-Board Diagnostics Second Generation (OBDII) scan tools, aka trouble code readers, are handy devices. They translate complex diagnostic trouble codes (DTC) stored in the Engine Control Module (ECM) into plain language, and they're easy to use.

A code reader lets you know what's going on with your engine or other systems if your car's Check Engine Light (CEL) comes on.

Whether you plan to make repairs yourself, or just want to understand the problem so a repair shop doesn't take advantage of you, code readers can save you time and money.

I own and use two code readers as part of my job; I've been a master automotive technician for 27 years and teach automotive technology at a public technical high school. One device is inexpensive. The other is a professional, fully-loaded bidirectional scan tool.

A bidirectional scan tool performs all the same tests as the basic code reader, and also lets me bypass controllers or switches commanding engine emission and other system components. These tests ensure the components are operating properly.

Unless you're an advanced DIYer, a basic code reader like the one shown here is more than enough to help you identify a problem. It's the latest version of the small, but mighty, ODBLinkMX+. It pairs with your smartphone, tablet or laptop via Bluetooth to display engine or systems readings.

When To Call a Pro

Using a diagnostic car code reader and decoding DTC is helpful. However, recognize your limits. If you don't feel comfortable plugging into the data port, crawling under the dashboard or trying unfamiliar technology, take your car to a professional.

About the Expert

Joe Simes has been an Automotive Service Excellence (ASE) and Toyota master technician for almost 20 years. He's also a certified emissions and safety inspection instructor and inspector. Simes recently began teaching automotive technology at North Montco Technical Career Center in Lansdale, Pennsylvania. He's also one of my former students, and I could not be prouder to have him take my place in the classroom.

Tools Required

  • Bluetooth enabled device
  • Code reader
  • Internet access
  • List of OBDII codes (found online)
  • Safety glasses
  • Vehicle owner's manual

Project step-by-step (7)

Step 1

Getting started

  • Have your owner’s manual handy.
  • Place your vehicle in “park,” or “neutral” for a manual transmission.
  • Firmly set the parking brake.
  • Download and install the manufacturer’s code reader app to your Bluetooth device.

Woman accessing bluetooth on mobile phone in carWestend61/Getty Images

Step 2

Pair the code reader

  • Locate the OBDII 16-pin universal Data/Diagnostic Link Connector or data port. The data port is usually under the dashboard on the driver’s side of the car, near the footwell.
  • Start the engine.
    • Your vehicle should be outside or in a well-ventilated area. Never operate a vehicle in a closed garage.
  • Plug the code reader into the data port. It should fit snugly. Do not force it.
  • Pair the code reader with your car.
    • The code reader has four lights. When the “power” light comes on and the “BT” (Bluetooth) symbol blinks, press and release the small “pair” button, under the power button.
  • Look at your device’s “settings” on the Bluetooth screen. “Pair” the code reader when it appears under the list of “My Devices,” or whatever heading it displays.
  • Open the code reader app on your device. Follow the on-screen prompts to set up the code reader.
    • My vehicles paired with the ODBLinkMX+ in less than a minute.

Obdlink Mx+ Obd2 Bluetooth Scanner VIA MERCHANT

Step 3

Adding vehicle information to the code reader

This code reader automatically downloads your vehicle’s 17-digit vehicle identification number (VIN) to the Setting/Vehicle Editor page.

OBDII 16-pin universal Data/Diagnostic Link Connector or data portOBDII 16-pin universal Data/Diagnostic Link Connector or data port wide view

You can let the code reader add your vehicle information based on the VIN. I manually added mine from the owner’s manual.


  • Year, manufacturer, make, model and type (sedan, truck, minivan, SUV, etc.);
  • Fuel type;
  • Engine size;
  • Fuel tank capacity;
  • Fuel cost;
  • The ODBLinkMX+ uses industry established values, such as air/fuel mixture, fuel ratio and vehicle speed, to estimate fuel economy (miles per gallon).

MechanicMinerva Studio/Shutterstock

Step 4

Run a diagnostic check

Once the code reader is set up, it’s time to run some diagnostics. Tap or click on the “Diagnostics” icon and you’ll see:

  • Current, pending and history Diagnostic Trouble Codes (DTCs). Current shows the problem is happening now, Pending means the engine control unit (ECM) sees a potential problem, and History identifies a previous glitch not occurring now.
  • DTCs, which can quickly tell you a lot about what’s going on with your vehicle.
  • CEL light status (on/off).
  • Miles since the CEL came on and miles traveled since DTCs were last cleared.

Team of mechanics working together on a car, one of them holding a tablet to check the sensor readings while the other one adjusts them on the engineHispanolistic/Getty Images

Step 5

What else should I be looking for?

The code reader also provides:

  • Readiness monitor status: This is an emission systems self-test ensuring the OBDII system is functioning properly and ready for testing.
  • Performance Information Data (PID): This is valuable diagnostic information regarding the operation or status of sensors, circuits and switches in a vehicle’s various engine emission management systems.
  • Live data via the app’s “Dashboard” display: Information generated by various sensors, switches and other systems components is shown in “real time,” as it’s happening. Do not attempt to drive your vehicle while looking at live data. Take a helper with you to monitor code reader information.
  • A complete diagnostic report: This can help you or a pro make the repair.

Young woman checking car with open hoodOliver Rossi/Getty Images

Step 6

Now what?

The following information can help you isolate the offending part, component or system if the CEL is on, your car is running rough or has poor acceleration.

  • Visit the scan tool/trouble code reader manufacturer’s website to find information on your trouble code. Often it will list probable causes and known fixes.
  • Take advantage of internet forums. Just search for your car’s model and “forum.” You may need to register to use the site (usually free) and post your questions. You’ll be surprised by the number and quality of responses you get.
  • Subscribe to an online shop manual. Here you can access manufacturers technical service bulletins and steps to diagnose your particular code, including which wires to check and voltage readings you should see. These services also include component locators to help you find the part in your vehicle, as well as wiring diagrams showing the connector position for each wire.

Exhaust Gas Recirculation (EGR) in the car engine compartmentBirdlkportfolio/Getty Images

Step 7

Frequently Asked Questions

What are vehicle diagnostic trouble codes (DTCs)?

  • Diagnostic trouble codes tell you the systems or parts that malfunctioned or failed, causing the CEL to come on.
  • Codes display as a string of letters and numbers you may need to look up online to “decode.” The ODBLinkMX+ app deciphers DTCs into easy-to-understand language.
  • Although using a code reader or scan tool sounds simple, it’s doesn’t always precisely identify the issue. An O2 “lean” DTC can mean the sensor is dead, the air/fuel mixture is lean, or you’ve got a vacuum leak or fuel problem.
  • Armed with this information, you can decide whether to fix the problem yourself or take your vehicle to a pro.

Can you find engine codes without a scanner?

  • Maybe. According to Simes, depending on the make, model and year, cycling the ignition key on and off three or five times will display DTCs if the vehicle has a multi-display unit. “On some Toyota’s, codes can be accessed through the radio display,” he says.
  • Never “jumper” across the data port pins with a paper clip to read codes. All you’ll do is damage the terminals, making it impossible to use a code reader in the future.

Car Service Manager or Mechanic Uses a Tablet Computer with a Futuristic Interactive Diagnostics Software. Specialist Inspecting the Vehicle in Order to Find Broken Components In the Engine Bay.gorodenkoff/Getty Images

How do you clear engine codes?

After you fix the problem causing the codes and CEL to light up:

  • Use the code reader to clear the codes and check the “readiness monitors” status. A scan tool or code reader cannot reset readiness monitors. Or:
  • Disconnect the battery for 10 minutes. Remove the negative/black (-) cable first, then the positive/red (+). Follow all safety steps when working on or near a battery, including wrapping the positive cable terminal/end with tape to prevent a short circuit.

Where can I get vehicle diagnostic trouble codes checked for free?

  • Many local and national auto parts stores.
  • Some auto repair shops. If you just need the codes checked, there should only be a minimal or no fee charged, especially if you’re a loyal customer.
  • Ask your neighbors. If you’re lucky, someone has a code reader they’re willing to share.

car dashboard lights on indicating car troublesMartin Hospach/Getty Images

What are the most common engine codes, and what do they mean?

P0119: Engine Coolant Temperature (ECT) Sensor Circuit sending erratic or intermittent data to the ECM. Affects engine drivability and other operations. Threaded into an engine coolant passage, you can replace the sensor yourself after draining the coolant system.

P012X/P022X: Throttle/Pedal Position Sensor (TPS) Circuit malfunction or inaccurate voltage readings. Affects fuel delivery causing fluctuating engine idling speed, surging and stalling. Try cleaning the throttle body yourself.

P0128: Coolant Temperature Below Thermostat Coolant Temperature. This means the ECM detects the engine running colder than it should be. Affects engine warm up and fuel delivery. Most likely causes are a bad thermostat or air bubbles trapped in the cooling system. “Burping” the coolant system or replacing the thermostat are DIY-able.

P0137-P0147: Oxygen Sensor (O2) Circuit means the engine air-fuel mixture is running too rich (burning more fuel than air) or too lean (burning more air than fuel). Either will cause poor performance, rough idle and reduced fuel economy, as well as excess smog. This may be one for the pros. Check for an exhaust leak or replace the O2 sensor yourself if it has more than 50,000 miles on it.

P0171-P0177: Same as above, air-fuel mixture too rich or lean. However, the most likely culprits include clogged air or fuel filters or dirty fuel injectors or Mass Air Flow (MAF) sensor. Replacing the filters and cleaning dirty injectors and MAF are DIY repairs.

P030X: Random/Multiple Cylinder Misfire Detected. The last code number refers to a specific engine cylinder; P0305 means cylinder No. 5 is misfiring. This can be caused by anything from bad spark plugs to low engine compression. If you feel comfortable and have the proper tools, you can make repairs yourself.

P0340-P034B: Camshaft Position Sensor (CMPS) Circuit. A CMPS malfunction means the ECM cannot precisely control fuel delivery and ignition (spark) timing. Symptoms include hard- or no-start condition, lack of power or engine misfire. Leave this repair to the pros.

P0400-P040E: Low Exhaust Gas Recirculation (EGR) Flow Detected means the ECM is not sensing enough exhaust gases flowing into the engine to lower combustion temperatures. Symptoms include rough idling and stalling. It’s most likely a clogged or failing EGR valve you can decarbonize yourself.

P0446-P0448: Evaporative Emission Control System (EVAP) Vent Control Circuit means the ECM thinks there’s an issue with the EVAP vent valve. Unfortunately, there are many possible causes for this code, from a loose fuel cap (try retightening or replacing the gas cap) to a bad ECM.