View Single Post
Old 12-13-2003, 05:37 AM   #12
BigBoogieman
Newbie
 
Join Date: Dec 2003
Posts: 1
My Photos: ()
This is incorrect, OBDII logging software absolutely does poll the port. The way it works is that you send a specific request to the OBDII port, and it returns a single piece of information. For example, there's a command to request the current RPM's. The port DOES NOT constantly output data, only as it's requested. This is why OBDII loggers only allow you to log a certain number of parameters at a time, and why the sample rate is lower the more parameters you log. If your logger is logging RPM's, speed and ignition advance, for example, it constantly requests those values. The conversation would look like this:
Logger: Give me current RPM's
ECU: 6000
Logger: Give me current speed
ECU: 50KPH
Logger: Give me current ignition advance
ECU: 2 degrees
Then this entire conversation would repeat. The more parameters you want to log, the less often the logger will be able to obtain their values.

To answer the original question, I believe the reason why the OBDII port operates at a rate of 10.4Kbps is specifically because at that slow transfer rate, the ECU won't have any trouble keeping up with it. The protocol was designed for diagnostics, not really for long-term data logging, so this speed is reasonable. But there should be no problem using the port for data logging all the time because it requires very little processing from the car to answer these requests. Your logger is severely limited on how fast it can make requests, because both it and the ECU spend most of their time waiting around for the bytes to be transferred.

Quote: Originally Posted by Magnezium
OK. This shoud clear EVERYTHING up. Computers have a VGA out. This is our output from the system. We all know that whether the monitor is plugged in or not, it doesn't affect the performance of the system. This is because the VGA adapter sends the information whether it's read or not by the monitor. It's the same in the case of an OBD II, the output is 2 pins (Far right pins). These are the equals to the VGA out on a computer. The software you get to read from these pins does not "poll" the ECM or ECU. The software only displays what is already being sent. OBD II is NOT necessarily read only. OBD I (One) was Read Only. It was an EPROM that was changable. OBDII (Two) is a perminant IC. Therefore it is programmable. Making it a non-read-only system. However, you wont damage it because the software that you use to read the info from the OBDII interface doesn't send any information. When you clear the "check engine" light, you're actually telling the computer to clear current data (we call this the "shut up" command") and the light turns off. But it doesn't stay off. If you still have a problem, the second it occurs, BANG! "Check Engine" is back to haunt you.

If you're just trying to get speed and rpms (simple data) from the OBDII, it's best that you don't use that kind of software. Instead, just use VB or C++ to read the 2 pins I talked about earlier. That way, you don't have to spend $200+ on software and an adapter. There's PLENTY of info out on the internet about this. Give it a search.

BigBoogieman is offline   Reply With Quote