ELM327 Programmed Microcontroller Car Diagnostics

What It is and What You Can Do with It

Close up of male hands holding an Arduino microcontroller board
Ernesto r. Ageitos / Getty Images

Ever since the introduction of onboard computers in the late 1970s and early 1980s, it has become increasingly difficult for shade-tree mechanics and intrepid DIYers to work on their own vehicles, but a little chip called the ELM327 microcontroller is helping to change that.

Throughout the 1980s and up until the mid-1990s, every car manufacturer had its own standards and protocols, and it was a real headache for even professional technicians to keep up with it all. That started to change with the introduction of OBD-II, which is a standard that has been implemented by automakers across the world, but professional scan tools can still cost tens of thousands of dollars.

Up until a few years ago, even basic code and data readers often cost hundreds of dollars. Simpler devices could read and clear codes, but they typically didn’t give any access to the PIDs that can be so useful in diagnosing driveability problems and other issues.

The ELM327 programmed microcontroller is a tiny, relatively low-cost solution that helps bridge that gap. Devices that use this microcontroller, like the Yongtek ELM327 Bluetooth scanner, still don’t hold a candle to professional scan tools, but they do put a lot of information in the hands of DIYers.

How Does ELM327 Work?

The ELM327 microcontroller functions as a bridge between the onboard computer in your car and your PC or handheld device. ELM327 is capable of communicating with the OBDII system and then relaying data via USB, WiFi, or Bluetooth, depending on the particular implementation.

ELM327 supports a number of different SAE and ISO protocols, and legitimate ELM327 devices are capable of communicating with any OBDII vehicle. The command set used by ELM327 isn’t identical to the Hayes command set, but they are very similar.

What Can I Do With ELM327?

You can use an ELM327 device to help diagnose your car or truck, but you’ll typically need some additional hardware and software. ELM327 devices can be connected to computers, smartphones, tablets, and other devices via a number of different means. The three primary methods include:

  • Wired USB connections
    • Most widely compatible option.
    • Relatively inexpensive due to no wireless radio.
    • No chance of a dropped connection.
    • The cable can get in the way.
  • Wireless WiFi connections
    • Compatible with more devices than Bluetooth.
    • Expensive.
  • Bluetooth
    • Relatively inexpensive.
    • Bluetooth is available on a lot of devices.
    • Incompatible with some devices, like iPhones.

If you have a PC or Android device, any one of those will typically work. If you have an iPhone or iPad, you probably won’t be able to use a Bluetooth ELM327 device due to the way that iOS handles the Bluetooth stack. Jailbroken devices may work, though that does carry some level of risk.

ELM327 can provide you with access to trouble codes and also allow you to view PIDs. Since the communication is bidirectional, ELM327 can also allow you to clear codes after you have fixed a problem. The precise actions you can perform will depend on your particular ELM327 device and the software you’re using, but you may also be able to view readiness monitors and other data.

Beware of Clones and Pirates

There are a number of clones and pirates on the market, and some work better than others. The original v1.0 of the ELM327 microcontroller code wasn’t copy protected by Elm Electronics, which resulted in it being pirated. Some devices that use that old code have been modified to report that they are using the current version, and others even report a newer version that doesn’t even exist yet.

Some pirated clones are stable, and others are extremely buggy. In any case, even the stable clones lack the additional functionality found in newer versions of the legitimate ELM327 code.

Scanning Alternatives to ELM 327

If you would rather use a standalone scan tool, there are various options that fall into a wide variety of different price ranges:

  • Simple code readers
    • Capable of reading and clearing codes only.
  • Dedicated scan tools
    • Basic units provide access to codes and PIDs.
    • Advanced units include troubleshooting information.
  • OBD-I scan tools
    • Necessary if your vehicle was built before 1996.
    • Some work with only a single make of vehicle.
    • Others include adapters for use with multiple vehicles.

While devices that make use of the ELM327 microcontroller are typically the most cost-effective, the easiest way to scan for codes and view PIDs, there are situations where one of the above options will work better. For instance, ELM327 only works with OBD-II, so an ELM327 scan tool won't do you any good if your car was built prior to 1996. Unless you're a professional mechanic, an ELM327 device will typically work just fine in most other situations.​