Oilhead Coding Plugs, Decoded

Roger 04 RT

Registered user
Joined
Jul 1, 2014
Messages
849
Reaction score
2
Location
Boston & Miami, USA
A while ago I posted this thread in the US: Oilhead Coding Plugs. It was the best info I could find at the time on how BMW designed its Coding Plugs, or CCPs as they get called. Recently, I've come across much more accurate information from "the source". That is to say, the Motronic units themselves.

It turns out, as most of you know, that each Motronic unit has an EPROM. The EPROM contains instructions for the Motronic, along with over 600 tables of data that include 8 sets of fuel and 8 sets of spark tables. It also includes a table with 8 text string entries that say exactly what each of the 8 Coding Plugs has been designed for.

It is pretty easy to get the Motronic 2.4 to tell you what each CCP selects. You simply plug in a CCP and run an Autoscan with a GS-911. I've also confirmed the GS-911 report by having the chips removed from the Motronic and read with an EPROM reader and Hex Editor.

The bottom line is that the ONLY good advice one can give is to use the stock Coding Plug. The reason is that there is no formula that says a certain pin on the CCP has any particular function (e.g. Pin 86 does not effect Octane). It also turns out that even if you compare two R1150GSs, for instance, the CCP can have a different meaning based on the date and delivery-location of the motorcycle.

So ignore earlier posts in this thread, and since there are several different EPROMs, if you want to know which CCP is designed for which motorcycle-configuration for your bike, READ THE EPROM with a GS-911 (R1150) or you could remove the EPROM and read it, although that's something I don't recommend due to the risk of damaging it or your Motronic.

Three bikes I have data on at the moment are:
2004 R1150RT US (USA) Twin Spark
2003 R1150GS SA (South Africa) Twin Spark
2002 R1150GS CA (Canada) Single Spark

Here is the readout from each bike's various coding plug configurations. You can see the differences for yourself. If for example you put a Yellow Coding plug into the SA bike it selects No Series, and runs accordingly—barely at all!

2004 R1150RT US (USA) Twin Spark
No Coding Plug: R1150R/GS US+ECE
Beige Coding Plug: R1150R/GS Japan
Yellow Coding Plug: R1150R-GS Ocatan 91
Pink Coding Plug: R1150RT-RS US+ECE
30-86 Coding Plug: R1150RT-RS Japan
30-86-87a: R1100S US + ECE
30-86-87: No Valid String found
30-86-87-87a: keine Serie (no series)

2003 R1150GS SA (South Africa) Twin Spark
No Coding Plug: R1150R/GS US+ECE
Beige Coding Plug: R1150R/GS Japan
Yellow Coding Plug: keine Serie (no series)

2002 R1150GS CA (Canada) Single Spark
No Coding Plug: R1150 GS ECE Kat
Beige Coding Plug: R1150 GS US u.TEV
Yellow Coding Plug: R1150 GS CH o.TEV
 
Here's data taken from the Motronic from a 2002 R1150R. The variety of CCP functions is amazing.

2002 R1150R CA Single Spark
No Coding Plug: R1150R/GS ECE Kat
Beige Coding Plug: R1150R/GS US u.TEV
Yellow Coding Plug: R1150RS/GS CH o.TEV
Pink Coding Plug: R1150RT US/ECE Kat/T
30-86 Coding Plug: R1150RT US II Kat/TE
30-86-87a:
30-86-87: KEINE SERIE
30-86-87-87a:
 
For anyone not familiar with the location of your coding plug:

Here's a good picture for reference. It also includes a description of which pins to jumper to create a certain plug (e.g. pink is 30-87-87a) (Copyright Dirtrider)

CCPjumperpinsnumbered_zpsbfb87ad3.jpg
 
Below is some interpretive information that gives deeper insight into how BMW uses the Coding Plugs. Go back and check the descriptive text strings using the abbreviations.

This really cements the idea that there are a lot of varieties of Motronics out there.

Arbreacames said:
Nice job, Roger! This is the first time that I see some verifiable information regarding the CCP. It would be nice to learn more about what was intended with the different functions and what the different names mean. I will contribute an incomplete interpretation of some of the information that you documented:
CH: Switzerland
ECE: Euro standards
Kat: catalyitic converter (Katalysator)
TEV: tank breather valve (Tankentlüftungsventil)
o.: without (ohne)
u.: and (und)
US: United States
 
