Please Help Keep meeknet On-Line


Diagnostics on the 7 and 8 series is absolutely indispensable if you have a fault. It gives you a starting point and some idea where the problem is. There are a number of tools, interfaces, software, leads etc.....but what do you really need?


A Scanner

The simplest way to connect to the OBD is via a scanner (Peak Tools et al), these can provide the ability to find the basic fault codes from an engine. These codes are then compared against a list of common codes to locate where the engine fault is.


Carsoft is a piece of software that takes the diagnostic capabilities a bit further. For this you need:


You will need ONE RS232 port, some USB to Serial converters allow use on a Laptop devoid of one


This converts the RS232 data to the correct voltage levels for the diagnostic connector. These can be bought from Ebay, usually around 80


This usually comes as part of the Interface Box package. You usually get the large round BMW diagnostic plug and the standard OBD-II connector.


Again, usually supplied with the Interface Box and is a 9-pin D-type plug connected to a 9-pin D-type socket via a multi-way lead

Carsoft automatically translates fault-codes into fault messages that expands on what the fault actually is.


OBD was initially designed so that car manufacturers could diagnose problems with the fuel-injection system on engines, not just BMW but quite a few other manufacturers. No-one could agree what sort of communication protocol was used but pretty quickly a simple RS-232-based interface was agreed upon.

On the early straight-6 E32's a basic diagnostic capability was realised, a bit more sophisticated on the 750i and a lot more detailed on the V8 models. The V8 diagnostics could tell you which cylinder was not firing along with dwell-angles and other data.

In 1987 the California Air Resources Board (CARB) required that all cars built after 1988 must have basic OBD capabilities so that they could enforce the act. Unfortunately, they didn't specify any details so that a standardised interface could be agreed upon.

It wasn't until 1996 that the new OBD-II interface was decided upon. The OBD-II regulations also decided what sort of connector would be used and details of the interface. This is why USA E38's all have the new connector in the centre console, it is so that your emissions could be checked at any facility without even opening the bonnet. We do not need this connector in the UK and the large circular connector was retained in the engine bay for diagnostics until the final examples of the E38.

In December 1998 new directives were introduced in Europe and designated E-OBD. This is the reason that late model E38's (in Europe) have an E-OBD indicator in the instrument cluster. This indicator illuminates if a fault is present on the engine that affects the emissions. If the indicator is illuminated then you can be sure that an error code is present in the fault memory. More information on E-OBD can be found here.

The important thing to remember is that OBD is just a technique, it defines the protocol and basic use. In its basic form it can be used to check emissions-related parameters. However, BMW has pushed the capabilities much further, not only can engine parameters be checked but so can any system that is connected directly or indirectly to the OBD connector.


How much you can do with diagnostics depends on what system you are using to connect to the OBD-II connector. The basic scanners can only give you a list of fault codes.

Carsoft can do a lot more. Rather than just get information from the OBD-II interface it can communicate with other modules that are indirectly connected to the bus such as:

DME (Engine)
Instrument Cluster
Airbag System
DWA (Alarm System)
EGS (Gearbox)
ZKE (Body Electronics)
A/C system
EWS (Immobiliser)
LCM (Lamp Control Module)
PDC (Park Distance Control)

This is possible on the E38 as the Instrument Cluster serves as a 'hub' to pass messages between the OBD-II Diagnostic bus and the other busses as shown here:

The earlier the production date of the car being diagnosed, the less information is available via diagnostics. For instance, the E31 will only supply information on the ECU (engine control unit), EGS (gearbox control unit) and the airbag system. The amount of engine data is also dependant on the engine model, the M62 ECU supplies more data than the M60 (DME 3.3).

Below is a screen-shot of the main menu in Carsoft:

You can also reset the Service Lights and, importantly, get live data from the engine and gearbox such as Injector Angle, Intake Temperature, RPM, Throttle Position, 35 engine parameters and 30 gearbox parameters in all.

You can also erase any fault code that is found (although they will soon appear again if there is a genuine fault)

What Carsoft cannot do is reset the mileage or recode modules. You can check the mileage that is stored in the Lamp Control Module, note that the Mileage is in Kilometres:

The usual method of use is to perform a 'Total Diagnosis' which tests all the modules in the list. Some of the modules will not respond, this is quite normal as you will not have all the modules fitted to the car. For instance, if you have a monitor you will not get a response from the MID (Multi Information Display) because you don't have one fitted. One thing worth noting is that if you turn the A/C fan-speed down to zero you will get an error code, keep the fan speed at minimum.

