Software / Obdii

(click for bigger pictures)

That's right! Streaming OBDII data over bluetooth straight to my phone. Works on both the blazer and the jeep and basically anything made after 1995. I have been dreaming about this for years. I was going to add a tranmission temp gauge but now I have a generic gauge that can read these parameters and possibly a TON more!

  • A/C System Refrigerant Monitoring Status
  • EGR System Monitoring Status
  • Engine Load
  • Engine RPM
  • EVAP Vent Solenoid Command
  • Evaporative System Monitoring Status
  • Heated Catalyst Monitoring Status
  • Ignition Timing
  • MAF - Air flow rate
  • MAP
  • Misfire Monitoring Status
  • O2 Sensors
  • Throttle Position
  • Vehicle Speed
  • Coolant Temperature
  • Fuel Pressure
  • Short Term Fuel Trim
  • Long Term Fuel Trim
  • Intake Manifold Pressure
  • Timing Advance
  • Intake Air Temperature
  • ...

Best of all, there are plenty of open source software available which I will be modifying it to my own tastes. I have had Autotap for a few years but recently, there have been a number of new products that have come out for OBD-II that makes things like this very easy to do.

The dongle I use is based on the ELM327 chip which seems to be one of the most popular and well documented. The software I am using for now is OBD Gauge (source code available from the link). You can get a lot more info at with some other free software as well.

Update: I had some time recently and finally had a chance to hack the protocol on my blazer to decode the proprietary enhanced GM parameters. I used a serial port sniffer to watch the communication between my scan tool and the OBDII and that's how I figured this stuff out.

So far, the only enhanced GM parameter I can read is the transmission fluid temperature which is really what I cared about to begin with. But now that I know how to do it, I'll be trying to decode the rest of the GM specific parameters that the Blazer supports.

To get the ELM327 chip to get the tranny temp, first we need to set the right header which seems to be 6C10F1:

>AT SH 6C 10 F1

Then, all we have to do is read PID 194001 on mode 22:

>22 19 40 01
62 19 40 45 

Only the last byte of the response is what we care about. As far as I can tell, you need to convert the hex value to decimal, subtract 40, and then convert from C to F and you got your tranny temperature!!!!

In this case, we have:

45 (hex to dec): 69
29C = 84F