Nice one roger, I note you say better to stick with the standard, but surely that only applies where your bike is also standard. it seems to me that if you modify the zorst or intake then perhaps no CCP is better?

Incidentally, I have put my yellow CCP back in with the XIED but its still pinging in places though not as bad.
 
If you modify the exhaust or intake, a different plug MIGHT be better but it's very hard to say. I think the important differences are spark-timing related to the different heads, cams and compression. But that it little more than an educated guess on my part.

I've seen arguments that suggest the RT plug if you use the RT intake tubes but that also means you get the RT spark advance, designed for its higher compression, so I don't see that's better. Since these bikes do adapt mixture, probably there isn't much benefit to changing plugs for the intake tubes.

The so-called Steptoe mod (which he rightly says MAY work for some bikes) could simply be picking up the different timing of the R1150GS Japan bike. when that is what the 30-87a plug selects. But based on what can be seen in the scans, that Motorcycle Variant is not always present.

Regarding your pinging, can you get access to a GS-911 and see what variants it reports for the various plugs you're trying?
 
UPDATED June 4, 2015
--corrected phasing of 87 & 87a
--added data for US 2003 R1150GS single-spark

Earlier in this thread I posted up the best info I could find at the time on how BMW designed its Coding Plugs, or CCPs as they get called. Recently, I've come across much more accurate information from "the source". That is to say, the Motronic units themselves.

It turns out, as most of you know, that each Motronic unit has an EPROM. The EPROM contains instructions for the Motronic, along with over 600 tables of data that include 8 sets of fuel and 8 sets of spark tables. It also includes a table with 8 text string entries that say exactly what each of the 8 Coding Plugs has been designed for.

It is pretty easy to get the Motronic 2.4 to tell you what each CCP selects. You simply plug in a CCP and run an Autoscan with a GS-911. I've also confirmed the GS-911 report by having the chips removed from the Motronic and read with an EPROM reader and Hex Editor.

The bottom line is that the ONLY good advice one can give is to use the stock Coding Plug. The reason is that there is no formula that says a certain pin on the CCP has any particular function (e.g. Pin 86 does not effect Octane). It also turns out that even if you compare two R1150GSs, for instance, the CCP can have a different meaning based on the date and delivery-location of the motorcycle.

So ignore earlier posts in this thread, and since there are several different EPROMs, if you want to know which CCP is designed for which motorcycle-configuration for your bike, READ THE EPROM with a GS-911 (R1150).

Five bikes I have data on at the moment are:
2004 R1150RT US (USA) Twin Spark
2003 R1150GS SA (South Africa) Twin Spark
2002 R1150GS CA (Canada) Single Spark
2002 R1150R CA Single Spark
2003 R1150GS US Single Spark

Here is the readout from each bike's various coding plug configurations. You can see the differences for yourself. If for example you put a Yellow Coding plug into the SA bike it selects No Series, and runs accordingly—barely at all!

2004 R1150RT US (USA) Twin Spark
No Coding Plug: R1150R/GS US+ECE
Yellow Coding Plug: R1150R/GS Japan
Beige Coding Plug: R1150R-GS Ocatan 91
Pink Coding Plug: R1150RT-RS US+ECE
30-86 Coding Plug: R1150RT/RS Japan
30-86-87: R1100S US+ECE
30-86-87a: No Valid String found
30-86-87-87a: keine Serie (no series)

2003 R1150GS SA (South Africa) Twin Spark
No Coding Plug: R1150R/GS US+ECE
Yellow Coding Plug: R1150R/GS Japan
Beige Coding Plug: keine Serie (no series)

2002 R1150GS CA (Canada) Single Spark
No Coding Plug: R1150 GS ECE Kat
Yellow Coding Plug: R1150 GS US u.TEV
Beige Coding Plug: R1150 GS CH o.TEV

2002 R1150R CA Single Spark
No Coding Plug: R1150R/GS ECE Kat
Yellow Coding Plug: R1150R/GS US u.TEV
Beige Coding Plug: R1150RS/GS CH o.TEV
Pink Coding Plug: R1150RT ECE/US Kat/T
30-86 Coding Plug: R1150RT US II Kat/TE
30-86-87:
30-86-87a: KEINE SERIE
30-86-87-87a:

