Automotive diagnostics have come a long way since the “idiot lights” of the 1980s. The current version of the on-board diagnostics (OBD) protocol provides real time data as well as fault diagnostics, thanks to the numerous sensors connected to the data network in the modern vehicle. While the hardware interface is fairly standardized now, manufacturers use one of several different standards to encode the data. [Alex Sidorenko] has built an open source OBD-II Adapter which provides a serial interface using the ELM327 command set and supports all OBD-II standards.
The hardware is built around the LPC1517 Cortex-M3 microprocessor and can accept a couple of different versions. Here’s the PDF schematic, and a set of Gerber files (ZIP archive) for the PCB layout, if you’d like to dig in to it’s internals. The MC33660 ISO K Line Serial Link Interface device is used to provide bi-directional half-duplex communication interface with the micro-controller. Also included is the TJF1051, a high-speed CAN transceiver that provides an interface between the micro controller and the physical two-wire CAN lines on the ODB-II connector. The serial output from the adapter board is connected to a computer using a serial to USB adapter.
The software is written in C++ for the LPCXpresso IDE – a GNU tool chain for ARM Cortex-M processors, but can also be compiled using a couple of other toolchains. He’s got instructions if you’d like to build the firmware from source, or if you’d like to program the adapter via Flash Magic.
We featured [Alex]’s inexpensive PIC based ODB-II interface way back in 2007, so he’s been working on this for a while and has a good grip on what he’s doing.
[Bruce Land] sent in this cool final project for ECE 4760 at Cornell University. Dubbed TrckrX, it is an OBD-II tracking and data logging system built into a BMW E36 M3. The car in question is being used in some auotocross competitions. The driver wanted instant access to some data as well as a log of everything for later analysis. The unit gives a real time display of vehicle speed, coolant temp, and RPM. G-force and timestamps are stored on the SD card.
We think this is a very cool idea, and could be quite useful in some instances. The real time display of speed and RPM seem a bit peculiar as the car’s speedometer and tachometer are more appropriately placed for real time information. However, we completely understand that this was a class project and this person may not have wanted to replace their dash cluster with a new readout.
[Steve] let us know about his MultiDisplay car monitoring system. Unlike traditional systems that rely on interfacing with the OBD-II protocol and existing car computer, the MultiDisplay uses an Arduino and custom shield with a combination of sensors; including temperatures, pressures, throttle, Boost, and etc. The data collected can then be displayed on a 20×4 LCD or streamed to a PC with visualization and event recording.
It’s nice to see half a years worth of work finally be complete and presented in such a clean and professional manner, keep up the good work [Steve]
[Avi Aisenberg] sent us his final project for ece 4760. His team built and OBD-II data interface. Even though OBD-II is an industry standard, each manufacturer has implemented it differently. This is where this project shines. They have built it to be capable of talking to any of them. Not only that, but it has a nice backlit LCD screen for diagnosing issues without having to go back to your computer and downloading the data. If you really don’t need all the bells and whistles, you can make one for roughly $15. They even have an OBD-II app for the iPhone.
Rev by DevToaster is an application for the iPhone and iPod Touch that allows real-time monitoring of vehicle ECU data from the OBD-II port. Rev interfaces with a WiFi OBD-II dongle.
If your check engine light is on or flashing, REV is able to check the engine code, list all of the engine codes stored in the vehicle, and reset the stored codes or check engine light.
Rev is able to monitor real-time; vehicle speed, RPM, fuel consumption, engine coolant temp, fuel pressure, calculated engine load, throttle position, intake manifold pressure, air intake temp, timing advance, mass air flow, fuel level, barometric pressure, EVAP system vapor pressure, and fuel trim.
A brief video of REV in action is after the break.
Continue reading “iPhone OBD-II app”
It’s a wonder that drivers are given so little insight into what’s going on under the hood. We mostly have the illusion of insight in the form of gauge, idiot lights, and when things get real, our eyesight and sense of smell. The older a car gets, the more important it is to be aware of the condition of its systems.
[Mjtrinihobby] drives a beat-up 1999 Honda Civic. He likes creating automation systems as a hobby and figured that his car would make an excellent test subject. [Mjtrinihobby] began this project with several features in mind. He wanted more control over several of the car’s systems—the A/C, lights, the fuel level, and the blower motor in the cabin to name a few—and a compact, user-friendly way to interface with them that could handle road shock and the heat of the climate he calls home.
He chose a Windows 8.1 netbook with a touchscreen display for the user interface. The netbook is running FlowStone, which is a robust graphical programming language with a long list of applications. A LabJack data acquisition board (DAQ) handles the communication between the car’s systems and the netbook.
This is much more than just a cool way to control the climate and make the headlights come on when darkness falls. For instance, [Mjtrinihobby]’s system continuously monitors the alternator’s voltage. If it measures between 7 and 12V, a friendly voice warns about possible alternator failure and disables high-draw accessories so the car has a fighting chance of making it to the mechanic.
Be sure to check out the demonstration video after the break. If OBD-II car hacks are more your speed, try building an RGB tachometer.
Continue reading “Talking Car Automation Computer is like KITT without the Sass”
Internet of Things? What about the Internet of Cars? It’s actually rather surprising how slow the auto industry is in developing all new vehicles to be connected to the net from the get go. Well if you can’t wait, you can always hack. [John Reimers] shows us how to use an Electric Imp combined with OBD-II to remotely monitor your vehicle.
Using the ever venerable OBD-II port on your vehicle (think USB for cars if you’re not familiar), you can pull all kinds of information off of your vehicle’s engine. Fuel economy, temperatures, load, timing, error codes, etc. There are many devices out there to do this for you, from auxiliary gauges like the ScanGauge II, to bluetooth OBD-II dongles which can send the data to your phone. Or you can build your own.
Continue reading “Connecting Your Car to the Internet”