The 'Total Diagnosis' will show if you have an error in any of the modules, the example below has quite a few problems, only the key system has no faults.

After the 'Total Diagnosis', check which modules have an error and then select that module from the drop-down list. This will then perform a full test on that module and will report the cause of the error. The example below shows the Instrument Cluster being tested, it gives 5 error messages the first of which can be seen at the bottom of the picture:

When you have gone through all of the modules that show an error code save the session by using 'Save As' which can be found under the 'Diagnosis Data' menu heading. Give the file a unique name such as your registration number and the date (X464_123_12-12-2008.pbd for instance) so that you can refer to it later. You can now delete the Error Codes and then drive the car for a while to see if they return.

Adaptation Values

Under the 'Special Functions' menu you will find an option called 'adaptation Values', this is used to reset the adaptations in either the engine ECU (DME/ME) or the gearbox ECU (EGS). For more information on adaptations click here. Erasing the adaptations is absolutely necessary when changing one of the engine sensors, especially the MAF, Lambda and temperature sensors. It is also necessary after changing or repairing any part that alters the fuel mixture (injectors, fuel-rail pressure regulator, PCV valve and gaskets). Disconnecting the car battery does not reset the adaptations on the E38 apart from the M60-engined V8's built between 1995 and 1996, diagnostics must be used to reset the adaptations on all other e38'S.


Under the 'Special Functions' Menu you will find an option for 'Coding' the car. There are only two settings that are not available through the OBC, these are the locking options:

'Auto Locking during driving' is pretty self-explanatory, 'Selective Locking' allows the driver's door to be unlocked using the key-fob but leaving the other doors and boot locked (anti-hijack). The other doors and boot require a second press of the key-fob.

Service Interval Reset

Also under the 'Special Functions' Menu can be found the 'Service Interval Reset' option, this allows either programmed reset or a general reset of the Service Interval and Inspection Interval.

Diagnostic connection

There are two diagnostic connectors on the facelift E38's, the usual round connector under the bonnet and a OBDII socket in the kick-panel above the pedals:

The internal OBDII connector is used for testing the DME (engine control unit) and EGS (transmission control unit) only, you will not be able to test any other module from this connection.

Carsoft unusual behaviour

Carsoft 6.5 has a few foibles which can cause strange behaviour. When Carsoft is run and its window is maximised, it will fail to read the Live Data correctly, instead of getting 5 pages of Live Data you will only have one page available. To work around this problem do not run Carsoft in a maximised window. Carsoft will have to be closed and then restarted if it has been maximised to run correctly.

To read the ECU Live Data, the internal OBDII port seems to work better allowing the full 5 pages of data to be read. If all pages are not available, close and restart Carsoft. Only the under-bonnet diagnostic connector can be used for a 'Full Diagnose'.


P.A.Soft is a similar product to Carsoft but allows a lot more flexibility. It allows resetting of the mileage and recoding of certain data. It can be used to get the EEPROM contents from an old module and the writing of those contents to a new module thus making the module compatible with your car.

You can also do quite a lot of harm with P.A.Soft if you do not know what you are doing unlike Carsoft which is quite safe. The versions that are usually bought from Ebay give Error Codes but no explanation of what the code means. Not very useful and many buyers are disappointed with this omission.

One important fact is that you cannot use a Carsoft Interface Box with P.A.Soft, they have obviously used a hardware 'key' in their interface that is not present in the Carsoft Interface Box. To use P.A.Soft you will need their Interface Box, again available from Ebay.


I am a recent convert to INPA, it is fast, easy to use and does so much more than Carsoft and PASoft. It even works on much later cars (such as our Mini Cooper). It is able to communicate with many more systems to a much deeper level. I will add to this when I have more experience, now I have INPA I do not use Carsoft or PASoft. For now, here are a few screenshots:

BMW Diagnostics

The BMW DIS and MO-DIC units can do all of the above but they can also delve much further into any system that is connected via any of the Bus Systems and is beyond the scope of this short introduction.

Lastly, don't forget that diagnosis is just a tool, and like any tool it takes experience to know how to use it. Diagnostics will rarely reveal exactly what the fault is, it is the interpretation of the data combined with experience of the BMW systems that will lead to a correct fault diagnosis and successful repair!