BMW OBDII codes and connectors

A friend of mine has a 5-series BMW, I think it's a 2000. We were discussing my laptop-based OBDII/CAN code reader that I use on my own car, and how useful it was. He said he's wary of buying one, because he thinks he needs to get one that fits the special BMW round port in the engine compartment, rather than the standard rectangular port under the dash. He thinks otherwise it won't be able to read the manufacturer specific codes in the P1xxx range.

What's the truth on this? I've read a few webpages, but there's nothing that says anything conclusively. Some pages say that the dash mounted connector is not really connected to anything on a BMW. Others say that this would be illegal if this were really the case.

Yousuf Khan

Reply to
Yousuf Khan
Loading thread data ...

Plug your laptop into his car and show him what is there.

OBD II should see the mfg specific codes, P1nnn, if they are present.

Your setup will connect to the data port in the passenger compartment that you use in your car. The OBD II spec says that the data port must be a common type and in a common location. The problem (one of many) with the OBD I system was that every automaker had a different way to extract the codes, and the codes meant different things. The service providers had to go to several different schools and buy lots of different scan tools, and as a consequence the diagnostic tools that ought ot save consumers money actually costed them more because the technicians had to cover huge overhead with gathering data from all of the different implementations of the system. OBD II standardized the implementation. In theory -- actual practice, actually -- the consumer can go out and buy a scan tool and use it on any post-'96 make and model car or light truck.

Reply to
Jeff Strickland

The problem is that it will ONLY show you the engine codes. And that's sometimes useful, but it's a tiny fraction of the amount of information that is there.

--scott

Reply to
Scott Dorsey

Are the formats of the non-engine-specific codes different? Will buying the round BMW plug and attaching it to a laptop be able to display those non-engine codes?

Yousuf Khan

Reply to
Yousuf Khan

All of these codes should be available through the OBD II connector ...

formatting link

Reply to
Jeff Strickland

But Scott Dorsey said we won't see all of the possible codes coming out of the standard OBDII ports. You're saying we will. Which is right?

Yousuf Khan

Reply to
Yousuf Khan

There is program data that the OBD II port will not see, Scott is 100% correct there.

But if there is OBD II data, the OBD II data port will disclose it. That's what OBD II is all about. The Check Engine Light (Malfunction Indicator Light -- MIL -- is the technical term under the OBD II specification) will come on if any of the codes in the table I gave you is stored. Let me restate that, there are codes that might not turn on the MIL, but are in the tables I gave you, the OBD II data port will show them. Any Code that lights the MIL will be shown at the OBD II Data Port, some codes that are shown at the data port might not turn on the MIL.

There can be vehicle data that is not OBD II data, and therefore will not be shown via the OBD II data port. If you were into tweaking the program, you might be interested in some of this other data. But, if all you wanted was to figure out why the MIL was on, the data port will tell you why, and will include the P1nnn codes. All '96 and later vehicles sold in the USA (and other countries as far as I know, but don't really care much about) will display the P0nnn codes. These codes are all common among all cars. If the car has a system that generates a code, the same code will be generated by all cars. These codes are P0nnn codes. Some cars will not produce a given P0 code because they do not monitor the system -- an example is the After-CAT O2 Sensor, all cars that have this sensor give the same code, but some cars do not have the sensor so they simply can not produce the code and nobody cares.

The P1nnn codes (manufacturer specific, by definition) codes are for systems that some makers employ. In theory, a BMW specific code would be for a system that only BMW monitors. The theory breaks down a little bit relative to these codes though. Example, P1246 and P1260 have different meanings depending on the maker yet the conditions reported would reasonably be problematic for all makers and therefore should be a P0nnn code.

Having said that, if you look up a code that appears on your BMW, and the tables say FORD ONLY, or whatever, then that system described on the table is not the one that is asking for your attention on your BMW. Or, the tables are dated, and the code is newly added.

Since you have a PC based scan tool, you should have the latest code lists available onboard the PC, or via an update that has not been downloaded. Your PC should give a code along with the text of the problem, P0nnn - FRAMIS VALVE MALFUNCTION. If the Framis Valve is monitored by a P1nnn code, it should still be displayed on the OBD II data port.

The whole point of OBD II is that repair centers were fleecing consumers under the OBD I system because they were charging lots of money to simply pull the codes. The rationale they used was that the codes were some sort of secret that required specialized training and unique and costly equipment. To the extent that the automaker's schemes to get the codes was different among different makers, and sometimes different among the same maker but different models -- a Thunderbird might display its codes differently than an F150, for example -- the repair shops had a valid claim to your money.

OBD II is a rule to standardize the means of extracting the data and diagnose the data extracted. The whole idea was to allow people to understand what was wrong with the car and do repairs themselves without having to learn the technique to get the data and the meaning of the data they got for all of the different vehicles they might own.

I own 5 cars. I have to learn several different ways to get the data, and figure out what the data means, for each of them. OBD II makes it easier for me to fix my cars, once I migrate my fleet to post '96 production.

Reply to
Jeff Strickland

I believe that the error codes for the other computer subsystems are available through the OBD II port, but they are not readable by the cheap scanners.

In addition there are diagnostic modes available on the ports which allow you to plug in a scanning device and look at realtime plots of all the engine sensor inputs and outputs. This is an absolute lifesaver and a whole lot easier than trying to guess what's happening from an error message that says a sensor is out of range, but not what direction it's out of range, and with no information about the other sensors that aren't out of range.

Sadly, the cheap scanning tools don't allow you to use that information either.

