The Check Engine Light indicates that there is a problem with the car. Either the engine is having a problem or the emission control system has detected an issue. This malfunction is indicated by triggering the Check Engine Light (CEL).
The indicator light is sometimes also referred as Malfunction Indicator Light (MIL). This warning light is the main indicator to warn you about problems with the vehicle. Ignoring the warning can cause serious damage to the car.
There is always at least one OBD2 diagnostic trouble code associated with the check engine light. When the vehicle detects an issue, it will set an active trouble code and trigger the CEL. This tutorial will show you how to read the diagnostic trouble codes and reset the Check Engine Light yourself.
Read the Diagnostic Trouble Codes
Reading the diagnostic trouble codes (DTCs) is an important step to start with. The DTCs will tell you the reason for the fault. The codes help you identify the issue and determine the cause. Reading the codes is easy.
Prepare the vehicle for connection
Locate the OBD-II diagnostic connector in your car. Search for 16-pin D-shaped connector that will match the adapter. The connector should be located close to the steering wheel. Typical place for the socket is the compartment under the driver’s side dashboard.
Connect the OBD2 dongle to the connector. Make sure the adapter is tightly attached but don’t use too much force.
Turn ignition key to the ON position. Don’t start the engine because to reset the light, the engine shouldn’t be running. If the dongle has some LEDs, they should start blinking. If the dongle has on/off switch, make sure it is turned on.
Use OBD software to read the codes
Now, launch the OBD Auto Doctor car diagnostic software and connect to the dongle. The connection procedure is a bit different depending on the platform you are using. It also depends on the connection method (Bluetooth, WiFi or USB). Refer to the connection instructions of the platform and dongle.
If you are using the desktop version (PC, Mac or Linux), continue with the step A. Otherwise, proceed to the step B for mobile app (Android or iOS) usage.
A. Read the DTCs with the desktop software
To read the DTCs with the desktop software, navigate to Trouble Codes from the left navigation panel. The software will read and show the information.
Change the tab in the top to switch the view between confirmed, pending and permanent DTCs and freeze frame.
You can also export all the codes and the freeze frame to a text file to keep history of events. While in the Trouble Codes view, click Export and save the file to your computer.
B. Read the DTCs with the mobile app
Reading the DTCs is very simple with the mobile app, just navigate to Trouble Codes tab. The app will fetch the information for you.
To get detailed information, navigate to Diagnostic Trouble Codes and/or Freeze Frame
You can also export all the codes and the freeze frame. While in the Trouble Codes tab, tap the share button from the top header and select the preferred method. This way you can save the diagnostic information for later analysis.
Reset the Check Engine Light
Most of the time the diagnostic trouble codes appear for a good reason. You should investigate the codes and fix the issues causing the errors. Only after fixing, you should proceed to resetting the check engine light. If you haven’t fixed the issues, the same codes might come back immediately.
However, sometimes the error codes occur from a random failure and there’s nothing to fix. In this case, you can reset the check engine light and hope the issue doesn’t come back. If it wasn’t just a random failure, the error returns. Yet, you should ensure that there are no problems with the car every time before doing the reset.
Clear diagnostic information
Resetting the check engine light will clear the diagnostic trouble codes too. It will also clear all other diagnostic information such as stored freeze frame data and status of test results. After the reset, the car may run poorly while it performs re-calibration.
One important thing to note is that resetting the CEL will reset the readiness monitors. This means that your car will not pass emissions inspection immediately after the reset. Because the emissions data is deleted, the smog device will fail your car. Read more about the emissions or readiness monitors and how to get them ready from this tutorial.
After you have read the DTCs, you can continue to clearing the codes and the warning light. Depending whether you are using the desktop software or the mobile app, continue to either step A or step B accordingly.
A. Use Windows, Mac or Linux to reset the Check Engine Light
To reset the Check Engine Light with your computer:
Click the Clear the DTCs button in the Trouble Codes view. Read and acknowledge the information presented.
Now, the reset command is send to the car and the light is cleared. To see illustration of the process, check the short animation below.
B. Use Android or iPhone to reset the Check Engine Light
To reset the Check Engine Light with your mobile device:
Tap the Reset trouble codes and MIL button. Read and acknowledge the information presented.
Now, the reset command is send to the car and the light is cleared. To see short illustration of the process, check the animation below.
Resetting the Check Engine Light is very easy process. More work is required for analysing the root cause of the warning and fixing the possible issues. Luckily, the car itself helps you get started. It provides the Diagnostic Trouble Codes and other diagnostic information about the problem.
Avoid expensive dealer visits by reading the codes and resetting the warning light yourself. It’s a good idea to get the software and dongle right now. Waiting for the actual issues to appear might be too late. Getting yourself familiar with the tools when everything is working fine is a great start.
Avoid battery reset
Resetting the DTCs is sometimes also possible by disconnecting the battery for awhile. We do not recommend this method. New vehicles can have systems that need constant battery voltage. Disconnecting the battery can cause new issues with these systems. For example, the car theft system or infotainment system might be reset. Resetting the DTCs with a OBD tool is the recommend way. That's how the professional mechanics do it and you should too.
Our OBD car app for Android has been a great success this far. Over 600,000 installations and over 1,100 five star reviews prove this success. As the Android platform continues to improve itself, we keep improving the app as well. Just before Christmas we released new and improved OBD Auto Doctor car app.
The previous app version used side navigation as the navigation pattern. This was the recommended way to provide navigation in Android for a long time. It had some problems, though. Some users didn’t learn how to use the navigation and didn’t understand it’s usage. For the new version we redesigned the app navigation. We replaced the old navigation with much simpler and intuitive tab bar navigation. It’s now also one of the official navigation paradigms for Android. It makes the navigation faster because all the main sections are visible at the bottom of the screen.
It wasn’t always easy to find the menu option for resetting the check engine light. Different devices had different ways of opening the menus. Some devices had a physical button and some had an user interface element for opening the menu. Now, the reset button is always visible in the Trouble Codes view. You can’t miss it anymore.
As one of the new features, we replaced the old analog dashboard with with a digital one. The digital dashboard or so called status view of the app is now the starting view. With this view you can track the sensors you want in real-time and with large and easy to read fonts. The speed and RPM are the only fixed sensors in the screen. You can customise all other sensors. Long press any “sensor box” to replace a sensor with any sensor that your car supports.
On-Board Diagnostic Monitors (OBD Mode $06)
Another new feature that we added was the support for On-Board Diagnostic Monitors. These monitors are also know as the OBD mode 06. On-Board Diagnostic Monitors offer professional level diagnostic capabilities. These monitors can give detailed information about misfire counts, for example. They can also give reasons for readiness monitor failures or hints for emerging problems. Not all cars support this mode but luckily most cars do.
OBD Auto Doctor has users all over the world. We’ve analysed the most popular countries and the need for app localisation. As a result, we translated the app user interface to French, German, Russian and Finnish.
The new design and improvements were loved among the first users:
Love it – Great UI and very responsive. Tons of information.
What do you think? Download or update the car app from Google Play.
Then drop us an email or add comment below about how you find the new app. Thanks for your support!
Our OBD diagnostic software for macOS, Windows and Linux got new version update yesterday. Along other changes, the version 3.1 includes important improvements for Bluetooth connectivity.
OBD Auto Doctor mobile apps have included support for Bluetooth Low Energy (BLE) dongles already. Now, we are happy to provide the support on all supported platforms. This includes support on Windows, Mac OS X / macOS and Linux. The selected BLE dongles work now with OBD Auto Doctor regardless the computer or phone you use.
BLE support on Windows
Windows 8 is the first Windows version to support Bluetooth LE. This means that you need to have Windows 8 or newer to take advantage of the new feature.
Before OBD Auto Doctor can connect to the BLE dongle, you need to pair the dongle in the system settings. In Windows 10, you can find Bluetooth settings by ‘Settings’ -> ‘Devices’ -> ‘Bluetooth’. Make sure you have paired the dongle successfully before launching OBD Auto Doctor. OBD Auto Doctor will now find the device and take care of the rest.
BLE support on Mac OS X
OBD Auto Doctor can use Bluetooth LE on all supported OS X versions. Remember to check that your Mac has Bluetooth 4.0 hardware included. Macs started to have the hardware around 2011-2012. No pairing or other manual actions are required outside of the software to use these dongles.
BLE support on Linux
Bluez is the library in Linux that provides Bluetooth support. You need to have version of Bluez that has the support included. Check your distribution for more details.
Scanning BLE devices needs special rights. You can use superuser or root for that. Or you can give the application the needed permissions just once:
After running the previous command, you can run obdautodoctor as normal user. Notice that some Linux distros require that you need to be part of the dialout group to able to use Bluetooth. To add an user to the group, issue:
sudo adduser username dialout
If you install the software using the .deb package, these actions will be taken care of automatically for you.
Mode $06 is an advanced diagnostic functionality mode included as part of the On-Board Diagnostic standard (OBD2). It keeps track on how emission control components and other systems and sensors are functioning. Mode $06 allows access to the results for on-board diagnostic monitoring tests of these systems. These systems or components can be either continuously monitored (e.g. misfire monitoring) or non-continuously monitored (e.g. catalyst system). Continuous monitors run all the time while the non-continuous monitors run only after certain conditions are met.
OBD2 Mode $06 is sometimes referred just as Mode 6. The Mode 6 reveals the actual self-test data that is used by the OBDII system to detect faults and readiness monitor results. It enables more complete analysis of the DTCs and readiness monitor test results.
Mode $06 monitors
Here’s a list of the On-Board Diagnostic Monitors defined by the OBD2 standard at the moment. OBD Auto Doctor supports them all.
Exhaust Gas Sensor Monitor
Exhaust Gas Sensor Heater Monitor
Heated Catalyst Monitor
Secondary Air Monitor
Fuel System Monitor
Boost Pressure Control Monitor
NOx Adsorber Monitor
NOx/SCR Catalyst Monitor
Misfire Cylinder Data
PM Filter Monitor
In addition to these standard defined monitors, manufacturers can have proprietary monitors. Our software can access the manufacturer specific Mode $06 data but it won’t be able to give the monitors or tests a name. It will give you the Monitor ID (OBDMID) and the Test ID (TID) and the data values. You will have to look up the meaning of those from the service manuals, or you can search the Internet for more help. For example, if you have GM vehicle, check out the OBD Mode $06 definitions for GM cars.
How can Mode 6 help?
The Mode 6 data can help you in many ways depending on your level of expertise and experience with cars. OBD Auto Doctor will give you the result and limit numbers plus the test result (pass/fail). The numbers can reveal a lot of the inner workings of the car if you are able to give the them a more detailed meaning in the correct context. The data can help you for example in the following ways:
You can detect emerging problems before they set an active error code.
You can find issues that are causing runnability problems, but that have not developed into active errors yet.
You can use the data to identify whether a Diagnostic Trouble Code was set by a major failure or if the test just barely failed.
You can verify that the repairs made have actually fixed the correct problem. You don’t need to wait for days for certain OBDII self-tests to run and possibly turn the Check Engine Light on.
Mode 6 data can reduce a lot of guesswork by eliminating components and systems out of the problem. But to get the most out of the data, you need to have a bit of knowledge of how the engine works.
Example: Engine Misfires
Many technicians find the misfire checking the most useful part of the Mode $06. Every time a cylinder misfires, the system increases the misfire counter for that cylinder. Only if the misfire count exceeds a certain threshold, it will result in a misfire trouble code. If the misfire count stays below the limit, no trouble code is set and no notice is provided for you. But you might be still able to feel the misfire when the engine is under heavy load or acceleration.
With the help of the OBD Auto Doctor, you can read the actual misfire counts recorded for each cylinder. The purpose of the misfire data is to help you identify which cylinders are currently misfiring and identify which cylinders have been consistently misfiring in previous driving cycles. Typically the misfire count should be equal or close to zero. In this case, there’s no problem. If a single cylinder misfire count is relatively higher compared to the other cylinder misfire counts, it indicates a possible issue. It tells that the cylinder is experiencing an abnormal behavior, and that there’s a problem with the ignition, fuel or compression in that cylinder. Remember that misfire counts for cylinder should only be compared relative to each other.
In this article, I explained the basics of the OBD2 Mode $06 also known as the On-Board Diagnostic Monitors. I hope the text gave you clear introduction to these monitors and how then can be used for car diagnostics. To get started analyzing your car, download the OBD Auto Doctor software for a PC or Mac now!
Please note that not all On-Board Diagnostic Monitor IDs or Test IDs are supported by all systems. The software is able to show only the monitors and tests that the car provides. Moreover, some older cars might not even support the Mode $06 at all. Use the free version of the software to see what data your car provides. Even the free version will list the available monitors and tests.
Our OBD app for iPhone has been a great success this far. We’ve got some improvement ideas from you guys about making it even better. We listened to your suggestions and made the app stand out even more.
The initial app used side navigation drawer as the navigation pattern. For the new version we redesigned the app navigation completely. We replaced the old side navigation with much simpler and intuitive tab bar navigation. Now all the most common sections are always visible at the bottom of the screen.
Our e-mail support was also contacted about how to reset the check engine light. The action to clear the MIL was behind a button that perhaps wasn’t the easiest to find. We improved the views so that the button to clear the MIL and trouble codes is now always visible.
As one of the new features, we added digital dashboard or so called status view to the app. With this view you can track the sensors you want in real-time and with large and easy to read fonts. The speed and RPM are the only fixed sensors in the screen. You can customise all other sensors. Long press any “sensor box” to replace a sensor with any sensor that your car supports .
On-Board Diagnostic Monitors (OBD MODE 06)
Another new feature that we added was the support for On-Board Diagnostic Monitors. These monitors are also know as the OBD mode 06. On-Board Diagnostic Monitors offer professional level diagnostic capabilities. These monitors can give detailed information about misfire counts, for example. They can also give reasons for readiness monitor failures or hints for emerging problems. Unfortunately, not all cars support this mode. Especially older cars don’t have support for it. That’s because Mode 06 was added to the OBD2 standard about ten years ago.
We are also happy to announce that the app supports now Bluetooth Low Energy (BLE) OBD adapters. These adapters are also known as Bluetooth Smart or Bluetooth 4.0 adapters. We started with support for the best BLE adapter in the market, Kiwi 3. Bluetooth adapters are much more convenient than WiFi adapters. This is because you don’t need to hassle with the phone WiFi connection anymore. Support for Bluetooth 4.x adapters is a great addition to our app. We’ll be adding support for more BLE adapters once they enter the market. Check the OBD adapters page for up-to-date information.
Drop us a note to email or add comment below about how you find the new app. Thanks!