![]() | ![]() |
|
OBDII Information I've started to receive a number of emails regarding OBDII. Currently, I do not sell any OBDII scan tools (that is going to change in the near future, though). However, I've put together a page here that contains (hopefully) a lot of helpful information for people who are looking for guidance. This only pertains to GM vehicles, as that is all I deal with - I do not deal with any other manufacturer's vehicles. This page starts simple, and gets technical at the end (as to WHY my current OBDI cable is incompatible with OBDII datastreams). There is a lot of information here, sorry about the length! First, the most frequently asked question: The answer (currently) is NO. I do build the OBDII cable for the guys at Carputing.com, but they designed the cable, they know the internals, I know nothing more than where to place and solder the components. This cable is used for programming and reading PCMs from 1996-1997 LT1/LT4 cars, and for 1997-2002 LS1 vehicles (cars and trucks). It is not used for diagnostics, and it is not compatible with any other software except LT1_Edit for OBDII and LS1_Edit. It is not available from me, only from my friends at Carputing. Also note that there are vehicles with a mix of OBDI and OBDII, and there are some confirmed 100% OBDII late 1995 model year vehicles. Of note, the 1994-1995 Corvette is a hybrid OBDI and OBDII vehicle (but communicates OBDI using the AKM cable just fine!), and the late model year 1995 S-series pickup trucks are 100% OBDII (early 1995 S-series trucks are OBDI). What laptop based scan tools are available for my GM OBDII vehicle? There are a number of good tools available. I recommend checking in to the following. Alex Peper's CarCode at http://www.obd-2.com AutoTap at http://www.obdii.com Ease Diagnostics at http://www.easesim.com EFILive v 5.0 at http://www.starrperformance.com.au Interested in rolling your own diagnostics software? NEW! Hey, check this out. These guys over at Scantool.net have an affordable OBDII reader! It's based on the Elm electronics chip (below), but looks like a rolled together and ready to go package. Looks nice. If you want to save a few bux to scan your computer, this looks like a much easier solution than trying to piece together parts. This looks to be the LEAST EXPENSIVE turnkey OBDII solution going these days. Check 'em out. :) Want to build your own hardware interface and write your own software? Technically, WHY won't an AKM OBDI interface allow laptop to vehicle communications with an OBDII vehicle? First, for an introduction to GM OBDII, read the Intel Whitepaper that describes the 10.4 kbps Variable Pulse Width (VPW). This shows how 1's, 0's, and the voltage level of the datastream are formed. Worthwhile reading, Adobe Acrobat .PDF format. OBDI is *simple* compared to OBDII. An OBDI ALDL datastream operates at 8192 baud, with an RS232-like 8-none-1 encoding. All you need is a voltage to voltage converter (a la AKM interface cable) to translate the 5 volt ALDL bus wire to the RS232 compliant Transmit and Receive. That's it - voltage to voltage conversion. The rest is all software. Now, for OBDII. GM OBDII has two modes - 1X - which is 10.4 kbps, and 4X - which is 41.6 kbps. OBDII Scan tools (AutoTap, Ease Diagnostics, M-E, etc) *only* operate at 10.4 kbps. That is GM's standard diagnostic bit data rate. Now, it sounds like being a kbps, that it might be RS232 compatible? Nope. GM uses Variable Pulse Width (see the Intel docs for more info). A logical low short pulse is a "zero", a logical low long pulse is a "one". A logical high short pulse is a "one", a logical high long pulse is a "zero". So, to send a byte of data, there is a voltage transition for every bit - high, low, high, low, high, low ad infinitum. The width of the pulse determines whether it's a 1 or a 0. Now, with RS232, you can have two 1's next to each other, and the voltage state of the two bits will not change between the two of them (I believe a 0 in RS232 is the range of +3 to +12 Volts, and a 1 in RS232 is -3 to -12 Volts) - so you can have (+V) (+V) (+V) (-V) (+V) (+V) being a valid sequence of 6 bits in RS232. Also, the OBDII data wire is transitioning between +12V and 0V (or thereabouts). So, due to the variable pulsewidth, you *must* have some sort of translator microprocessor between an OBDII data bus and an RS232 device. The 41.6 kbps (4X) mode is used for reading from and writing to the flash memory. It's also known as programming / high speed mode. If a chip or cable can't do 4X mode, it can't be used to program a PCM. Period. My friends at Carputing designed their own cable to do this. It has to be capable of switching from 1X to 4X and back again. It took them a good deal of design time to hammer it out, but it works slick. To date, the guys at Carputing.com are the only ones who have a working, publicly available, <$1000 programming cable for OBDII, but it ONLY works with their software, and it ONLY works on LT1/LT4 and LS1 vehicles, and they are not giving away the keys to the castle. However, I know of another cable coming... Keep your eyes peeled this spring. ;) Now, for the exception to the rule. A member of the GMECM Mailing List wrote a quick and dirty DOS based utility to extract trouble codes from an OBDII vehicle - using the handshake lines of the RS232 port and 'bit banging'. Essentially, he samples the RS232 port to measure the time interval between pulses, and determines whether or not it's a 1 or a 0. And in sending messages to the OBDII bus, he does a similar timing procedure. However, he requires a rather quick computer to do the sampling (he uses a 500 MHz PIII - I could not get it to scan on a P1 133MHz machine). Although this is a novel approach, it's prone to errors and dropped bits, so I'd never use it for programming. But it supposedly works for getting trouble codes (I've never gotten it to work, even on my desktop Athlon 600). Hopefully I've made it a little clearer why, technically, the AKM OBDI cable (voltage to voltage converter) can't be used to hook a laptop to a GM OBDII datastream - the variable pulse width aspect. That's the killer - a VPW OBDII datastream is completely, utterly, not RS232 compatible.
|