A few weeks ago my wife’s 1997 BMW 328i illuminated the ‘check engine’ light and she called me asking if she should immediately take it to the dealer to see what was wrong. Since I had just changed the battery on the car and thus the electrical system had lost power a few times, I thought that it might be a false alarm and told her I’d like to look at the diagnostic trouble code (DTC) on its OBDII port before spending any money at the dealer. Taking a car to the dealer with a ‘check engine’ light is giving them permission to charge your for an hour’s labor for what might turn out to be nothing.
I had purchased an OBD scan tool at Amazon.com that hooks up to a USB port on a computer and it’s based on the ELM327 chip, which means it can read any of the standard protocols available on the OBD connector. However, when I first tried to use it on the BMW just to satisfy my curiosity after purchasing the tool, I recall not being able to locate the connector. On U.S.-made cars like my Dodge Durango, these OBD connectors are located under the driver’s side dash and are usually exposed and thus easy to locate. In looking through a few BMW forums for help on where the port is located, I found some conflicting advice about the port being under the hood and having a special round plug that was unique to BMW. Some forum responses assured me it was down there under the dash next to the clutch but it was covered.
After getting a flash light and putting my head under the dash, it was almost embarrassing that I didn’t find it sooner. BMW put a cover on it that was clearly labeled OBD, but unless you’re a contortionist and get your head under the dash, you won’t be able to read that cover. The cover is easily opened by turning a screw head with a coin and the cover will hang down from a tether. Similarly, the connector itself has a cap over it which can be pulled off and it is also tethered. After pulling off these covers, the OBD plug was plainly visible.
Please note, the photos below are taken from the driver’s side floor looking up at the bottom of the dashboard.
After connecting the scan tool and running the software to check the codes, I found out the check engine light was complaining about a past event where the coolant sensor had reported too low a value. I checked the radiator fluid level and everything looked fine. I figured the car’s computer may have gotten confused when I was replacing the battery. I used the scan tool to turn off the check engine light. It’s been a few weeks and the light has stayed off, so the little device has paid for itself several times over just for that one usage.
I wanted to document this here in the blog in case someone goes searching for how to find the BMW’s OBDII port since a few pictures of it sure would have been helpful to me.