The problem is that these cars are computer networks on wheels... there is an outrageous amount of automation and a huge number of individual communicating systems, and when _anything_ fails you will be completely at a loss without information from the responsible system. The cheap scanning tool isn't a bad thing to have, but it's not enough to diagnose the vast majority of problems you'll encounter.

Now... the good news is that if it's a 2000 model, it's not anywhere near as crazy as a late model BMW. And if it has a manual transmission, you are that much better off because the transmission control system is one of the more nightmarish diagnostic headaches. But this is a car that has microprocessors controlling the interior lights... It's not like the 2002 any more, sadly....

--scott

Reply to
Scott Dorsey

All of what Scott says is true of the cheap scanners, but the PC based system used by the OP should give good readings of as much stuff as can be had.

The OBD II scanners, and PC-based software applications provide the average shadetree mechanic with the information needed to do the kinds of repairs that are nomrally tackled at home.

If Scott's point is that the BMW diagnostic port gives more information, I agree. But, the scan tool needed to pull that information is cost-prohibitive for pretty much anybody that is not making money servicing cars. And people that have the money to buy the tool but not make money fixing cars are likely to just pay the service call on his car and let somebody else do the dirty work while he worked the phones to extend his family fortune, or spent the day on his yacht.

Reply to
Jeff Strickland

Okay, assume I'm using a PC with OBDII software rather than a standalone scanner. My assumption is that all codes are of the same format, whether they are the standard or proprietary codes on OBDII, so the PC software should be able to at least display the code number even if it doesn't understand what it's about.

I believe the real-time sensor plots are available on all cars, it's not just a BMW feature, right? So it would be a standard OBDII feature, rather than proprietary.

Yeah, actually my friend wanted a tool that could even tell him if the windows were opened or closed. Not that he really needs that, but he does like to be able to have full capabilities. Will these proprietary, non-critical codes come through the standard under-dash port?

Yousuf Khan

Reply to
YKhan

So what sort of information would not come out of the standard under- dash port, that would come through the BMW proprietary port?

Yousuf Khan

Reply to
YKhan

If the PC software knows how to interrogate the other computer systems, it might. But interrogating the ECU will give you only the ECU codes.

The implementation is proprietary. Some folks have reverse-engineered it and so there are third-party devices that allow you to see the information the same way the BMW tools do. Those third-party devices are very, very expensive.

They will, if you know how to send the interrogation sequence in order to get the computer that controls the windows to tell you what its state is, and if you know how to read the sequence that it sends back. Software to do this exists, but it's not cheap.

--scott

Reply to
Scott Dorsey

So what sort of information would not come out of the standard under- dash port, that would come through the BMW proprietary port?

Yousuf Khan

If your goal is to fix the car next Saturday, everything you need to learn is in the OBD II port. If you intention is to go racing, the OBD II port is not going to help you.

The OBD II data is dependent on the scan tool, that's what Scott is telling you. There are several levels of scanners, based on price. Let's say there are 4 models of scan tool down at your local auto parts store. As you progress up the scale of price points, you get greater levels of information. The cheapest unit will give you the code, and you have to open a book to find the meaning. The next unit will give the code and the meaning, and so on. I don't know what all of the data sets are that can be delivered, and none of it matters to you because you have a PC based scan tool. Your scan tool will define the depth of data that you get.

The rule of thumb is that if the data is listed in the table I gave you already, then it can come up through the OBD II data port.

Reply to
Jeff Strickland

Okay, assume I'm using a PC with OBDII software rather than a standalone scanner. My assumption is that all codes are of the same format, whether they are the standard or proprietary codes on OBDII, so the PC software should be able to at least display the code number even if it doesn't understand what it's about.

The Website for your tool should have all of the possible codes. The readout -- if it is worth anything at all -- should give the code and a textual indication of what the code means. If the code is a P1nnn code, the textual readout should tell you the manufacturer specifics, that is the code will be displayed, and the textual indication of the code should say FORD for the Ford meaning, GM for the GM meaning, BMW for the BMW meaning, and so on. ANY P1,,, code should be follwed up by the mfg, that uses that code for that meaning. It does no good to give a P1nnn code without the mfg designation, because the meaning of a code in a Ford platform and the same code in a BMW platform will be entirely different. The machine will not know that it is plugged into a Ford or a BMW, so the text that is displayed must display for all makers. I assume you have to scroll through multiple screen of data to find the information that affects you.

I believe the real-time sensor plots are available on all cars, it's not just a BMW feature, right? So it would be a standard OBDII feature, rather than proprietary.

If you can plug your PC into your car and get real time data, then you can get real time data from the BMW. OBD II is a universal convention. Nothing about it is proprietary, except for some of the specific codes that might come out.

Yeah, actually my friend wanted a tool that could even tell him if the windows were opened or closed. Not that he really needs that, but he does like to be able to have full capabilities. Will these proprietary, non-critical codes come through the standard under-dash port?

I seriously doubt that OBD II data will tell you if the windows are open. Having said that, I had a '95 Ford Bronco, and I bought an OBD I scan tool for it, and it told me stuff like the current state of the radio and AC system. I don't recall if it reported the state of the windows, and I had to remember to turn the radio and AC off so the scanner did not make the light blink all day reporting those systems being on.

Reply to
Jeff Strickland

there is a maker of cheap scan tools, BMW-specific, for the underhood port and also the airbag system. They run around $150 each.

formatting link

Reply to
RBnDFW

MotorsForum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.