2003 R1150GS US Single Spark
No Coding Plug: R1150R/GS ECE Kat
Yellow Coding Plug: R1150R/GS US u.TEV
Beige Coding Plug: R1150RS/GS CH o.TEV
Pink Coding Plug: R1150RT ECE/US Kat/T
30-86 Coding Plug: R1150RT US II Kat/TE
30-86-87: R1150 R/GS ECE ROZ91
30-86-87a: KEINE SERIE
30-86-87-87a:
 
UPDATED June 6, 2015

--corrected year for US 2002 R1150GS single-spark

Earlier in this thread I posted up the best info I could find at the time on how BMW designed its Coding Plugs, or CCPs as they get called. Recently, I've come across much more accurate information from "the source". That is to say, the Motronic units themselves.

It turns out, as most of you know, that each Motronic unit has an EPROM. The EPROM contains instructions for the Motronic, along with over 600 tables of data that include 8 sets of fuel and 8 sets of spark tables. It also includes a table with 8 text string entries that say exactly what each of the 8 Coding Plugs has been designed for.

It is pretty easy to get the Motronic 2.4 to tell you what each CCP selects. You simply plug in a CCP and run an Autoscan with a GS-911. I've also confirmed the GS-911 report by having the chips removed from the Motronic and read with an EPROM reader and Hex Editor.

The bottom line is that the ONLY good advice one can give is to use the stock Coding Plug. The reason is that there is no formula that says a certain pin on the CCP has any particular function (e.g. Pin 86 does not effect Octane). It also turns out that even if you compare two R1150GSs, for instance, the CCP can have a different meaning based on the date and delivery-location of the motorcycle.

So ignore earlier posts in this thread, and since there are several different EPROMs, if you want to know which CCP is designed for which motorcycle-configuration for your bike, READ THE EPROM with a GS-911 (R1150).

Five bikes I have data on at the moment are:
2004 R1150RT US (USA) Twin Spark
2003 R1150GS SA (South Africa) Twin Spark
2002 R1150GS CA (Canada) Single Spark
2002 R1150R CA Single Spark
2002 R1150GS US Single Spark

Here is the readout from each bike's various coding plug configurations. You can see the differences for yourself. If for example you put a Yellow Coding plug into the SA bike it selects No Series, and runs accordingly—barely at all!

2004 R1150RT US (USA) Twin Spark
No Coding Plug: R1150R/GS US+ECE
Yellow Coding Plug: R1150R/GS Japan
Beige Coding Plug: R1150R-GS Ocatan 91
Pink Coding Plug: R1150RT-RS US+ECE
30-86 Coding Plug: R1150RT/RS Japan
30-86-87: R1100S US+ECE
30-86-87a: No Valid String found
30-86-87-87a: keine Serie (no series)

2003 R1150GS SA (South Africa) Twin Spark
No Coding Plug: R1150R/GS US+ECE
Yellow Coding Plug: R1150R/GS Japan
Beige Coding Plug: keine Serie (no series)

2002 R1150GS CA (Canada) Single Spark
No Coding Plug: R1150 GS ECE Kat
Yellow Coding Plug: R1150 GS US u.TEV
Beige Coding Plug: R1150 GS CH o.TEV

2002 R1150R CA Single Spark
No Coding Plug: R1150R/GS ECE Kat
Yellow Coding Plug: R1150R/GS US u.TEV
Beige Coding Plug: R1150RS/GS CH o.TEV
Pink Coding Plug: R1150RT ECE/US Kat/T
30-86 Coding Plug: R1150RT US II Kat/TE
30-86-87:
30-86-87a: KEINE SERIE
30-86-87-87a:

2002 R1150GS US Single Spark
No Coding Plug: R1150R/GS ECE Kat
Yellow Coding Plug: R1150R/GS US u.TEV
Beige Coding Plug: R1150RS/GS CH o.TEV
Pink Coding Plug: R1150RT ECE/US Kat/T
30-86 Coding Plug: R1150RT US II Kat/TE
30-86-87: R1150 R/GS ECE ROZ91
30-86-87a: KEINE SERIE
30-86-87-87a: [/quote]
 


Back
Top Bottom