ST406 Coding & Programming

Download as pdf or txt
Download as pdf or txt
You are on page 1of 185

Ref

erenceManual

CODING&
PROGRAMMI
NG

Techni
calTr
aini
ng
Theinf
ormat
ioncontai
nedi
nthismanuali
snott
oberesol
d,bar
ter
ed,copi
edort
ransf
err
ed
wi
thoutt
heexpresswri
tt
enconsentofBMW ofNor
thAmeri
ca,LLC("
BMW NA" )
.
Table of Contents
Introduction to Coding & Programming

Subject Page

What is Coding? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

What is Programming? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4

What is the Purpose of Coding and Programming? . . . . . . . . . . . . . .5

Where is Data Stored in a Control Module? . . . . . . . . . . . . . . . . . . . . .7


EPROM (Electrically Programmable Read Only Memory) . . . . . . . . . . . .7
EEPROM (Electrically Programmable Read Only Memory) . . . . . . . . . . .8

Review Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9

Initial Print Date: 12/04 Revision Date:


Introduction to Coding & Programming

Model: All

Production: All

After completion of this module you will be able to:

• Distinguish between Coding & Programming

• Understand the importance of Coding & Programming

• Understand where data is stored in a Control Module

2
Introduction to Coding & Programming
What is Coding?
It is a process utilized by BMW, which groups system specific operating requirements
(Data) together and then assigns a label/code to each of these groups of data. The vari-
ous groups of data are all pre-loaded into system specific “codable” control modules,
along with a basic set of operating instructions (Program).
Types of operating requirements:
• Nominal values of device input signals (0.25V to 2.5V, 5W - 25W, ...)
• Type of device input signal (PWM, square wave, analog ...)
• Operational parameters (device activation/deactivation time, ...)
• Market specific operations (O2 Sensors, Fuel Type, Emission Control, ...)
• Country Specific Regulations (U.S., Canada, Japan, UK, ECE, ...)
• Powertrain Configurations (Manual, Auto, TLEV, ULEV, SULEV, Diesel, ...)
The procedure of assigning one specifically labeled group of data to the operating pro-
gram of a specific control module/component is referred to as “coding”.

BEFORE CODING AFTER CODING

Hassermen Bsaljeoi Gllufpjenr Rusdljfoiv

BMW Diagnosis and information system


TIS

Nerucvleu

Coding allows a specific


Frluelkdmvdk

Wsdkurovcn
kjdfkjorir

set of data already present


in the module to be selected. Hassermen

A “codable” control module has a basic operating program already installed along with
several specific variations of operating data. The coding process allows a specific set of
operating data to be assigned to the basic operating program of that module/component,
with respect to its specific application.

3
Introduction to Coding & Programming
Coding can be performed for some systems/components:
• By installing a specific plug (coding plug) into a device/component
• By entering a 4 digit alpha-numeric code (variant code) via the programming selec-
tion on DISplus/GT1/SSS
• Selecting customer specific system operational settings from a list of available fea-
tures (VKM)
• Automatically by selecting a specific coding process available via ZCS Coding or CIP
using the DISplus/GT1/SSS

Note: Codable control modules/components are system specific, which means


that not all control modules are codable.

What is Programming?
It is a process utilized by BMW to load application/system specific operating instructions
BEFORE PROGRAMMING AFTER PROGRAMMING

BASIC
DATA

No specific operational
program installed.

Hassermen Bsaljeoi Gllufpjenr Rusdljfoiv

Programming loads control


BMW Diagnosis and information system
TIS

Nerucvleu

Frluelkdmvdk

functions instructions into


Wsdkurovcn
kjdfkjorir

a specific control module.


Hassermen

(Program) into a module/component which already has the systems operating require-
ments (Data) installed, plus it can be used as a means of updating data and operating
instructions previously installed in a control module.
Basic programmable control modules have a pre-defined set of operating data already
installed which allows the module to be fairly generic until a specific operational program
is installed.

4
Introduction to Coding & Programming
Programming of system control modules is performed using a DISplus/GT1/SSS.

Note: Programmable control modules are system specific and not all control
modules are programmable using workshop equipment like the
DISplus,GT1 or SSS. The ability to program a module is limited to the
number of times it has already been programmed and the hardware
version of the control module itself.

What is the Purpose of Coding and Programming?


As a global manufacturer, BMW must design a large variety of control modules to meet
numerous vehicle requirements pertaining to issues such as:
• Country Specific Regulations (U.S., Canada, Japan, UK, ECE, ...)
• Vehicle Equipment Level (Phone, Navigation, HiFi, IHKA, IHKR, ...)
• Vehicle Powertrain Configurations (Manual, Auto, TLEV, ULEV, SULEV, Diesel, ...)
• System Specific Operating Requirements (Nominal values, type of input signal, ...)
By using Coding and/or Programming, the large variety of control modules needed can be
reduced to a smaller number of model specific hardware variations.
Codable control modules contain:
• A common operating program
• A large number/variety of specific operating data groups
In order to use this type of control module it must first be CODED to ensure that the
operating data specific to that vehicle/model application is used by the operating program
of the control module.
Programmable control modules contain:
• The required/specific operational data
• No operating program
In order to use this type of control module it must first be PROGRAMMED to ensure that
the operating program specific to the vehicle/model application is used.
Prior to the availability of Coding and Programming in the workshop this task could only
be performed at the factory.
Initially the factory installed Control Module(s) with a common operating program or data
into vehicles and as theses vehicles reached various points in the assembly process the
control modules were updated with the required operating data or program specific to the
application for that particular vehicle. Since replacement parts always need to be avail-
able, parts inventory needed to contain all variations of preprogrammed control modules
installed in all varieties of vehicles that were manufactured. This was not a big problem in
the early years, when the variety/quantity of models was smaller.

5
Introduction to Coding & Programming
As the number of control modules and the complexity of the various systems installed
into vehicles increased, the number of modules that needed to be stored in parts invento-
ry began to increase as well. Eventually this led to the stocking of hundreds of different
control modules that were either pre-programmed or pre-coded for a specific application
and model, but only differed slightly in the way they were coded or programmed.
Pre-programmed and pre-coded control modules always needed to be available in the
event a control module failed once the vehicle left the factory floor, since this was the only
place programming & coding procedures could be performed. In order for repairs to be
made quickly, dealers were required to maintain a stock of several varieties of control
modules, since technicians could only remove the failed module and installed a new pre-
programmed or pre-coded module into the vehicle.
As a result of having to maintain a very large inventory of pre-programmed and pre-coded
control modules in parts inventory, it was decided to make coding and eventually pro-
gramming available in BMW workshops.

DME

The following advantages have occurred since programming and coding can be per-
formed in the workshop:
• Fewer control module hardware versions are needed (only need basic control mod-
ules)
• Lower parts and inventory costs
• Able to update software in a control module without having to replace the module
(Re-Code/ Re-Program to address service Measures)
• Ability to add special equipment features to existing control modules (DWA, Day
Time Running Lights, ...)
• Customization of vehicle operation (Conversions, VKM, A/C, ...)

6
Introduction to Coding & Programming
The means by which coding or programming information is provided to a control module
varies and is determined by the vehicle, model year and type of module(s) installed.
BMW currently uses the following methods to perform Coding or Programming:
• Coding Plug
• DME variant Coding
• Coding Code
• Central Coding Key (ZCS) or Vehicle Order (VO)
• EPROM Programming
• Flash Programming
• Vehicle and Key Memory (VKM)

Where is Data Stored in a Control Module?


The control modules used in our vehicles store data/information on one of the following:
• EPROM (Electrically Programmable Read Only Memory)
• EEPROM (Electrically Erasable Programmable Read Only Memory)
In essence these devices are similar to the harddrive of the PC (Personal Computer) that
many of us use daily to store the images and documents/files of information.

EPROM (Electrically Programmable Read Only Memory)


An EPROM is a computer memory chip that can be electrically programmed, however in
order to erase data that is stored on the chip it must be removed from the device and
exposed to UV lighting for a specific time period. An EPROM has what is commonly
called a “window” on the top portion of the chip usually located underneath a protective
label, it is this area that must be exposed to UV light of a certain intensity for a specific
time period in order to erase the information stored on it.
Early engine control modules (DME 3.X) and transmission control modules were the first
devices which allowed technicians to first remove the chip from the module, install a new
“blank” EPROM and then program the module.

DME

7
Introduction to Coding & Programming
EEPROM (Electrically Programmable Read Only Memory)
An EEPROM is a computer memory chip that can be electrically programmed and elec-
trically erased, thereby not requiring the chip to be removed from the module or exposed
to light. In general this chip is not easily removable from the device it is installed into.
Since the entire process of programming and erasing is done electronically this device is
commonly referred to as “Flash Programmable”.
During the programming process the following type of information may be loaded into the
control module depending on the specific application or update that needs to be
installed:
• Characteristic Maps (Ex. Ignition, Injection, Purge Control, DSC Regulation, ...)
• Control Constants/ Operational Data
• Operational Program
• Control Module Identification Information (Ex. Hardware Number, Program Number,
Date of Modification, ...)

What is needed to Code and Program?


In order to code or program a vehicle or control in the workshop, specific equipment and
special software is required such as a DISplus, GT1 and an SSS which must all be con-
nected to a network and have the must current version of CIP (Coding, Individualization &
Programming) installed. CIP is the software program that contains all the latest data and
program information to allow control modules to be updated to the latest level to address
customer concerns and implement service solutions.
With the release of CIP 15.0 and the implementation of Progman (see Progman section
for additional information) the DISplus and GT1 will only be capable of performing vehicle
diagnosis and activation/initiation of a Coding, Individualization or Programming task
through the SSS. A special program management tool (Progman) will only allow the
DISplus and GT1 to act as remote terminals to the SSS (regarding Coding,
Individualization & Programming), which means that the SSS will be the single supplier of
Coding, Individualization and Programming information to a vehicle and its respective
control modules.

8
Introduction to Coding & Programming
Review Questions
1. What happens when a control module is coded?

2. What happens when a control module is programmed?

3. What advantage is there by allowing workshops/centers to code and/or program


control modules?

4. What component(s) stores data in a control module?

9
Introduction to Coding & Programming
Table of Contents
Coding & Programming Equipment

Subject Page

Equipment and Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4


DISplus (Diagnostic Information System) . . . . . . . . . . . . . . . . . . . . . . . . . .4
GT1 (Group Tester 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
SSS (Software Service Station) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
Diagnostic Head . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
OPPS Head - (Optical Testing & Programming System) . . . . . . . . . . . . . . .5
OPS Head - (Optical Programming System) . . . . . . . . . . . . . . . . . . . . . . .6
Deutronic Automatic Battery Charger . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
Hardware Operating Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
Coding & Programming Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
Latest DIS CD xx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
Latest CIP xx.x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8

Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
Vehicle Bus Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
Workshop LAN Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
Network Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
Network Connections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
Accessing Configuration Information . . . . . . . . . . . . . . . . . . . . . . . . . .14
Workshop Network Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
Common Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
Local Area Network (LAN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
Ethernet Cable (CAT 5) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
RJ-45 Connectors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
Wall Jack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
Switched HUB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
Network Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
Automatic/Online Updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
Access Point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
Interface Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
IP Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
IP Subnet Mask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
Gateway . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22

Initial Print Date: 12/04 Revision Date:


Subject Page
Remote Coding, Individualization & Programming Terminals . . . .23
Software Service Station . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
OPPS/OPS/Diagnostic Head . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
OPPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
OPS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
Diagnostic Head . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
MOST Direct Access Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26
Equipment Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27

Procedure for Coding & Programming . . . . . . . . . . . . . . . . . . . . . . . . .29

Review Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31


Coding & Programming Equipment

Model: All

Production: All

After completion of this module you will be able to:

• Identify the equipment needed to perform a Coding or Programming session

• Determine what components make up a workshop network

• Understand the terminology used with regard to networks and configurations

• Connect the various components needed for Coding & Programming a vehicle

• Properly prepare a vehicle for Coding or Programming

3
Coding & Programming Equipment
Equipment and Software
Coding and Programming of a control module can only be performed within the work-
shop network using BMW Group Equipment and Software.
As of 2004 the standard diagnostic equipment available for a workshop consists of:
DISplus (Diagnostic Information System)
Used For: Vehicle Diagnosis, Coding, Programming and
Individualization
(Refer to SI B07 03 00)
With PROGMAN (CD14) the DISplus will no longer be
able to do coding and programming directly, it will only be
used as a remote terminal that can initiate Coding &
Programming through SSS.
Connection: Direct to LAN/Workshop Network or Direct
to OPPS/OPS/Diagnostic Head

GT1 (Group Tester 1)


Used For: Vehicle Diagnosis, Coding, Programming and
Individualization
(Refer to SI B08 01 02)
With PROGMAN (CD14) the GT1 will no longer be able
to do coding and programming directly, it will only be
used as a remote terminal that can initiate Coding &
Programming through SSS.
Connection: Wireless LAN or Direct to LAN/Workshop
Network or Direct to OPPS/OPS/Diagnostic Head

SSS (Software Service Station)


Used For: Vehicle Coding, Programming and
Individualization. NO DIAGNOSTIC CAPABILITY.
(Refer to SI B07 01 03)
With release of PROGMAN (CD 14) the SSS becomes
the only tool for performing Coding, Programming and
Individualization. All requests from GT1 or DISplus will be
performed by the SSS. The SSS can also be used to
directly initiate a Coding, Programming or Individualization
request.
SSS will be capable for coding/programming multiple
vehicles, Max 5 vehicles at a time.
Connection: LAN/Workshop Network or Direct to
OPPS/OPS Head

4
Coding & Programming Equipment
Diagnostic Head
Interface between vehicle and DISplus, GT1 or SSS
Used For:
• Vehicle Diagnosis, Coding, Programming and
Individualization
(Refer to SI B08 01 02)
• Not to be used for programming vehicles with a
MOST bus (E60/63/64/65/66...)

Connection:
• Wireless to LAN/Workshop Network via access
point
• Wireless connection direct to GT1
• Directly to LAN/Workshop Network using DK LAN
cable
• Directly to GT1/DISplus/SSS using DK LAN Cable
and adapter
Refer to section on Equipment Configuration

OPPS Head - (Optical Testing & Programming


System)
Interface between vehicle and DISplus, GT1 or SSS
Used For:
• Vehicle Diagnosis, Coding, Programming and
Individualization on Most bus equipped vehicles.
(Refer to SI B07 03 02)
Note: The OPPS is NOT ABLE to perform
Diagnosis, Coding, Individualization &
Programming on an I-bus equipped vehicle.
• Optical diagnosis of MOST and Byteflight Bus sys-
tems.
• Simultaneously program vehicles equipped MOST
Bus system (except E65/66) via MOST Bus access
port and OBD Connections.
Connection:
• Directly to LAN/Workshop Network connection
using DK LAN cable or
• Directly to GT1/DISplus/SSS using DK LAN Cable
and adapter.
Refer to section on Equipment Configuration

5
Coding & Programming Equipment
OPS Head - (Optical Programming System)
Interface between vehicle and DISplus, GT1 or SSS

Used For:
• Vehicle Diagnosis, Coding, Programming and
Individualization
(Refer to SI B07 02 04)
Note: The OPS is not able to perform optical
diagnosis of MOST Bus and Byteflight sys-
tems nor can it be used to perform Diagnosis,
Coding, Individualization & Programming on
an I-bus equipped vehicle.
Connection:
• Directly to LAN/Workshop Network or
• Directly to GT1/DISplus/SSS using DK LAN Cable
and adapter.
Refer to section on Equipment Configuration

Deutronic Automatic Battery Charger


Used For:
• Maintaining proper vehicle battery voltage level
during Diagnosis, Coding and Programming.
(Refer to SI B04 11 02)
• Follow the initial setup of the charger as indicated
in the SIB.
Connection:
• During Coding or Programming Procedure the bat-
tery charger must be in the Power Supply (PS)
mode.
• Place the charger into the power supply mode by
depressing the “MENUE” button 3 times in rapid
succession.
Refer to section on Equipment Configuration

6
Coding & Programming Equipment
Hardware Operating Conditions
Device Operating Temperature Relative Humidity
GT1 +3°C - +43°C = +37.4°F - +109.4°F 10 - 80% (no condensation)
OPPS/OPS +3°C - +43°C = +37.4°F - +109.4°F 10 - 90% (no condensation)
SSS +10°C - +35°C = +50F - +95°F 10 - 90% (no condensation)
Monitor SSS +3°C - +35°C = +37.4°F - +95°F 10 - 90% (no condensation)

Coding & Programming Software


Whenever coding and programming are to be performed on a vehicle, the latest version
of software for DISplus/GT1 and SSS must be loaded/installed on the equipment being
used.
The DIS CD xx contains the diagnostic programs (test modules, schematics, system sta-
tus values...) prior to CIP 15.0 all coding and programming information for early produc-
tion vehicles (E31, E32, E34, E36, E38, E39, E46, E53 and E52) was also available.

Note: With the introduction of CIP 15.0 all coding and programming informa-
tion will be migrated to CIP and incorporated within Progman.
Whenever a new version of either DIS CD xx or CIP xx.x is released this indicates that an
update or addition to a specific coding, programming or diagnostic routine has occurred.
The change can be reflected by a new/updated programming software for a specific con-
trol module, the ability to code a new module or the ability to perform a new retrofit pro-
cedure when installing a new system.

Latest DIS CD xx
The latest information pertaining to the most current version of CD xx that is available and
to be installed on all DISplus, GT1 and SSS units in the workshop can be obtained by
referencing SI B07 02 96, on the BMWcenternet TIS website. The service bulletin pro-
vides clear instructions on loading the latest DIS CD xx and also identifies what modules
in a vehicle require coding after being replaced.
To determine what updates and additions
occurred on DIS CD xx, currently installed on
the DISplus/GT1:

Select “Diagnosis”
Select “Services”
Select “News”
All major changes are viewable in the “New
Features” overview, pertaining to the CD
installed.

7
Coding & Programming Equipment
Latest CIP xx.x
The latest information pertaining to the most
current version of CIP that is to be installed on
all DISplus, GT1 and SSS units in the work-
shop, can be obtained by referencing DCS
messages on the TIS website located at
www.BMWcenternet.com

Select “Dealer Communication System”.

Enter “CIP” as a search criteria under


“Message Subject”.

A listing of the search results is displayed and


the messages pertaining to what the latest
CIP version is, can be accessed.

8
Coding & Programming Equipment
Networks
As the level of technology in our vehicles continues to increase so does the level of tech-
nology that we use in our diagnostic and programming equipment within the workshop.
In order to meet the ever growing demand for more rapid transfer of information we can
no longer have multiple “stand alone” systems, therefore various infrastructures have
been created to allow multiple “stand alone” devices/systems to interact with each other
to share information.
The sharing of information with various control modules in our vehicles has been occur-
ring for quite some time, now we will also be doing this with the diagnostic equipment in
the workshop as well.

Vehicle Bus Systems


In order to make the components used in our
vehicles more efficient we utilize bus struc-
tures (commonly referred to as I-Bus, K-Bus,
MOST Bus, Byteflight, PT-CAN, etc.). By
using bus structures in vehicles, we can
accelerate communication between several
different control modules. Many common
vehicle systems (such as entertainment, safe-
ty, powertrain, etc.) are “stand alone” systems
but also require information from other mod-
ules/systems in order to be more efficient. In
order to obtain the required information the
systems must also be able to simultaneously
communicate without interfering with each
other, which is accomplished by using various
bus structures.
Example:
The ISIS (Intelligent Safety Integration
System) system on the E65 uses the
Byteflight bus structure.
Depending on the equipment level of the E65, the ISIS may consist of 11 satellite com-
ponents (Control Modules/Sensors) that are connected, using fiberoptic cables, to the
SIM (Safety Information Module) which monitors the status of the satellite components.
Since this is a safety system, components need to be activated within a fraction of a sec-
ond in order to be effective, there can not be any processing delays. The SIM is con-
nected to the ZGM (Central Gateway Module) which monitors the activity of the SIM and
will direct information to the SIM and other devices in the vehicles as necessary.

9
Coding & Programming Equipment
Workshop LAN Network
A network is nothing more than a group of devices interconnected so that they can com-
municate with each other. A LAN is a network that is localized to a specific area, such as
a workshop or office.
The bus systems (I-Bus, K-Bus, PT-CAN, Byteflight, MOST Bus, ...) that we have been
using in our vehicles for quite sometime, are nothing more than networks with different
configurations. By looking at the byteflight system mentioned previously, a similarity to a
workshop network can be established.

All workshops are currently equipped with a GT1, DISplus, SSS, OPS, OPPS, Diagnostic
Head, Access Point, desktop computer(s) and printer(s) which can be considered as
satellite components (control modules/sensors). In order for these components to com-
municate with each other, either directly or indirectly, they must be interconnected via a
cable/wire to a common point or switching device. Consider the switching device/hub to
be similar to the SIM, which monitors all devices connected to it and allows the devices
to communicate with each other. The interconnection of these devices results in the
establishment of a network localized to the workshop area thereby establishing a Local
Area Network (LAN) in the workshop.

10
Coding & Programming Equipment
Network Structure
By having the workshop configured to allow the various devices used on a daily basis to
be interconnected/networked with each other, as indicated in the illustration, additional
components can easily be added and online updates can automatically be installed on all
connected devices, as long as they have an approved IP address.
Example: The network that exist in the workshop is not much different than the net-
work structure that is used in our vehicles. In order for control modules to
communicate with each other they must be correctly identified. The identifi-
cation process can be considered to occur as part of the coding procedure
which is done at the end of the assembly process or at anytime a new com-
ponent/module/system is added to the vehicle. By not recoding the vehicle
after adding or removing a module/system, the communication on a particular
bus can be hampered especially if a response form a module that is no
longer installed is expected or a new module transmits data that is not
expected by anyone else on the bus because it is not correctly identified.
The VO for a vehicle can be considered to contain the IP addresses of the
modules installed in the vehicle.
If the devices on the workshop network do not have a rigidly assigned IP address, online
updates to specific devices can not occur. The operation/performance of a network can
be greatly hampered if multiple devices share an address, since the transmitted data is
not able to reach the correct device, it can result in jamming up the operation of the net-
work.

11
Coding & Programming Equipment
Network Connections
When establishing a network which will utilize multiple access terminals/jacks it is recom-
mended that the jacks and cables attached to the specific jacks are numbered and that
the corresponding end of the cable that connects to the router/switched hub should be
numbered as well.
Example: The illustration below shows a basic network structure with no miscellaneous
devices connected, other than a Server and Switched Hub. The cables run-
ning to/from the Switched Hub are all numbered on both ends to make trou-
bleshooting the network easier in the event of a problem with the cabling,
wall jack or Switched Hub connections.

Not having the cable and wall jacks number would be like trying to trou-
bleshoot a problem with an electrical circuit in the vehicle where all the wires
are the same color and the components connected have no pin assign-
ments.

1
9 2

9 1 2
8 8 3 3

7 4
6 5
7
4

6 5

Network Connections

12
Coding & Programming Equipment
Once additional devices are connected it becomes very important that the configuration
information (IP Address, Gateway Address, Subnet Mask and Device Name) is entered
correctly for each device that is connected to the network. Each device must be assigned
a specific/unique IP Address.
It is very important that the IP address not be shared by multiple devices located on the
network, as this can result in “Locking-up” the network, which can have a detrimental
effect on any control module(s) being programmed or coded.

1
9 2

9 1 2
8 8 3 3

7 4
6 5
7
4

6 5

Network Connections

13
Coding & Programming Equipment
Accessing Configuration Information - DISplus/GT1 & Interface(s)

Select “Administration”.

Select “System”.

The screen now displays the network config-


uration information for the device being used
DISplus/GT1.

14
Coding & Programming Equipment
Select “Diagnostic Head”.

Select “Free diagnostic head”.

Note: In order for an interface to be dis-


played it must be connected to a
vehicle and the ignition turned on.

Network configuration information for the


selected interface is displayed.
Example: A red color band will be assigned
to this interface once “OK” is
selected.

15
Coding & Programming Equipment
Workshop Layout

16
Coding & Programming Equipment
Workshop Layout Index

Device # Device Name/Description

1 Software Service Station (SSS)

2 Network Printer

3 Switched Hub (Cisco Switch WS C2950-24)

4 BMW Network

5 GT1

6 Wall Jack/Ethernet Connection point to workshop Network

7 Access Point

8 Deutronic Automatic Battery Charger

9 OPS

10 Workshop PC

11 DISplus

12 OPS Head

13 Diagnostic Head

14 Network Server

17
Coding & Programming Equipment
Workshop Network Components
A LAN currently exists in all workshops to allow the diagnostic equipment (DISplus, GT1,
SSS, OPPS, OPS & Diagnostic Head) to communicate with each other. In order to suc-
cessfully diagnose, code and program a vehicle, it is required to have all equipment con-
nected to the workshop network.
Components used to create a network infrastructure in the workshop consist of:
Access Point
Allows direct wireless access to LAN for GT1 and
Diagnostic Head
OR
Diagnostic head establishes connection to LAN via
wireless communication and thereby can be connected
to DISplus or GT1, which are connected to LAN
Access point is connected directly to LAN.
Symbol - Model Spectrum 24/AP 3020-100
Wall Jack
Connection point for devices such as GT1, DISplus,
Access Point, SSS, Diagnostic Head, OPPS/OPS Head,
Printer and Network Server to Switched Router via
RJ45 cable.

CAT 5 Ethernet Cable with RJ-45 Connectors


Used to establish a connection between:
• Wall jack and Switched Router/Hub
• Wall jack and devices such as GT1, DISplus,
Access Point, SSS, Diagnostic Head, OPPS/OPS
Head and Network Server.

Switched Hub
LAN switched distribution hub for all devices connected
to the network. Routes communication telegrams/mes-
sages to specific devices from specific devices. Allows
multiple devices to communicate with each other with-
out reducing data transfer rate.
Cisco Switch WS-C2950-24

Server
Central computer which controls interface/communica-
tion between all devices on the Workshop LAN and
communication to external networks and internet.
Keystone device for network operation along with
switch/router.

18
Coding & Programming Equipment
Common Terminology

Network
A group of computers that are interconnected with each other and able to communicate
with each other either by transferring data via a wired or wireless connection.

Local Area Network (LAN)


A network that exists within a specific area.
Example: By having all computers, testers and printers in the workshop
interconnected results in a Workshop LAN.

Ethernet
The term Ethernet is a communications protocol used to define a method & speed by
which interconnected devices are able to communicate with each other by either a wired
(twisted pair) or fiberoptic connection.
Common Ethernet communication protocol terms:
10BaseT - Able to transmit data at a rate of 10Mbps for a maximum distance of
100 meters per segment.
100BaseT - Able to transmit data at a rate of 100Mbps for a maximum distance of
1000 meters per segment.
The speed differences are obtained by modifying the method of encoding the data to be
transferred. The maximum distance consist of the distance from switched hub to wall jack
plus length of cable used to connect a particular device. The greater the distance the
greater the chance of signal loss/disturbance.

Ethernet Cable (CAT 5)


A standard used to define an 8 wire cable (4 twisted pair) that is commonly used to inter-
connect various computers in the establishment of an ethernet network. Certified to
transmit data at a maximum rate of 100Mbps.

RJ-45 Connectors
The plastic connectors at the end of a CAT 5 cable, used to connect the cable to
device/computer, wall jack and hub.

Wall Jack
Accepts RJ-45 connectors when connecting devices to the network. Connection point
for devices like DISplus, GT1, SSS, OPPS, OPS, Diagnostic Head, workshop computers
and printer.
Recommendation is that outlet/jack is numbered and the corresponding end of the ether-
net cable connected to the switched hub is numbered as well, to assist in troubleshoot-
ing in the event of a problem.
Example: A wall jack outlet is labeled as #1 the other end of the cable at the hub
should also be labeled #1.
19
Coding & Programming Equipment
Switched HUB
Allows multiple devices to send information over the network at the same time without
slowing down the communication process. A switched hub essentially isolates the two
devices that are communicating, thereby providing each component on the network a
separate connection at the maximum data transfer rate of the network.
Example: A switched HUB is similar to the use of cloverleafs on the highway, traffic
does not need to stop if a change in direction needs to be made, plus traffic
flows smoothly from point to point.
A regular HUB does not provide each component with a separate connection point to the
network but rather a shared connection point. By sharing a connection point the data
transfer rate of the network is reduced when multiple devices try to communicate.
Example: A regular HUB is similar to the use of a 4 way intersection, the smaller the
amount of traffic using the intersection the quicker a car can go through the
intersection and reach its desired destination. The greater the traffic the
longer it will take for a car to reach its desired destination.
The switched hub installed as part of the workshop wiring project is a Cisco WS-C2950-
24.

Network Server
A computer that provides information/data to other computers located on the network. A
server allows computers on its network to access information on another network, such
as the internet. The server is the keystone device that allows computers on its specific
network to access information on another network.
As an example a server can obtain and distribute software updates to all computers locat-
ed on its network, instead of having to physically install the updates to each computer
individually.

Automatic/Online Updates
The ability to connect the network server to the BMW server and check for new software
updates (Diagnostic, Coding & Programming data) then downloads the information to all
computers/equipment located on the network automatically at a specific time.
Example: New updates can be installed on SSS, GT1 and DISplus overnight in order to
have latest data available the next morning.
The application that performs online updates is referred to as JETstream.

Access Point
The access point is a wireless communication device that is able to establish a wireless
connection with a GT1 and/or a diagnostic head and allows them to communicate with
other devices on the network.
Manufactured by Symbol - Model Spectrum 24 /AP 3020-100.

20
Coding & Programming Equipment
Interface Name
The specific name assigned to the device (Ex. OPS Blue A)

IP Address
It is a unique four segment number used to identify a specific device located on a specific
network. The number represents the address of the device on the network and is neces-
sary when communicating with other devices located on the network.
Example: 92.168.100.10
Usually the first three segments are used to identify the network and the last
segment identifies the device. The IP Subnet Mask information generally
defines which segments are needed to identify the network and which identi-
fy the device.
In order for a devices on the network to communicate with other devices on the network
it must know the addresses of those devices. If a print command is sent from a computer
to a printer on the network, the command must be addressed specifically to the desired
printer.
Example: An IP address is no different than your home address, in order to receive a
letter specifically directed to you, your name and address must be correctly
displayed on the letter.
IP addresses are assigned by the network administrator/provider and are rigidly assigned
to the device(s) located within the workshop network, by entering it into the device during
the initial setup.

IP Subnet Mask
This information is used to define which segment(s) of the four segment IP address
specifically identifies the device and which identify the specific network.
Example: 255.255.255.0
Indicates that the first three segments (255.255.255) identify the specific
network that the device is located on. The last segment (0) indicates that
this is the segment that will identify the specific device.
21
Coding & Programming Equipment
Gateway
This information identifies the four segment address of the component located on the
network responsible for communicating from the current network to another network. If
there is no address in this location then a connection to any devices outside of the cur-
rent network can not be established.

Note: The network and device address information must be entered exactly as
defined by the network administrator for your facility, otherwise the
devices can not be accessed.

Workshop Exercise - Device Network Configurations

1. Identify what version of DIS CD xx.x is installed on the DISplus/GT1.

2. Identify what the latest version CIP xx.xx installed on the tester should be and
approximately when it was released.

3. Locate the network configuration information for the devices located on the net-
work in the workshop area.

4. What components of the configuration information are the same?

5. What is the address of the workshop network?

22
Coding & Programming Equipment
Remote Coding, Individualization & Programming Terminals

With the release of CIP 15.0 and the implementation of Progman (see Progman section
for additional information) the DISplus and GT1 will only be capable of performing vehicle
diagnosis and activation/initiation of a Coding, Individualization or Programming task
through the SSS. A special program management tool (Progman) will only allow the
DISplus and GT1 to act as remote terminals to the SSS (regarding Coding,
Individualization & Programming), which means that the SSS will be the single supplier of
Coding, Individualization and Programming information to a vehicle and its respective
control modules. By having all devices (DISplus, GT1 and SSS) connected to the net-
work, the DISplus and GT1 can be utilized to perform diagnosis on a new vehicle after a
request for vehicle programming as an example, has been sent to the SSS for the current
vehicle.
Example: GT1(7) is connected to the LAN via
access point (3) and to OPPS head (6)
which is connected to LAN(4) and
vehicle (5):
1. Diagnosis of complaint is completed and test
module result indicates that a control module
needs to be updated/reprogrammed.
2. Coding and Programming/CIP is accessed on
GT1(7) and a request to program specific con-
trol module on vehicle (5) connected to OPPS
head (6) is made.
3. The SSS (1) takes over the programming
process and begins to reprogram the control
module and recode the vehicle (5).
4. At this point the GT1(7) is free to connect to a
new OPPS/diagnostic head and begin a diag-
nostic routine or initiate another
programming/coding session on a new vehicle.
23
Coding & Programming Equipment
Software Service Station
The Software Service Station (SSS) was
released to all centers for the sole purpose of
Coding and Programming vehicles that can only
be Coded/Programmed using CIP. The SSS is a
dedicated desktop PC, that supplements the
DISplus and GT1 diagnostic systems, since the
SSS is only capable of performing Coding and
Programming it frees up the DISplus and GT1 for
diagnostic functions (refer to SI B07 01 02).
With the release of CIP 15.0 and the implemen-
tation of Progman, the SSS replaces the DISplus
and GT1 (Group Tester One) diagnosis systems as the primary programming system.
The DISplus and GT1 will only be able to send a request to Program or Code a vehicle
directly through the SSS. The SSS performs the actual programming and coding
process. In this configuration the SSS is able to program up to five vehicles at a time and
the DISplus and GT1 are free to be used for other tasks, provided that all devices are
connected to the workshop network and have been assigned specific IP addresses.
As with the DISplus and GT1, data is supplied to the Software Service Station by means
of a CIP DVD-ROM or CD-ROM, additional data can also be provided by online updates
via JETStream.

OPPS/OPS/Diagnostic Head
The OPPS (Optical Testing and Programming System), OPS (Optical Programming
System) and the diagnostic head can all be used with the Software Service Station to
serve as the interface to the vehicle. Optimal programming speed on MOST bus
equipped vehicles is obtained by using the OPPS/OPS head connected to the OBD con-
nector and directly to the MOST access port on E60, E63/64 and newer vehicles.

24
Coding & Programming Equipment
OPPS
The OPPS was first introduced with the E65 and is able to:
• Acts as interface between vehicle and DISplus/GT1/SSS
• Reduce programming time of MOST Bus control modules
• Diagnosis the fiber optic communication system utilized
on the byteflight and MOST bus systems.
• Simultaneously program vehicles equipped with a MOST bus system (except
E65/66 up to 3/05 prod.) via MOST Bus access port and OBD connections.
• Perform vehicle diagnosis, coding and programming on all vehicles equipped with a
MOST bus..
• Communicates via a wired connection(DK LAN cable ) to Network or directly to
GT1/DISplus/SSS

The OPPS is NOT ABLE to perform Diagnosis, Coding & Programming on an


I-bus equipped vehicle.

OPS
The OPS is able to:
• Acts as interface between vehicle and DISplus/GT1/SSS
• Reduce programming time of MOST Bus control modules
• Simultaneously program vehicles equipped with a MOST
bus system (except E65/66) via MOST Bus access port and OBD connections.
• Perform vehicle diagnosis, coding and programming on all vehicles equipped with
a MOST bus.
• Communicates via a wired connection(DK LAN cable ) to Network or directly to
GT1/DISplus/SSS

The OPS is NOT ABLE to perform Diagnosis on the fiber optic communica-
tion system utilized on the byteflight and MOST bus systems nor can it be
used to perform Diagnosis, Coding & Programming on an I-bus equipped
vehicle.

Diagnostic Head
The diagnostic head is able to:
• Acts as interface between vehicle and DISplus/GT1/SSS
• Perform vehicle diagnosis, coding and programming and
Vehicle & Key Memory on most vehicles.
Should not be used for coding and programming
vehicles equipped with
a MOST bus (E60/63/64/65/66...) as processor is too slow.
• Communicates via a wired connection(DK LAN cable ) to Network or directly to
DISplus/GT1/SSS
• Wireless communication to LAN/Workshop Network Connection via Access Point

25
Coding & Programming Equipment
MOST Direct Access Port
The MOST Direct Access port is installed on vehicles equipped with a MOST bus such
as E60/E62/E63.... The port is utilized to allow separate programming of control modules
connected to the MOST bus when using the OPPS/OPS head for Programming &
Coding. By using this port in conjunction with the OBD socket when programming a
vehicle the overall programming/coding time is reduced.
Access to the port differs corresponding to the
model.
For E60 the port (5) is located on the left side of the
glove box (3) behind the strut (2). To access the
connection remove the cover (1) and remove the ter-
minating plug (4) from the cable to allow connection
to the port (5).

Example: Referring to the illustration below - Parallel programming of an E60 using


OPPS head in conjunction with short OBD cable (1) P/N 666 111 and MOST
bus programming cable (2) P/N 663 121 which connects to the MOST
Access Port located in the glovebox. The OPPS is connected to the network
via DK LAN cable 3.

NOTE: The OPS can be substituted for the OPPS.

26
Coding & Programming Equipment
Equipment Configurations
The diagnostic and programming equipment available in the workshop should always be
configured to have the DISplus, GT1 and SSS connected directly to the LAN/Workshop
network. To ensure uninterrupted service/data transmission, it is highly recom-
mended that the radio/wireless connection of the diagnostic head is NOT used
to perform any type of Programming or Coding function.
The normal configuration (when coding or programming) of the DISplus & GT1 to the
diagnostic/OPPS/OPS head are as follows:

DISplus (1) - Connected to network


using SI LAN cable (2)
+ Diagnostic/OPPS/OPS head (3) -
Connected to network using DK LAN
cable (4)
+ OBD or Diagnostic plug cable -
Connecting diagnostic head to vehicle

GT1 (1) - Connected to network using


SI LAN cable (3) and LAN adapter
BT1:1 (2)
+ Diagnostic/Opps head (5) - Connected
to network using DK LAN cable (4)
+ OBD or Diagnostic plug cable -
Connecting diagnostic head to vehicle.

Note: For optimum programming


speed the OPPS/OPS head (5)
can be substituted for the diag-
nostic head:
+ Connect OPPS/OPS head (5) directly
to a network drop via a DK LAN cable
(4)
+ Connect OPPS/OPS head to the OBD
connector using the short OBD cable
P/N 663 111

27
Coding & Programming Equipment
In the event that the workshop network is disabled/down the DISplus and GT1 can still be
used to diagnose a vehicle by utilizing the following configurations:

GT1 (1) - Not connected to network


+ Diagnostic/OPPS head (5) - Connected
to GT1 using DK LAN cable (4) and
LAN adapter BT1:1(2) plus LAN
adapter BT X (3))
+ OBD or Diagnostic plug cable (5)
Connecting diagnostic head to vehicle

DISplus (1) - Not connected to network


+ Diagnostic/OPPS/OPS head (3) -
Connected to DISplus using DK LAN
cable (4) and PC LAN cable (2)
+ OBD or Diagnostic plug cable -
Connecting diagnostic head to vehicle

Note: OPPS/OPS can not be used to perform diagnosis on an I-bus equipped


vehicle (i.e. E32, E36, E38, E46, E53...).

28
Coding & Programming Equipment
Procedure for Coding & Programming
An important prerequisite for ensuring trouble-free programming is the correct prepara-
tion of the vehicle.
A diagnostic procedure must first be performed on the vehicle prior to any pro-
gramming. Programming must not be started before faults in the vehicle elec-
trical system are ruled out.

Correct preparation of the vehicle avoids errors during programming.

The programming procedure may be terminated if a bus signal is generated as the result
of activation of electric loads during programming. The programming procedure should
be repeated following termination. In exceptional cases it may be necessary to replace
the control unit if communication is no longer possible.
Prior to beginning any programming or coding procedure some general guidelines need
to be considered in order to ensure that the process goes as smoothly as possible:

Check Action/Procedure
Engine
Turn off engine, ignition key on - KL15

Manual gearbox/SMG
Transmission in neutral.
Parking brake applied.

Automatic Transmission
- Transmission in position P.
- System temperature below 80°C.
Attention: Do not apply parking brake on vehicles equipped with the
electromechanical parking brake.

Loads
- All electric loads, lights and indicator lights switched off.
- Wipe/wash system switched off. Insure that the wipers can move freely.
Wipers may be activated during programming.
Do Not Block the Wipers.

29
Coding & Programming Equipment
Check Action/Procedure
Diagnosis
Perform quick test.
Using the diagnosis system, rectify any problems before programming and clear
stored fault codes.

Battery
The battery should be sufficiently charged at the start of the programming proce-
dure (12.6 V).

Battery Charger
IMPORTANT: Vehicles must be connected to the Deutronic Automatic Battery
Charger prior to beginning the programming or coding procedure, this is the only
approved battery charger for MOST bus-equipped vehicles.(see SIB 04 11 02).
During the programming or Coding procedure the battery charger must be in the
Power Supply (PS) mode.
Place the charger into the power supply mode by depressing the “MENUE” but-
ton 3 times in rapid succession.
Do not connect or disconnect the charger during programming. The system volt-
age must not drop below 12.6 V during the programming procedure.

DO NOT USE Radio Connection for Programming or Coding!!


Diagnostic head/OPPS head (5) must be connected directly to a network drop to
ensure uninterrupted programming.
The DK LAN cable (4) MUST NOT BE routed through an open window of the
vehicle,leave a door open.

Programming
Check CKM values, also observe individual settings on the vehicle if applicable,
start programming procedure.
Attention: The data status of the Software Service Station must always
be kept updated!

Make sure that no switches, radio etc. are operated during programming as this
could terminate the programming procedure.
DO NOT TOUCH CODING/PROGRAMMING ACTIVE !!

30
Coding & Programming Equipment
Review Questions
1. What vehicles can not be programmed using a diagnostic head?

2. How can an OPPS or OPS Head be used to speed up the coding or program-
ming process? On what vehicles can the procedure not be used?

3. What does it mean when a new DIS or CIP version (CD/DVD) is released?

4. What is the similarity between our vehicle bus structure and a workshop net-
work?

5. What is the importance of an IP address? What can happen if the address is


shared?

6. What are the steps that should be followed prior to starting a Coding or
Programming session?

31
Coding & Programming Equipment
Table of Contents
Coding Plug

Subject Page

Coding Plug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
Coding Plug Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
Ordering Replacement Coding Plug . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4

Coding Plug Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4


Coding Plug Identification - E32/E34 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
From 2/89 to 9/91 Production . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
9/90 Revision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
E32/34 as of 9/91 (1992 Model Year) . . . . . . . . . . . . . . . . . . . . . . . . . . .5
E36 Instrument Cluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
318i/is, 325i/is and M3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
318ti and Z3 Roadster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
Test No. 09 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

Federal Odometer Disclosure Requirement 92-513 . . . . . . . . . . . . . .7

Review Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8

Initial Print Date: 12/04 Revision Date:


Coding Plug

Model: E23, E24, E28, E30, E32, E34, E36

Production: 9/87 - 2002

After completion of this module you will be able to:

• Explain the purpose of a Coding Plug

• Understand the changes made to coding plugs

• Describe how stored vehicle data can be transferred to a new cluster or plug

• Describe the importance of odometer disclosure

2
Coding Plug
Coding Plug
A coding plug is a mechanically keyed or electronically coded device/plug, that can open
or bridge circuits in a particular component to allow it to operate differently dependent on
the type of plug installed/inserted.
BMW used a mechanical coding plug which simply opened
or bridged circuits to assign market specific data to the
instrument cluster of the E23, E24, E28 and E30 vehicles.
With the introduction of the E32 in 1988 and the E34 in
1989, electronic coding plugs were utilized in the instrument
cluster.
The change to an electronic coding plug which allowed market specific data to be
assigned to the instrument cluster also contained Non-Volatile Random Access Memory
(NV-RAM), which provided an ability to retain vehicle specific data in the plug such as:
• Vehicle Identification Number
• Accumulated Mileage
• Service Indicator Information
• Coding plug number
• Fuel Tank Size data
• Etc, Etc.
By using a plug that is able to store data, the
instrument cluster can be replaced without
loosing vehicle mileage, unless the coding
plug is damaged.
With the introduction of vehicles like the E31 and E38 the instrument cluster no longer
utilizes a coding plug since it receives most of its input signals directly from a control
module, EKM (E31) or IKE (E38), this allows vehicle data to be directly stored in the con-
trol module and the instrument cluster is no longer coded. For these vehicles and newer
models, market specific data is stored in the control module (EKM or IKE). By coding
these modules by way of ZCS coding (refer to ZCS coding) market specific data is
assigned/released to the control module.

Coding Plug Identification


Each coding plug features a stored 5-digit numerical code
that varies between model/equipment, etc.
The code can be read out through the instrument cluster
display by pressing the odometer reset button and turning
the ignition switch to KL R. The coding plug number will be
display in the instrument cluster matrix.
3
Coding Plug
If this is no longer possible, the coding plug must be removed in order to read the code
on the label of the coding plug.

Ordering Replacement Coding Plug


Replacement coding plugs for the redesigned E32/E34 cluster are clearly identified in
Parts Bulletin 62 01 02. The coding plugs are received pre-coded and installing them
automatically codes the cluster.

The first digits of the 5-digit


code is changed on coding
plugs when they are replaced.

Note: It is not possible to input the mileage reading, the service interval status
and the chassis number into the replacement coding plug.

Coding Plug Overview


Since the introduction of the E32 several versions of instrument cluster coding plugs
have been introduced, this section will provide an overview of the different versions, plus
provide identification and coding information.

Coding Plug Identification - E32/E34


The E32/E34 Instrument cluster coding plugs progressed through three variations of
design.
Start of production up to 2/89.
The original E32/E34 instrument cluster coding plug
was installed in the wiring harness connector (X16)
which plugged into the instrument cluster. This plug
contained all of the vehicle specific coding data for the
instrument cluster and retained accumulated mileage
and service interval information.
In the event that the instrument cluster must be
replaced the coding plug is reused with the new clus-
ter. By reusing the old/original plug the mileage in the
odometer does not change, since the coding plug is
able to retain the information.
• If the coding plug must be replaced, the total
mileage and Service Interval information will be
lost. Refer to SI 62 02 88 (1597) for information
regarding coding plug replacement.
4
Coding Plug
• Replacement coding plugs pre-coded by part number and are available from the
parts department. Only order replacement instrument cluster coding plugs as indi-
cated in Parts Bulletin 62 01 02 .

From 2/89 to 9/91 Production


The E32/E34 instrument cluster and coding plug were redesigned in 2/89. As a result of
this redesign the coding plug became an external component and plugged directly into
the back of the instrument cluster, no longer part of the X16 connector.
Even though the plug can be removed without disconnecting the harness, all power must
be disconnected from the cluster prior to removal, to prevent data loss from the coding
plug. Reference SI 62 06 91 (3284) regarding coding plug removal.

9/90 Revision
In 9/90 the cluster was slightly redesigned again to address changes in the fuel gauge
and some minor physical changes. The electronics of the cluster as well as the coding
plug were upgraded considerably.
The coding plug and the instrument cluster are not compatible with the earlier redesign.
The printed circuit board and the coding plug are colored blue for distinction over the
components of the earlier redesigned cluster.
The new blue coding plug is also keyed differently to prevent unintentional exchange with
the earlier coding plug. Reference SI 62 01 91 (3210) for additional information.

E32/34 as of 9/91 (1992 Model Year)


After 9/91 production, the instrument cluster coding plug can be coded using the ZCS
function within CIP by selecting the specific module via the DISplus/GT1/SSS . The
physical characteristics of the coding plug did not change.
A replacement uncoded coding plug (P/N 62 11 8 359 368) must be coded after installa-
tion into the instrument cluster, refer to ZCS coding section in this manual.
A precoded coding plug (P/N 62 11 8 359 369) is available for this cluster as well. When
ordering include with your order the following information:
• ZCS code for the vehicle
• VIN for the vehicle

E36 Instrument Cluster

318i/is, 325i/is and M3.


The instrument cluster for these vehicles does not utilize a coding plug. The entire clus-
ter is coded model specific, by using the ZCS coding procedure in CIP by selecting E36.
Recently, a new procedure has been made available that transfers the accumulated
mileage and service interval data from a defective instrument cluster into a new replace-
ment cluster for these vehicles.

5
Coding Plug
This alternative procedure is not meant to replace the existing procedure utilizing the
Federal Odometer Disclosure label. It is only meant for sensitive “dissatisfied customer”
situations. Reference SI B62 02 95 for additional information.

318ti and Z3 Roadster


These vehicles are equipped with an instrument cluster that is not connected to the diag-
nostic link and therefore can not be coded using ZCS. Since the cluster can not be
coded, these vehicles require a coding plug for vehicle specific coding.
Like the E32/E34, the coding plug is able to store the accumulated mileage and service
interval information. In addition to storing the data on the coding plug the instrument
cluster is also able to internally store the data on an EEPROM (Electrically Erasable
Programmable Read Only Memory), as redundant back. If the cluster main processor or
coding plug need to be replaced, the mileage and SI Indicator data can be transferred to
the new component using the clusters test step procedure #9. higher value overwrites
the lower.

Test No. 09
DISTANCE READING Test - 09 allows the total stored mileage to be updated if one of
the storage components has to be replaced. The test step will be used if the manipula-
tion dot is illuminated in the cluster display. This test step will identify which component
has the lower mileage.
Display Example:
012654 I - Indicates the mileage in the internal EEPROM is lower than the mileage
stored in the coding plug.
000325 E - Indicates the mileage in the external coding plug is lower than the total
mileage stored in the internal EEPROM.
Pressing the reset button for 4 seconds will over write the lower mileage with the higher
mileage and cancel the manipulation dot. The SI data will also be transferred at the
same time.

To remove the coding plug from the instrument


cluster first remove the snap off cover. Pull the
coding plug from the connector in the cluster.

6
Coding Plug
Federal Odometer Disclosure Requirement 92-513
The Federal Odometer Disclosure Requirement 92-513 states that, whenever an instru-
ment cluster component is replaced that brings the odometer back to 0 (coding plug), the
mileage prior to its replacement along with the date that the replacement occurred must
be recorded on the left door frame of the vehicle. Reference SI B62 01 95 (4172) for
additional information.

A permanent label to record this information is included


with every coding plug (except E36/5 and E36/7) that is
ordered from the parts department.
Additional labels can be ordered separately under Part
Number 89 89 1 000 500.

It is the responsibility of the person


making this replacement to record this
information on the vehicle and in the
Owner’s Service Warranty Information
Booklet.

Strict compliance with this requirement must be followed through with the following
vehicles if mileage is reset to 0:
• E32/E34 All instrument Clusters
• E36 - 318i,is, 325i,is and M3. Reference SI B62 02 95 regarding alternative
E36 odometer reading transfer.

Workshop Exercise

Locate and review all SIBs referenced in this module using TIS.

7
Coding Plug
Review Questions
1. What is a coding plug?

2. Can coding plugs be interchanged from model to model? If not, why?

3. What procedure must be followed if vehicle mileage can not be updated/


re-entered after replacing a coding plug?

4. Are coding plugs still used in current production vehicles? If not, what replaced it?

8
Coding Plug
Table of Contents
Variant Coding

Subject Page

Variant Coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
Variant Code Identification Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
Variant Code Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
Variant Code Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
Adopt a Variant Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
Manually Entering a Variant Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8

Review Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9

Initial Print Date: 12/04 Revision Date:


Variant Coding

Model: E24, E28, E30, E32, E34, E36

Production: 3/87 - 12/95

After completion of this module you will be able to:

• Understand the purpose of variant coding

• Identify control modules/systems that must be variant coded

• Interpret a variant code

• Locate a variant code

• Variant code a control module

2
Variant Coding
Variant Coding
A Variant Code is another means by which market specific application data can be
released/assigned to a control module, this process allows one base control module to be
utilized for different market applications.
The variant code is a 4 digit hexadecimal (alpha-numeric) code that is entered into a con-
trol module as part of the coding process. By entering a valid code into the module a set
of operational data (characteristic maps) specific to the code entered is assigned to the
operating program of that control module. The operational data and code are semi rigidly
assigned, meaning that if a new code is entered, a different set of data is assigned to the
program.
Variant coding is only used on engine control modules. Engine control modules which
utilize variant coding were first introduced into production vehicles as of 3/87 production
with Motronic M1.1 (Engine Control Module ECM/DME). Refer to TRI B120186 for
more information.
Variant coding is only used on Engine Control Modules with version M1.X.
DME Version Series Cyl. Engine Year
M1.1 E28/E30 6 M20/M30 3/87 - 8/92
M1.2 E24/E28 6 S38 87 - 88
M1.3 E34 6 M20/M30 6/87 - 9/90
M1.3 E34 6 M30 6/88 - 12/92
M1.3 E32 6 M30 3/87 - 7/92
M1.7 E30/E36 4 M42 3/90 - 12/93
M1.7.2 E36 4 M42 1/94 - 12/95

Using the DISplus/GT1/SSS with the latest CIP programming software contained within
Progman, allows the technician to: Original Replacement

• Code a new, uncoded control module. DME DME

• Recode a previously coded control module.


The variant code is entered into the control
module either by:
• Adopting the existing code from the defec-
tive DME control module (if diagnostic
communication is possible).
• Manually entering the variant code via the
Hassermen Bsaljeoi Gllufpjenr Rusdljfoiv

BMW Diagnosis and information system


TIS

Nerucvleu

-OR-
Frluelkdmvdk

Wsdkurovcn

keypad displayed on the screen of the


kjdfkjorir

Enter the code


DISplus/GT1/SSS. Hassermen

Note: M1.X DME control modules can only be coded up to eight (8) times. The
GT1/DISplus will display the remaining number of times the control mod-
ule can be recoded.

3
Variant Coding
If variant coding of an M1.3 control module for an M20 engine is not possible, Reference
SI B12 06 89 (1878) for more information. The cause may be that Pin 18 (DME Code
Link) of the 20 pin diagnostic connector may be backed out of the connector preventing
communication between the tester and DME control module.

Variant Code Identification Display


The variant code for a DME M1.X control module can be accessed in three ways:
• Electronically via DISplus or GT1:
- DME Control Module Identification screen
- Select “Programming” then “DME variant code”, installed variant code is dis-
played.
• DME control module variant code label
• SI B13 02 90 (3009)
The quickest and most accurate way to access the variant code of the installed DME is
by viewing the DME Identification page using the DISplus or GT1.

Troubleshooting by means of
perciptible symptoms: "#"
Version: DME M1.7.2
E30/E36 M42B18
with oxygen-sensor control
EH unledaded Premium
ECE/EG/S/CH/A/US
Code 821e
Bosch Hardware Number: 0261203282
Bosch Software Number: 1267357626
BMW Hardware Number: 1247228
BMW Software Number: 001
Production code: 467

If a control module malfunction is suspected cross reference the BMW and Bosch part
numbers in the display with the installed variant code. Problems can occur if:
• The correct variant code is installed in the wrong control module.
• An incorrect variant code is installed in the correct control module

4
Variant Coding
Variant Code Structure
The four digit structure of the variant code consists of a 16 bit binary code which con-
verts to a 4 digit hexadecimal code. Each hex character provides information pertaining
to specific functions, characteristic maps and vehicle data.

The information from the variant code is used to define the the operational data to be
assigned to the operating program of the module.
Each hex digit has a binary equivalent that provides four 1s or 0s which results in a total of
16 bits of information (or choices) per hexadecimal digit.

Under no circumstances should the variant code to be changed from the assigned num-
ber for the vehicle. Erratic engine operation and possible engine damage may result.

5
Variant Coding
Variant Code Procedure
In the event that an M1.x control module needs to be replaced or recoded the process
can be accessed through Progman with CIP 15.0 or higher.
To perform the procedure from CIP the Model
series must be selected.

Then select the body (E32, E36 ...)

Select: “Progammierung”

Advance screen to the right two times to enter


the programming/variant coding selection screen.

From the “Selection” screen:


Select: "DME Variant Code"
Select: "Exchange Control Unit"
Select: The Engine version installed on the connected vehicle to be coded Ex. "M40/42/43"

The following steps are based on the selection of “M40/42/43”:


"M40/42/43 4-Cyl. has been selected ? Y/N”
Select: “Y”
"Is the vehicle fitted with a DME M1.7.3 (M43 engine from 9/95) ? Y/N”
Select: “N”
Select: 1 "New Coding"
Select: 1 "Adopt code from old control unit" and follow the procedure indicated once selection is made.
OR
Select: 2 "Enter code manually" (See table for Variant Code) and follow the procedure indicated once
selection is made.
6
Variant Coding
If DME M1.X control module replacement is required, determine which method of variant
coding you will need.
• Adopt variant code from existing control module
• Manual input of variant code from control module label

Note: For vehicles produced with the M42B19 engine (M1.7.2 Engine Control
Module) a replacement EPROM was made available for vehicles produced
1/94-12/95 to address a service issue ,refer to SIB 12 09 95. Since the
control module for this engine requires a variant code in order to assign
the correct operating data to the program a variant code must still be
assigned to the module upon installing the EPROM.

Adopt a Variant Code


The preferred method of coding a replacement module is by “Adopting” the code from
the old module, since this method prevents accidentally entering the wrong code which
may occur when trying to manually enter the code. If the control module cannot commu-
nicate on the diagnostic link the manual input method will be necessary (refer to Manually
Entering Variant Code).

7
Variant Coding
Manually Entering a Variant Code
The process of manually entering a variant code should only be utilized when it is not
possible to communicate with the Engine Control Module (DME) via the DISplus or GT1.
The variant code to be entered can be taken from the label of the problem control mod-
ule and checked against the listing of variant codes provided in SI B13 02 90 (3009)
prior to entering the code into the new module.

8
Variant Coding
Review Questions
1. What is the purpose of variant coding?

2. What type of control modules need to be variant coded?

3. What type of information does the variant code contain?

4. What happens when a variant code is assigned to a module?

9
Variant Coding
Table of Contents
Coding Code

Subject Page

Coding Code (Code Number) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3


Code Number Identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
Coding Code Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
Ordering Pre-Coded Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4

Review Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

Initial Print Date: 12/04 Revision Date:


Coding Code

Model: E32 and E34

Production: 10/90 - 9/91

After completion of this module you will be able to:

• Understand what a coding code is

• Locate the coding code label

• Access the coding procedure from CIP

2
Coding Code
Coding Code (Code Number)
E32 and E34 vehicles produced from 9/90 to 10/91 were not ZCS compatible. For this
limited range of production a coding code is required in order to properly code the follow-
ing control modules:
• IHKR 2 & 3
• EDC III
• DWA
All other replacement control modules (except DME) within this production range are pre-
coded at the factory.
The coding code is a single digit. Like variant coding, the code is entered via the
DISplus/GT1/SSS. By entering a valid code into the module a set of operational data
specific to the code entered is assigned to the operating program of that control module.

Code Number Identification


Along with the VIN, the Code number for the
installed control module(s) is printed on a label,
located on the underside of the fuse box cover.
Additional labels are available from the parts
department under P/N 01 99 9 784 735

Coding Code Procedure


With the original module still installed in the vehicle, select the Coding/Programming
function which can be accessed through Progman with CIP 15.0 or higher using the
DISplus/GT1 or SSS.

1. From Progman establish a connec-


tion to the interface connected to
the vehicle and access CIP
To perform the procedure from CIP
the Model series must be selected
(3 series, 7 series ...)
Then select the body
(E32, E36 ...)

3
Coding Code
2. Select “Codierung ZCS/FA”
(Advance screen to the right two times to
enter the selection screen.)

3. Select: Specific model series


4. Select: “Recoding” or
“Coding Code”
5. Select: “Replacement part”
6. Select: Specific system/module to be
coded
7. Turn off ignition and remove the old
module, install new module and turn ignition on.
8. Advance the screen and enter “0” plus the number located on the label
of the module
9. Confirm entry
10. If the displayed number is correct confirm and coding will begin
A message “Coding Complete” will be displayed when finished coding.

Ordering Pre-Coded Modules


Pre-coded control modules are available from the parts department and requires the fol-
lowing information:
• Part number” Basic Control Module”
• VIN of vehicle for which it is needed
• The “Code Number” indicated on the module

Workshop Exercise

Access the initial start screen in CIP for performing the Coding Code procedure.

4
Coding Code
Review Questions
1. What control modules on the early E32 & E34 require a coding code?

2. What is a coding code used for?

3. How can the coding code procedure be accessed with CIP?

5
Coding Code
Table of Contents
Vehicle Coding Information

Subject Page

Vehicle Coding Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3


Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

ZCS Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
ZCS Stored Location in Vehicle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
ZCS Identification / Display . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
Accessing Stored ZCS Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
Accessing ZCS Information Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
ZCS Codable Control Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9

Vehicle Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11

Review Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14

Initial Print Date: 12/04 Revision Date:


Vehicle Coding Information

Model: All

Production: All

After completion of this module you will be able to:

• Understand the purpose of the Central Coding Key (ZCS code)

• Locate/view the ZCS information and determine where it is stored

• Identify what modules in a vehicle are codable via ZCS

• Understand the purpose of a Vehicle Order (VO/FA)

• Access and explain the information contained within the vehicle order

2
Vehicle Coding Information
Vehicle Coding Information

Introduction
As part of an ongoing process to reduce the need
for country, model and option specific control GM 16430000P
modules, BMW began to utilize a multi digit vehi-
cle coding structure referred to as a Central SA 0000422005009CC0U
Coding Key (ZCS) and later changed to a struc- VN 000001E116K
ture referred to as a Vehicle Order (VO/FA).
The Central Coding Key (ZCS) is a unique 37 digit (originally a 48 digit) code that con-
tains specific model, country variation and individual equipment/option information for a
vehicle.
During the manufacturing process of a vehicle, the ZCS code is created to identify the
specific vehicle being built and to properly code the control modules installed during the
assembly process once the vehicle reaches the end of the line. To ensure that the ZCS
code can be retrieved once the vehicle leaves the factory it is stored in one or two control
modules, depending on the model.
ZCS is often referred to as a “key” since it is able to automatically “unlock” or ”activate”
specific functions of a new control module or can be used to recode a used control mod-
ule to be compatible with the specific vehicle it has been installed into. With the intro-
duction of the E31 the ZCS information was used for the first time as a coding key for
replacement vehicle control modules, this ensured that the replacement modules would
be coded to the required specification of the vehicle.
As the number of options & accessories available for installation in a vehicle increased, an
alternative to the ZCS code was introduced on 9/01 production E46 vehicles. The ZCS
system was replaced with a system known as the Vehicle Order (VO/FA). The VO is a
straight forward listing of vehicle specific information including a list of the option codes
pertaining to the systems or equipment installed in the vehicle and is used in the same
manner as the ZCS to properly code replacement or additional modules.
Regardless of which structure is utilized on a vehicle, codeable modules have no limit as
to the number of times that they can be recoded.

3
Vehicle Coding Information
ZCS Structure
The 37 digit structure of the ZCS is subdivided
into three segments. The segments represent GM 16430000P
specific information about the vehicle.
SA 0000422005009CC0U
Each segment ends with a checksum “digit”.
A checksum is utilized by the coding software to VN 000001E116K
detect unacceptable/erroneous manually entered
coding information.
The information/digits of the ZCS code reflects the options installed in the vehicle and
should never be changed manually unless it is necessary for special recoding functions
such as:
• Canadian market vehicle being moved to the US
• Retrofit installation of an accessory system (ie. CPT9000 phone system
or BMW ULF system refer to SI B840103 & B84 08 04)
If a modification needs to be made to the ZCS structure and there is no information avail-
able in a service bulletin then the BMW Technical Hotline should be contacted for assis-
tance by submitting a PUMA case, requesting a modified ZCS code.
Each portion of the ZCS provides specific information regarding that vehicle:
GM (Grundmerkmale) - Identifies the “Basic Features” of the vehicle and contains
9 digits that are used to describe:
• Vehicle type (E36, E38, E39 ...)
• Specific body style of the vehicle (Sedan, Coupe ...)
• Country specific coding identification (US, UK, ECE ...)
• Unique equipment that affects the basics of the vehicle
(with sunroof, without sunroof, wheel size ...)
• Basic language variant (English, Spanish, German ...)
SA (Sonderausstattungs) - Identifies the “Special Equipment” of the vehicle and contains
17 digits that describe what features/functions are installed in
the vehicle, such as:
• Power Windows or Manual windows
• Power Door Locks or Manual Door Locks
• Power Sunroof or Manual Sunroof
• Power Convertible Top or Manual Convertible Top
• Phone Pre-wire
The SA segment is configured to provide a total of 64 possible number combinations
(option groups) for all series vehicles worldwide. The information is modified whenever
a new component/accessory is added to the vehicle via a retrofit coding procedure.
4
Vehicle Coding Information
VN (Versionsnummer) - Identifies the “Version Number” of the vehicle and contains 11
digits that are used to describe:
• Series specific coding data that are not reflected in the GM or
SA segments. This includes, model year dependent data,
software and hardware versions of the control modules
installed, coding instructions, etc.
The VN is displayed as 40 possible combinations of digits. A deliberate change in the
VN will result in erroneous coding data being used when recoding a module or coding a
replacement module which will affect the proper operation of a control module(s) coded
with an incorrect VN.

Note: In its original form the ZCS was displayed as a 48 digit code containing a
fourth segment, the AM (Antriebsmanagement) which identified
Powertrain management information specific to the vehicle, however this
information was eliminated and was not needed for coding a control
module.

5
Vehicle Coding Information
ZCS Stored Location in Vehicle
The ZCS is stored in the vehicle to simplify the coding procedures when a module needs
to be recoded or a replacement module needs to be coded. Depending on the vehicle,
the ZCS information is stored in the following locations:

Vehicle Model Module Vehicle Model Module


E31 All EKM E39 All Instrument Cluster/EWS

E32 All Instrument Cluster E38 All Instrument Cluster/EWS

E34 All Instrument Cluster E46* All Instrument Cluster/LSZ


318i/is
E36 325i/is Instrument Cluster E52 All Instrument Cluster/LSZ
M3
EWS II
318ti
E36 As of 9/98: E53 All Instrument Cluster/LSZ
Z3
Instrument Cluster/EWS

* The E46 switched to a Vehicle Order (VO) data structure in 9/01.


The procedure to code control modules that utilize the ZCS information can be per-
formed via the DISplus/GT1 or SSS using Progman with CIP 15.0 or higher and access-
ing the “Codierung ZCS/FA” function. Always reference service bulletins for information
regarding the latest coding version and any possible software errors.
When coding a ZCS codable control module the coding program in CIP automatically
searches the stored location, based on the VIN, and codes the selected module accord-
ing to the information provided in the ZCS code.
On later production vehicles the ZCS information began to be stored in two locations,
referred to as redundant data storages, this insures that the information is always available
in the event the primary device storing the data fails.

Note: On early production vehicles without redundant data storage, if the mod-
ule being coded or recoded is the module that stores the ZCS informa-
tion, then the vehicles ZCS information must be obtained from the label
located on the vehicle or electronically accessed from the module and
printed out then entered manually via the input screen on DISplus/GT1
or SSS.
For vehicles with redundant data storage the coding of the module stor-
ing the data is performed automatically using the information stored in
the “back up” module.

6
Vehicle Coding Information
ZCS Identification / Display
The ZCS information for a specific vehicle can be obtained by:
• Accessing the control module(s) that electronically stores the information,
using the DISplus/GT1 or SSS
• Locating the ZCS label affixed in the vehicle

Accessing Stored ZCS Information


From Progman establish a connection to the
interface connected to the vehicle and access
CIP.

To perform the procedure from CIP


the Model series must be selected
(3 series, 7 series ...).

Then select the body (E32, E36 ...).

Select “Codierung ZCS/FA”.

Then advance screen to the right two times to


enter the vehicle series selection screen.

Example:

Select vehicle series (i.e “E36 Series”).

7
Vehicle Coding Information
Select “Display coding code and code for
printout”.

ZCS Information for vehicle is displayed along


with the stored location.

Accessing ZCS Information Label


On earlier production vehicles the ZCS label is affixed to the
vehicle in a specific location depending on the model:
• E36 - Under rear seat; center area or next to left send-
ing unit of fuel tank.
• Z3 Roadster - In Trunk; under carpet on floor, forward
of tool kit.
• E31/32/34 - In fuse box cover
• E38 - In E-Box cover

Note: As of 9/98 production the ZCS label was eliminated from the vehicle.
Some older vehicles will have identification labels containing an AM
segment, this information is not needed for coding or recoding a control
module on that vehicle.

8
Vehicle Coding Information
ZCS Codable Control Modules
Control modules located in a vehicle that are ZCS codable are listed/identified by the
“Codierung ZCS/FA” function contained in CIP.
A list of the modules specific to the model can be accessed as follows:
From Progman establish a connection to the
interface connected to the vehicle and access
CIP.

To perform the procedure from CIP


the Model series must be selected
(3 series, 7 series ...).

Then select the body (E32, E36 ...).

Select “CodierungZCS/FA”.

Then advance screen to the right two times to


enter the vehicle series selection screen.

Example:

Select vehicle series (i.e “E36 Series”).

9
Vehicle Coding Information
Select “Recode”.

Then advance screen to the right.

Displays control modules that are ZCS


codable.

Workshop Exercise

Access the ZCS coding information on an E36, E39 , E46 or E53. and identify
where the information is stored.
Determine which modules in an E36, E39, E46 or E53 are codable.

10
Vehicle Coding Information
Vehicle Order
In 9/01 the ZCS vehicle data structure on the E46 was replaced with what is referred to
as the Vehicle Order (VO) or Fahrzeugauftrag (FA). The vehicle order structure is utilized
on all new models introduced/produced as of 9/01, such as E65/66, E60, E63/64, E83,
E85 etc. Models such as E36, E39, E52, and E53 produced after 9/01 continued to be
manufactured using the ZCS structure until production of the model is complete.
Vehicle Order for E46 as of 9/01 Production:

Vehicle Order for New Models as of 9/01 Introduction:

11
Vehicle Coding Information
The vehicle order format contains information pertaining to the production of a specific
vehicle such as:
Series Type - (E46, E65, E60, etc.)
Time Criterion - Identifies date the options/hardware equipment available for installation
into the vehicle was standardized/”locked”. This information does not
refer to the production date of the vehicle. A problem with coding or
programming may occur if a module or option based on a newer or
older time criterion date is installed into the vehicle.
Model Code (Basic Type) - Base level from which the vehicle is “created/built”.
Paint Code - Identifies the color of the vehicle at time of production.
Upholstery Code - Identifies the type of upholstery installed in the vehicle at time of
production.
Assembly Number - Identifies the programmed part number for powertrain (Not used)
E-Wort - Identifies additions/options added to the vehicle that are not part of standard
SA codes/options
HO-Wort - Identifies options installed at Center/Dealer using 3 digit option code
(Currently not used.
Installed Option/SA Codes - Listing of accessories & equipment options installed in
the vehicle.
The information contained in the vehicle order is used to identify the module(s)/system(s)
that are/should be installed in the vehicle and also what if any control modules need to be
updated if a new system/option is added or removed to/from the vehicle to ensure proper
compatibility with the devices installed in the vehicle. The information contained in the
vehicle order such as installed options, is modified whenever a new component (mod-
ule/system) is installed and coded to the vehicle. If the new component is not properly
coded to the vehicle the SA listing is not updated and problems can be encountered
whenever a measures plan for the vehicle is created, vehicle needs to be recoded or
VKM/Individualization functions are to be modified.
A listing of the components that need to be updated is provided whenever a measures
plan is generated (refer to CIP module for additional information).

12
Vehicle Coding Information
Example: Information contained in the VO of an E60

Series Type: E60


Time Criterion: Identified as 1203 indicates the date (month/year) that the list of
available options/hardware available for installation into the vehicle
was standardized/”locked”. Although the vehicle referenced was
produced in 6/04 the time criterion of 1203 is still valid and indi-
cates that no changes were made to the available option pack-
ages/hardware available for installation into that specific model
since 1203.
Model Code: Identified as NA53 indicates the vehicle and engine type plus pro-
vides information pertaining to the country the vehicle was built for
(i.e. LH or RH drive). If an automatic transmission is installed it will
be considered an NA63, however the model code contained in the
VO will always reflect the base level which is a manual transmis-
sion vehicle.
Paint Code: Identified as 0475 indicates the color of the vehicle at time of pro-
duction.
Upholstery Code: Identified as LCBA indicates the type of upholstery installed in the
vehicle at time of production.
Installed Option/
SA Codes: Listing of accessories & equipment options installed in the vehicle
1CA - Selection COP relevant vehicles
205 -Automatic transmission
248 - Steering Wheel Heating
2RA - LT/ALY wheels

13
Vehicle Coding Information
Review Questions
1. What is the purpose of a ZCS code in a vehicle?

2. Where is the ZCS code stored in a vehicle?

3. How can you determine what modules in the vehicle are codeable via the ZCS
code?

4. What is the purpose of a Vehicle Order what information does it contain?

5. When was the VO structure introduced?

6. Which models utilize a VO structure?

7. How can the VO information of a vehicle be accessed?

14
Vehicle Coding Information
Table of Contents
EPROMs & EEPROMs

Subject Page

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

Engine Control Module EPROM Programming . . . . . . . . . . . . . . . . . .3


M3.1 Engine Control Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
M3.3 & M3.3.1 Engine Control Modules . . . . . . . . . . . . . . . . . . . . . . . . . .4

Engine Control Modules Flash (EEPROM) Programming . . . . . . . . .5

Transmission EPROMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

Transmission Control Module Flash (EEPROM) Programming . . . .6

When is EPROM Replacement and/or Programming Necessary? . .7


How is a Replacement EPROM or Control Module Determined . . . . . .7
DME/ECM EPROM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
TCM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
Programming Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
Determination Process for DME EPROM . . . . . . . . . . . . . . . . . . . . . . .8
Automatic Determination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
Manual Determination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9

Review Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

Initial Print Date: 12/04 Revision Date:


EPROMs & EEPROMs

Model: E31/32/34/36/38/39

Production: All

After completion of this module you will be able to:

• Identify Engine & Transmission Control Modules for which EPROMs can be
replaced

• Understand why EPROM’s do not always need to be replaced

• Explain what “Flash” programming means

• Determine what EPROM or replacement part number needs to be installed

• Understand the replacement procedure

2
EPROMs & EEPROMs
Introduction
Early Engine and Transmission Control Modules used EPROMs (Electrically
Programmable Read Only Memory device) to store operational programs and operating
data specific for the application that they were used for. Since the operating program and
associated data is installed at the factory during the vehicle assembly process updates
could not be provided for vehicles once they were programmed and left the factory floor.
In order to install a new or updated program (DME or TCM) the module needed to be
replaced. Eventually it became possible to replace EPROMs and/or update them which
dramatically reduced the cost of updating a module and a vehicle.

Engine Control Module EPROM Programming


With the introduction of M3.X & DME/ECM control modules it was no longer necessary
to replace the entire control module in order to install updated engine operating programs
and/or data.

DME/ECM Version Vehicle Application


E36 - 325i/is (up to 8/92)
M3.1
E34 - 525i (up to 8/92)
E31 - 840Ci (9/93 - 12/95)
M3.X M3.3
E32 - 740i/iL (9/92 - 8/94)
E34 - 530i/it & 540i (3/93 - 12/95)
E38 - 740i/iL (9/94 - 12/95)
E36 - 325i/is & M3 (as of 9/92)
M3.3.1
E34 - 525i/it (as of 9/92)

M3.x engine control modules allow EPROMs:


• To be removed & replaced
• Programmed or updated depending on control module version

M3.1 Engine Control Modules


Beginning with M3.1 DME/ECM control modules, BMW introduced the ability to program
an EPROM using BMW diagnostic equipment. On the M3.1 control module the original-
ly installed EPROM needs to be removed from the control module and a new partially
blank EPROM installed in order to update the existing control module.

3
EPROMs & EEPROMs
For the M3.1 systems the replacement EPROM that is installed does not contain all the
data necessary for the engine to operate, it is a “basic” EPROM that only contains some
basic data referred to as “resident data” which helps identify the module and allows the
diagnostic equipment to determine what program and associated data needs to be
installed/loaded.
For specific information refer to EPROM replacement SI B12 08 95(4274).

M3.3 & M3.3.1 Engine Control Modules


As later versions of engine control modules (M3.3 & M3.3.1) were introduced it was not
always necessary to replace the EPROM in order to perform an update to the module.
The EPROMs installed on the newer systems are larger and allow additional information
to be loaded without having to install a new EPROM. In the event that the size of the
update exceeds the space available on the installed EPROM or an update was previously
performed, then the installed EPROM will need to be replaced. For specific information
refer to EPROM replacement SIB 12 08 95(4274)

For the M3.3 & M3.3.1 systems the replacement EPROM that is installed does not con-
tain all the data necessary for the engine to operate, it is a “basic” EPROM that only con-
tains some basic data referred to as “resident data” which helps identify the module and
allows the diagnostic equipment to determine what program and associated data needs
to be installed/loaded.
4
EPROMs & EEPROMs
Engine Control Modules Flash (EEPROM) Programming
At the end of 1995 new variations of DME/ECM control modules were introduced that no
longer contained a removable EPROM but instead contained a soldered in EEPROM. An
EEPROM is an Electrically Erasable Programmable Read Only Memory device, which
means that programs & data stored on the chip can be electrically erased and replaced
with new/revised programs or data. In order to erase the data on the chip a short duration
low level voltage/charge is applied to a pin on the EEPROM and the stored data is erased,
hence the name “Flash”. Once the data is erased new data is loaded.
By using a newer technology, these control modules have the ability to be updated a total
of 13 times before they need to be replaced.
Theoretically an EEPROM can be erased and reprogrammed more than 13 times, BMW
set the number to 13, since a point will be reached where the update being installed may
no longer be compatible with the hardware of the installed module which could result in
erroneous operation. If the program is not compatible with the hardware version of the
module, the program used to determine the correct update for the module will indicate
that the module will need to be replaced before the update can be performed.
The reference to Flash programming is a result of the technology used to erase the
EEPROM prior to installing a new program and or data.
The control modules listed identify when EEPROMs were first introduced into the
DME/ECM:

DME/ECM Version ENGINE Vehicle Application


E36 - 318i/iA (as of 12/95)
M44
E36 - Z3 (as of 1/96)
M5.2 E39 - 540i/iA (as 3/96)
M62 E38 - 740iLA (as of 12/95)
E31 - 840iCA (as of 1/96)
E36 - 328i/iA (as of 10/95)
MS41.1 M52
E39 - 528i/iA (as of 2/96)
MS 41.2 S52 E36 - M3 (as of 1/96)

Refer to SIB 12 05 96 for information pertaining to programming FLASH control


modules.
The utilization of EEPROMs within the Engine Management Systems continues to
be used today, and has expanded into other control modules as well.

5
EPROMs & EEPROMs
Transmission EPROMS
Beginning with vehicles produced in the early 1990’s the Transmission EPROM can be
replaced on some vehicles in order to address customer complaints that would normally
be addressed by having to replace the Transmission Control Module (TCM). Service
EPROMs are available for the following systems:
TCM Version Engine Application
EGS 1.27 M70B50 E31 - 850iA (1/90 - 9/91)
EGS 1.29 M70B50 E31 - 850iA (9/91 - 12/91)
M42B18 E36 - 318iA/isA/iCA/itA (12/92 - 12/95)
E36 - 325iA/iSA/iCA (10/91 - 9/95)
EGS 4.16
M50B25 E34 - 525iTA/iA (9/90 - 12/95)
EGS 7.30 M60B30 E34 - 530iA (3/93 - 8/93)
AGS 7.32 M60B30 E34 - 530iA (9/93 - 6/95)
E34 - 540iA (3/93 - 8/93)
E32 - 740iA/iLA (9/92 - 9/94)
EGS 9.20 M60B40
E31 - 840CiA (9/93 - 9/94)
E34 - 540iA (9/93 - 5/96)
E38 - 740iA/iLA (9/94 - 5/95)
AGS 9.22 M60B40
E38 - 750iLA (1/95 - 6/95)

Refer to SI B24 04 96 for additional information pertaining to Transmission EPROM


Application.
Refer to SI B24 05 95 for information pertaining to Transmission Control Module
EPROM Replacement.

Transmission Control Module Flash (EEPROM) Programming


The introduction of newer generation Transmission Control Modules introduced with the
M44, M52 and M62 engines at the end of 1995, brought with it the ability to “flash”pro-
gram this module as well. By being able to electrically erase and install a new program
and or data stored on the EEPROM, it no longer becomes necessary to replace the chip
to get an updated transmission program installed.
The technology used on the Transmission Control module is the same as explained in the
section “Engine Control Module Flash (EEPROM) Programming”.

6
EPROMs & EEPROMs
When is EPROM Replacement and/or Programming Necessary?
The program and or data of an engine or transmission control module only needs to be
updated or replaced if:
• The control module is replaced with a non programmed/basic module.
• A Service Action, Recall or customer concerns have resulted in the release of a
new/updated program or revised operational data.
The programming procedure of the diagnostic equipment will identify if:
• a DME EPROM needs to be replaced or can be updated
• a control module (DME or Transmission) can still be programmed or needs to be
replaced if the reprogramming limit of 13 times has been reached

How is a Replacement EPROM or Control Module Determined?

DME/ECM EPROM
As mentioned previously on the M3.1 Engine Control Modules the EPROM needs to be
replaced whenever an update is to be performed. On M3.3 and M3.3.1 Control Modules
the EPROM’s for these modules generally have enough additional space to add/load one
update. However, if the update that needs to be installed is too large, then the installed
EPROM needs to removed and a Basic EPROM reinstalled. The diagnostic equipment
(DISplus, GT1 or SSS) contains a program within CIP that will determine the part number
of the replacement EPROM or control module that needs to be installed.
For some control module variations there is more than one replacement EPROM avail-
able.
Example: An M3.1 DME has three different hardware versions:
Bosch Hardware Number 0 261 200 402
Bosch Hardware Number 0 261 200 403
Bosch Hardware Number 0 261 200 405
This requires three different replacement EPROM’s, however one EPROM is not neces-
sarily specific to one hardware version.

TCM
Regarding the replacement EPROM for Transmission Control Modules there are specific
Service Bulletins which identify various situations that can be addressed by replacing the
EPROM in the control module. The replacement transmission EPROM does not require
any type of programming after being installed, as it already contains all the program and
operational data.
If an early version Transmission Control Module, for vehicles prior to 1996 model year, is
replaced it generally also does not need to have the EPROM replaced as the required
program is already installed.

7
EPROMs & EEPROMs
Programming Procedure
Within CIP is a procedure that requires the selection of the model/series whenever a/an:
• EPROM needs to be updated/replaced
• EEPROM needs to be updated
• Control module needs to be replaced
Then select “Programming” - “DME Programming” or “EGS Programming” and follow
the steps given in the respective SIB.

Workshop Exercise - SIB Look-up

Detailed information pertaining to updates and replacements is provided in:


SI B12 08 95(4274) - DME EPROM replacement
SI B12 08 94(4117) - M50 DME EPROM Update
SI B12 07 94(4116) - M50 DME Programming Update,
SI B12 09 94(4132) - M60 DME EPROM Update
SI B 12 07 95(4273) - M60 DME EPROM Needs Replacement
SI B12 05 96 - Programming Flash Control Modules (DME)
SI B2404 96 - EPROM Replacement Application Chart
SI B24 05 95 - EGS/AGS EPROM Replacement
Plus additional situation/complaint specific Service Bulletins available on the TIS website.

Determination Process for DME EPROM


In the event a DME EPROM, a control module or the program of a control module needs
to be updated or replaced the program contained within CIP will provide the information
necessary to perform the specific task. A program within CIP is used to determine the
correct replacement part numbers (EPROM, Control Module or software update) to be
installed.
For earlier production vehicles there are two ways to perform this process:
• “automatic” determination
or
• “manual” determination.
The automatic determination is the preferred method as it is faster and mistakes made
during data entry into the tester are avoided. For newer production vehicles that utilize
EEPROMs/Flash programming the determination process is done automatically as part of
determining a measures plan (refer to CIP section or more information).

8
EPROMs & EEPROMs
Automatic Determination
In order to determine which EPROM needs to be installed there is a special procedure
that is executed as part of the “Exchange EPROM” process. The procedure will “auto-
matically” determine the correct replacement EPROM or control module part number,
based on the “Basic part number” and “Programmed part number” stored on the
installed EPROM, if the EPROM is not damaged.
The procedure is run automatically if “YES” is selected for the answer to the question “Is
old EPROM still installed.
During the automatic determination process the tester compares the part numbers
stored in the EPROM of the currently installed DME control module with a list of possible
replacement part numbers contained in the program of the tester.
The comparison is done to determine if the tester can "recommend" a replacement
EPROM or control module part number.

Manual Determination
If the EPROM is damaged then the “Basic part number” and “Programmed part number”
indicated on the label of the control module that is located on the cover of the module
must be entered “manually” via the touch screen on the tester so that the replacement
part numbers can be determined.
This procedure is followed if “NO” is selected for the answer to the question “Is old
EPROM still installed?”
During a manual determination you will need to:
• Enter the part number for a basic (programmable) control module.
• Enter the VIN number of the vehicle.
• Enter the part number of a programmed control module
Once the correct numbers are entered, the tester searches a “master list” for the proper
replacement part number and will display either that part number or the message "no
substitute found."
Regardless of which process is used if the replacement part does not match the part
number displayed and "expected" by the program on the tester, programming will not
occur. You need to obtain the proper replacement part.
At no time during the determination or programming process should you turn off the igni-
tion, disconnect the control module or tester/interface.
Once the EPROM is programmed by way of the “Automatic” or “Manual” determination
process it contains the operating program for the engine and the associated operational
data or characteristic maps. In the event a basic replacement control module is installed,
the EPROM installed in the control module will be programmed in the same manner.

Note: The EPROM in a basic replacement module does not need to be replaced
since it only contains the “resident data” and nothing else.

9
EPROMs & EEPROMs
Review Questions
1. Do EPROMs always need to be replaced in an Engine Control Module?

2. What does “Flash” programming mean?

3. Why does BMW limit the number of times a control module containing/using a
EEPROM can be reprogrammed? What is the BMW limit?

10
EPROMs & EEPROMs
Review Questions
1. What is the purpose of a ZCS code in a vehicle?

2. Where is the ZCS code stored in a vehicle?

3. How can you determine what modules in the vehicle are codeable via the ZCS
code?

4. What is the purpose of a Vehicle Order what information does it contain?

5. When was the VO structure introduced?

6. Which models utilize a VO structure?

7. How can the VO information of a vehicle be accessed?

14
Vehicle Coding Information
Table of Contents
Progman

Subject Page

Progman Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
Progman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
Administration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
JETstream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
Multiconsole/Multisession . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
CIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

What Will Progman Do For Me? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8


Before Progman (CIP 15.0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
With Progman (CIP15.0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8

Getting Started With Progman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9

Administration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
Explanation of Status Indicators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10
Examples of Possible Combinations . . . . . . . . . . . . . . . . . . . . . . . . . . .11
Interface Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
IP Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
External Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
Interface Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
IP Address . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12
Gateway . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
IP Subnet Mask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13
Interface Update . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14
Updating Interface after Initial Install . . . . . . . . . . . . . . . . . . . . . . . . . . .15
Self-Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
External Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
Operating Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20

Initial Print Date: 12/04 Revision Date:


Subject Page
FASTA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
Date and Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
Operating Times . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
Dealer Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
User Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21

Starting a Programming or Coding Session with Progman . . . . . .23


Disconnecting From Interface to be Used by Progman . . . . . . . . . . . . .23
Starting a Session with Progman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
Access CIP Functions For
E31E32/E34/E36/E38/E39/E46/E52/E53 . . . . . . . . . . . . . . . . . . . . . .26
Access CIP Functions For
E60/E62/E63/E64/E65/E83/E85... . . . . . . . . . . . . . . . . . . . . . . . . . . . .27
Return to Progman “Home” Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
Progman “Home” Screen Session Status . . . . . . . . . . . . . . . . . . . . . . . .29
Going from Progman to Diagnosis on GT1 . . . . . . . . . . . . . . . . . . . . . . .30
Going from Diagnosis to Progman on GT1 . . . . . . . . . . . . . . . . . . . . . . .31

Shutting Down the SSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33

Review Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36


Progman

Model: All

Production: All

After completion of this module you will be able to:

• Explain what Progman is

• Identify the advantages of Progman

• Check Setting and Configuration Information

• Verify that Interfaces are at latest firmware levels

• Start a Programming or Coding Session with Progman

3
Progman
Progman Introduction
With the release of CIP 15.0, BMW released a new software program known as Progman.

Progman is a software package that operates with Windows XP Embedded to manage:


• Administration & assignment of OPPS/OPS/Diagnostic heads plus network configu-
ration/addressing.
• Installation/loading of new data updates via Jetstream.
• Activation of a Coding, Individualization or Programming request from a GT1 to an
SSS via a multiconsole/multisession feature.
• Coding, Individualization or Programming of older vehicles via the SGC/UNIX applica-
tion.
• Coding, Individualization & Programming functions of CIP.

4
Progman
Progman
The new programming management tool utilizes a new operating system (Windows XP
Embedded) to manage the programming processes that can be initiated via the SSS.
Progman utilizes Windows XP Embedded which will serve as the basis for all further pro-
grams required for programming applications. No changes can be made to the operating
system of this Windows variant and it can be used only in connection with the corre-
sponding hardware (Software Service Station).

Progman incorporates all Coding, Individualization & Programming functions that were
previously part of the DIS CD for E31/32/34/36/38/39/46/52 & E53, which operates under
the old SGC/UNIX application, into the CIP application.
Since CIP is incorporated into Progman, it will now contain all Coding, Individualization &
Programming functions. CIP will be used to launch the SGC/UNIX application for the
older vehicles as well as launch the Windows XP based application for Coding and
Programming the newer vehicles.
In the future the E36/38/39/46/52/53 applications will be converted/integrated directly
into CIP and be based on Windows XP Embedded. The structure for the E31/32/34 will
not be changed and will remain SGC/UNIX based.

Administration
The administration tool provides the same setting options as before however, Progman
adds additional features/capabilities:
• Ability to view and select accessible “Interfaces” (Diagnostic Head, OPPS, OPS...)
• Configure interfaces
• Adjust SSS and network specific settings
• View available SSS units and select a specific unit
• Select language specific to each SSS
5
Progman
JETstream
JETstream is the application that provides online data updates for Coding and
Programming data. The feature allows the SSS to be up to date on the current/new
vehicle data regarding coding and programming information prior to the release of an
update DVD. The application can be configured to automatically search for online
updates at a specific time (ex. after normal shop hours every night) and install any
updates found at a specific time/point in the systems operation cycle.
In order for this feature to work the SSS must:
• Be located on the workshop network
• Be connected to BMW via a network connection
• Have the correct network specific data entered in the “Network” mask
• Have the host/domain name and IP address of the BMW server entered in the
“Online Service” mask
• Have the “Automatic Online Update” feature active

Multiconsole/Multisession
Since the SSS is the primary Coding and Programming system, coding and programming
tasks can be “transferred” to the SSS from any GT1 located on the workshop network.
In order to monitor the tasks assigned to a specific SSS a menu of active jobs is dis-
played via Progman and can be accessed by any GT1 or SSS on the network.

The multiconsole function makes it possible to control programming procedures both via
Multiconsole
the Software Service Station as well as via the BMW diagnosis systems GT1.
Multisession The multisession function makes it possible to program several vehicles simultaneously.

This function allows the GT1 to be remote terminals for the SSS with respect to Coding
and Programming and once a task is transferred to an available SSS, the GT1 can be
used to diagnose another vehicle and/or transfer another coding/programming task to an
SSS.

6
Progman
CIP
The Coding, Individualization and Programming application that has been used previously
since the introduction of the E65 continues to operate the same as before. The only
major change is that all of the Coding and Programming functions for the older vehicles
(E31/32/34/36/38/39/46/52 & E53) that was only available on the DIS CD for use on
DISplus and GT1 has been incorporated into CIP.
Prior to CIP15.0 SGC/Unix functions for
Coding, Individualization & Programming
were incorporated into DIS CD VXX.X.

As of CIP 15.0 SGC/Unix functions for


Coding, Individualization & Programming are
incorporated into CIP.

7
Progman
What Will Progman Do For Me?
Progman allows the GT1 to be released from the task of Programming and Coding vehi-
cles. The GT1 will be capable of performing vehicle diagnosis while the SSS is used to
Program and Code a vehicle(s).
Example: Given a workshop with 10 active workstalls (CORA) and equipped with 2-
GT1’s, 1-DISplus, 1-SSS, 3-Diagnostic Heads, 1 OPPS Head, 2-OPS Heads

Before Progman (CIP 15.0)


# of MOST-bus equipped
# Vehicles able to be Diagnosed
Device Vehicles able to be
while another is being Programmed
Programmed at one time
GT1 1 0
GT1 1 0
DISplus 0 1
SSS 1 0
TOTAL 3 1
With Progman (CIP15.0)
# of MOST-bus equipped
# Vehicles able to be Diagnosed
Device Vehicles able to be
while another is being Programmed
Programmed at one time
GT1 0 1
GT1 0 1
DISplus 0 1
SSS 5 0
TOTAL 5* 3

*If 2 additional OPS heads are purchased for the workshop (refer to SI B 07 02 04)
By installing CIP 15.0 on all of the GT1’s and SSS’s, Progman can be accessed via any
GT1 or SSS but is controlled/operated by the Software Service Station (SSS) only. Since
the SSS controls/runs Progman, it will be the only device able to code and program vehi-
cles, the GT1 will be viewed as a remote terminal for Progman.
With the introduction of Progman, parallel programming of up to five vehicles can be per-
formed. The vehicles to be programmed do not need to be the same model series nor
have the same data status or be connected at the same time.

8
Progman
Getting Started With Progman
Progman is launched from the GT1 whenever the Coding/Programming function is
selected. On the SSS Progman is always active as this is the only program installed on
the system.

From the main menu screen in Progman the administration features for system configura-
tion can be accessed or a new session can be started. By selecting “Help” a more
detailed document explaining Progman can be accessed.

Administration
In order to insure initial system setup select-
ing ‘Administration” will bring up a new
screen which explains the menu selections
available on the right side.
At this point Interfaces, Settings or User
Interface can be selected.

9
Progman
Interfaces
By selecting “Interfaces” an overview of all
available and/or connected interfaces is
obtained along with information pertaining to
the status of the interface, device name, soft-
ware level and IP address.

Explanation of Status Indicators


Symbol Description
Green background - interface is free and can be selected

Grey background - interface not detected


- It is currently being shut down or started up
- It is unconfigured referred to the sub-network in which it is located
Red background - the interface is occupied and is not
available for a session
It is possible to query the configuration and the current session.
Black lettering - interface can be selected

Grey lettering - interface cannot be selected as it is not


available or cannot be reached

Black question mark- interface is unconfigured referred to


the sub-network in which it is located

Grey question mark - connection to interface is not


possible, the device cannot be reached

Black gear wheels - the interface is currently being used


exclusively. Only the configuration data can be queried.

Diagnostic Head

OPS

OPPS

10
Progman
Examples of Possible Combinations
Symbol Description

OPS with grey background and grey question mark:


The OPS can not be detected as it is currently being started up or shut down or is
not correctly configured/connected for the current network
When devices are not connected, they are indicated as a grey question mark on a
grey background without the interface symbol.

OPPS with grey background and black question mark:


A black question mark means that the OPPS is not configured for the current net-
work.

Diagnostic head with red background and black gearwheels:


The diagnostic head is currently being used and is not available for a new session at
this time. Only the configuration of the diagnostic head can be queried.

Interface Name
An interface name can be freely assigned to each interface so as to simplify definition of
the interface in the workshop. The name used should be helpful in locating/identifying
the particular interface if necessary.
Example: Assign a name that uses the color band placed on the interface along with a
letter of the alphabet (i.e. Blue A), place a label on the interface to identify the
specific name that has been assigned and then modify a “service” hat by
assigning the name of the interface to it as well, so that it can be placed on
the vehicle to identify the interface being used on the vehicle.

Version
The firmware version indicates the software level currently installed on the selected inter-
face (OPPS/OPS/ diagnostic head). It is recommended that the version on the interface
be the same as that of the SSS it is being used with.

IP Address
The IP address (internet protocol address) is a unique and specifically assigned address
for each device in the workshop network. This address consists of a number block which
is normally structured as follows.
Example: 192.168.100.10
The IP addresses must be structured so that each device in the network is distinguished
from all the others and must be exclusive to that device and not shared among other
devices connected to the network.

External Interface
This column indicates whether the current interface is an external interface. External
interfaces are located in external subnetworks and can be used in connection with this
Software Service Station.

11
Progman
Overview
If an interface is selected and items on the
right of the screen in the menu listing are
selectable (not grey) then additional informa-
tion can be accessed for that device.
In this example “Overview”,“Interface
update”, “Configuration” and “Self-test” are
available.
If a device is not correctly configured for the
network certain selections may not be avail-
able for that device.

Note: The Interface list does not automatically update as devices are utilized or freed up.
The only way to update the list is to select “Overview”.

Configuration
Configuration provides information for the
device selected pertaining to:

• Interface Name • IP Address


• Gateway • IP Subnet Mask

Interface Name
The specific name assigned to the device (Ex. Blue A). The name used should be help-
ful in locating/identifying the particular interface if necessary.

IP Address
A specific four segment number assigned exclusively to the device. The number repre-
sents the address of the device on the network and is necessary when communicating
with other devices located on the network.
Example: 192.168.100.10

12
Progman
Gateway
This information identifies the four segment address of the component located on the
network responsible for communicating from the current network to another network. If
the there is no address in this location then a connection to any devices outside of the
current network can not be established.

IP Subnet Mask
This information is used to define which segment of the four segment IP address specifi-
cally identifies the device and which identify the specific network.
Example:255.255.255.0
Indicates that the first three segments (255.255.255) identify the specific net-
work that the device is located on. The last segment (0) indicates that this is
the segment that will identify the specific device.

Note: The network and device address information must be entered exactly as
defined by the network administrator for your facility, otherwise the
devices can not be accessed.

After entering the necessary information and continue is selected, Progman will run a
check on the values/information entered and will indicate if the information is acceptable.

13
Progman
Interface Update
Interface update can only be selected if the selected interface is not being used by
another device (interface symbol has a green background).
This function allows the firmware of the inter-
face to be checked against the version of the
SSS.
It is recommended that the version of the
SSS and the Interface be at the same level
to reduce susceptibility to errors and system
conflicts.

The SSS will check which firmware version is installed in the interface and then searches
for the newest available version on the SSS. Depending on the result of the search,
Progman will make a recommendation as to what action should be taken.
• If both versions are equal no action is required.
• If the version on the SSS is newer then Progman will suggest updating the version
on the interface.
• If the version on the SSS is older, Progman is able to change the version on the
interface to the older one.

Once the update is successfully completed a


corresponding message is displayed.

14
Progman
Updating Interface after Initial Install
After the initial installation of Progman with CIP 15.0, the firmware installed on the inter-
faces that will be used with Progman must first be updated. If the firmware level of the
interface is not at a predefined level then it will not be recognized/identified within the
Progman application, thereby not allowing a connection to the interface. This update
only needs to be performed when an interface is used for the first time with Progman.

Using the GT1 update the firmware in the


interface.
Select the interface

With a connection to the interface estab-


lished a message should be displayed indi-
cating that the firmware in the head needs to
be updated, perform the update by selecting
the “Diagnostic head Update” button.
After the update is complete select “Quit
connecting”.
Access Progman and verify that the interface
is recognized

From Progman the firmware level of the interface should also be checked and updated if
necessary. Progman does not automatically inform the user if the firmware of the inter-
face needs to be updated.
Updates to the interface are checked and performed by selecting the specific interface
from the list, located under “Administration” - “Interfaces”, then selecting “Interface
Update” (refer to previous page for additional information).

15
Progman
Self-Test
Self-test can only be selected if the selected interface is not being used by another
device (interface symbol has a green background).
Depending on the interface selected a test loop must be attached to the interface.
• For opps use test loop 663124 and 663131
• For OPS use test loop 663124
• For Diagnostic Head , no test loop is needed
External Interface
An external interface is an interface that is
not automatically detected by Progman or is
not contained in the subnet of the workshop
network, such an interface can be added
manually to the list of available interfaces or
removed using this function. In order to add
an interface the I/P address of the interface
must be entered.

Example: The dealer has two separate service facilities each with its own network, an
external interface can be connected to a vehicle located within one network
and accessed by a GT1 or SSS located in the other network in order to
Code/Program the vehicle.
Settings
From the Administration screen the
“Settings” tap allows access to information
specific to a selected/specific SSS.

16
Progman
Overview

The overview tap provides a listing of all


SSS’s that are located on the network.

The Overview screen provides information pertaining to:


• Operating status of a particular SSS
Ready (Green) = Usable
Full use of SSS is possible
Limited (Yellow) = Usable
The number of possible sessions is limited (Ex. a download of a new update
is in progress)
Not Ready (Red) = Maintenance
No new sessions are possible (Ex. an update is currently being installed)
• Number of active sessions on each SSS
• The CIP version installed on each SSS
Upon selecting a particular SSS additional
menu selections are possible.
The selected SSS is highlighted in a blue
frame and all items are possible for the
selected SSS are active in the menu.

17
Progman
Operating Status
This menu item provides a more detailed status information for specific SSS then the
Overview table.

The name of the SSS is displayed with a colored background indicating the status of the
selected SSS.
Green = Ready Yellow = Limited Red = Maintenance
Additional status information is also displayed:
MAC address - Media Access Control address is an unchangeable and unique
address for identification of a network device.
Serial Number - Serial number of specific SSS
Operating Status - Provides detailed information about the current operation
of the SSS
Sessions - Indicates the number of currently active/started CIP sessions.
Interfaces - Indicates how many interfaces are connected to the specific SSS
Online Service - Indicates whether the online update is activated on the SSS
From this location it is also possible to change the operating status of the SSS, as long as
the selected SSS is currently in the “Ready” status, plus this is also the recommend-
ed location from which the SSS should be restarted or shutdown using the but-
tons at the bottom of the screen.

18
Progman
Network

The Network function allows network config-


uration information specific to the SSS to be
entered, these settings should have been set
during the initial installation of
Progman/CIP15.0.

Note: Maintain a copy of the system


configuration information, in the
event information gets disturbed,
printout a copy and keep in a
binder along with information for
DISplus, GT1 and the interfaces.

Information that can be entered is similar to the information needed to configure an inter-
face. The following information must be entered to correctly configure the SSS to the
network:
• Assign a name specific to the SSS
• Gateway Address
• IP Address specific to SSS
• Information pertaining to the IP subnet mask
Any changes that are made to the configuration are saved by selecting continue and
will go into effect once the SSS is restarted.
Note:

Restart immediately means that


Progman checks the current status of
any sessions that are still active and
once the sessions are complete the
system will restart.

Restart later indicates that Progman will


wait until the end of the day (specified
under “Operating Times”) to check and
restart the system.

19
Progman
Installation
The Installation tap is selected when updates need to be installed either by a way of a
new CIP DVD or checking for new online updates (Automatically or Manually). The
updates that can be installed pertain to the Progman application as well as updated vehi-
cle data files for utilization by CIP.

The table provides an overview of the soft-


ware program and version currently installed.
The selection/activation of Automatic online
updates via the BMW server is selected from
this screen.
“DVD update” can be selected whenever a
new CIP DVD needs to be installed.
“Online update” allows a manual check for
online updates to be initiated.

Note: It is recommended that the Automatic Online Update feature be activated


to insure that needed Program and Coding updates are received in a
timely manner. When new updates are made available they are down-
loaded and and installed after the normal operating times of the work-
shop as specified under “Operating Times”.

“Display status” provides information pertain-


ing to the installation of the latest update.
Information pertaining to an erroneous instal-
lation of an update is displayed in the mes-
sages section.

Note: If frequent error messages are


displayed contact your ser-
vice provider for assistance
and have available a copy of
the error messages that have
been received.

20
Progman
FASTA
The FASTA function assures that vehicle operation and service data from the diagnostic
and programming devices are sent to BMW. With Progman if data is available it is trans-
mitted automatically every five minutes

This function shows if any data is available


for transfer and when it will be sent.
By selecting “Send data” (manual send)
make sure that no sessions are currently
running on the SSS as this will lengthen
the data transmission process.
It is preferred that the automatic transfer
process be utilized.

Note: In order for FAST data transmission to be possible the correct BMW
server address must be entered in the “Online Service” menu.

Date and Time


In this function the current date and time must be entered. An automatic correction for
daylight savings time to standard is made automatically.

Operating Times
The normal operating time of the workshop/service facility is entered in this function. The
time is used to establish a maintenance period for the SSS. The end of normal operating
time signals Progman to start executing/installing any online updates that may be avail-
able.

Dealer Data
Information pertaining to country of operation, dealer number, dealer name, dealer
address, contact person Telephone number and Email address are entered in this selec-
tion.

User Interface
Under this menu language settings specific to the individual SSS and printer configura-
tion information can be set.
Example: If the language of the SSS is set to German then all information displayed on
the SSS will be in German, however it does not mean that the GT1 will also
display the text in German when accessing Progman and “connecting” to that
SSS.
21
Progman
Workshop Exercise - Configuration Check

1. Check/access network configuration information for:


• SSS
• DISplus
• GT1
• Interfaces (Opps, OPS & Diagnostic Head)

2. Check firmware level of interface’s via SSS.

22
Progman
Starting a Programming or Coding Session with Progman
In order to start a session in Progman the Diagnostic, OPPS or OPS head that will be
selected can not be connected to the DISplus or GT1.

Disconnecting From Interface to be Used by Progman


If the vehicle to be programmed was previously
being diagnosed using a diagnostic head with
the GT1, then the connection with the head
must be broken before that head will be recog-
nized by Progman.
Select “Service”
Select “Setting up a connection”

Select “Quit connecting”

The selected head is free/disconnected

23
Progman
Select “End”

Select “Change”

Select “Coding/Program”

Select available SSS

Select “Continue”

24
Progman
Starting a Session with Progman

Select “New Session”

Select the desired interface

Select “Continue”

Under “Description” enter information that


will identify the vehicle to which the interface
is connected (Ex. VIN or Model type, Service
hat #, Vehicle color, Bay location, etc.)

Select “Continue”

25
Progman
Access CIP Functions For E31E32/E34/E36/E38/E39/E46/E52/E53

Select desired model series


For this example an E53 - X5 is being used,
therefore select “X”

Select “E53”

The screen now displays the SGC/Unix


screen previously accessed via the
DISplus/GT1 when coding and programming
was selected.
At this point select the desired function and
proceed as stated in the respective Service
Information Bulletin for the procedure being
performed.

26
Progman
Access CIP Functions For E60/E62/E63/E64/E65/E83/E85...

Select desired model series


For this examples an E60 is being used,
therefore “5 Series” is selected

Select E60

CIP is determining the vehicle order for the


vehicle being accessed.

27
Progman
From this screen select the desired function
and proceed as stated in the respective
Service Information Bulletin regarding CIP
procedures (Refer to SI B 09 05 01).

Return to Progman “Home” Screen


Select “Minimize”

The Progman “Home” screen is displayed,


from here a new session can be started or a
current session reviewed.
If using a GT1 a change to diagnostics can
also be made.

28
Progman
Progman “Home” Screen Session Status

The Progman “Home” screen displays all


sessions that are running on a particular SSS
and allows any of the sessions to be
reviewed.

Explanation of session status indicators:


1 - Black text with white background indi-
1 cates that session is running and does
not require any input, the status of the
session can be reviewed.
2 - Grey text indicates a session is active/in
progress and is currently being accessed
2 or reviewed by another user. This session
can not be accessed by an additional
user.
3 - Orange text indicates that input is
3 required before program can continue,
this session should be accessed and
reviewed to provide required input.

29
Progman
Going from Progman to Diagnosis on GT1

If using a GT1 it is possible to switch from


Progman to a diagnostic function.
From the Progman home screen select
“Change”

The GT1 will switch to diagnostics and a


new diagnostic session can be started by
connecting to an available interface, if noth-
ing was previously active.
Or
If a diagnostic session was previously active
then the system will return to that point, prior
to having switched over to Progman.

30
Progman
Going from Diagnosis to Progman on GT1

If using a GT1 it is possible to switch from a


diagnostic function to Progman to check the
status of an active session.
From the the diagnostic screen:
Select “Change”
Select “Coding/Program”

Select the SSS on which the session is


to be checked

The GT1 will switch to the Progman session.


Select the session to be checked.

Example:
The E64 SPT 2 session is highlighted in
orange, which indicates that a user input is
required.
Select “E64 SPT 2”

31
Progman
The status information for the selected ses-
sion states that it is “Waiting for user action”
Select “Continue” to view/access the session

Select “Start” to initiate/carryout the mea-


sures plan
Or
Select “Cancel” to end the process and
return to the previous module selection
screen of CIP.
Or
Select “Minimize” to return to the home
screen of Progman.

32
Progman
Shutting Down the SSS
After selecting “Administ.” on the Progman
Home screen select “Settings”.

Select “Overview”

Select the specific SSS to be shutdown

33
Progman
After selecting the specific SSS, select
“Operating Status”.

This is the only location from which the


SSS should be restarted or shutdown
using the buttons at the bottom of the
screen.
Selecting “Restart” will switch the SSS off and
then back on.
Selecting “Switch off” will turn the SSS off.
Note: The on/off button located directly
on the computer should not be
used to turn OFF the SSS.

34
Progman
Workshop Exercise - Access CIP & ZCS

1. Access CIP for an E60.

2. Access ZCS functions to obtain the central coding key on an E53 or Vehicle
order on an E46.

35
Progman
Review Questions
1. What is Progman?

2. Why do we need Progman?

3. What advantage(s) does Progman have over the older method (CIP xx.x and DIS xx.x)?

4. What is the purpose of an IP address, Gateway address and subnet mask?

5. How can the the firmware level in an interface be checked and updated?

6. Why is it important that the firmware in an SSS and the interface(s) being used
are the same?

7. What steps must be followed in order to Code or Program an E38?

36
Progman
Table of Contents
Coding, Individualization & Programming

Subject Page

Coding, Individualization & Programming . . . . . . . . . . . . . . . . . . . . . . .3


Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
Integration Levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
Measures Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
Initial CIP Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
CIP Main Selection Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7
Control Module Replacement Yes/No . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8

CIP Functions - If No (Non MOST-Bus Vehicles with VO) . . . . . . . . .9

CIP Functions - If No (MOST-Bus Vehicles) . . . . . . . . . . . . . . . . . . . .11

Control Module Selection - Programming - Update Software . . .12


Control Module Selection-Programming-Special Measures . . . . . . . .13
Retrofits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14

Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16
Management - Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .17
Management - Application - Test & Version . . . . . . . . . . . . . . . . . . . . . .18

Vehicle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20
Vehicle - Vehicle Order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
Vehicle - Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22
Vehicle - Service Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24
Vehicle - Complete Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25

CIP Functions - If Yes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26

CKM - Individualization (Vehicle & Key Memory) . . . . . . . . . . . . . . .27

ZCS Coding Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .30


Coding Control Modules that Store the ZCS . . . . . . . . . . . . . . . . . . . . . .30
Manual Input of ZCS Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31
Automatic Coding Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37
Additional ZCS Coding Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41
Retrofit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41
Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41

Initial Print Date: 12/04 Revision Date:


Coding, Individualization & Programming (CIP)

Model: All

Production: All

After completion of this module you will be able to:

• Understand the purpose of CIP and what it means

• Program/update installed modules

• Access retrofit functions

• Access Individualization functions

• Access ZCS functions

2
Coding, Individualization & Programming (CIP)
Coding, Individualization & Programming

Introduction
With the introduction of the E65 in 2001, BMW not only introduced a vehicle loaded with
the latest technology but also introduced a new way of performing vehicle coding and
programming. In order to code and program an E65, a software program commonly
referred to as CIP was introduced. The acronym CIP stands for Coding, Individualization
& Programming and with the introduction of Progman & CIP 15.0 it has become the sole
software tool for coding and programming vehicles.
Initially CIP was developed for use on the E65/E66 and newer models but has since been
expanded to include all vehicles produced prior to the introduction of the E65 that utilize a
an SGC/UNIX programming structure.
The intention of the CIP program is to insure that whenever a module is updated or
replaced it will still be compatible with all the other modules installed in the vehicle
(equipped with a MOST bus). Since all of the communication between the various mod-
ules installed in a vehicle is over a bus network structure, it is very important that all of the
installed modules be able to communicate with each other without problems.
To ensure compatibility/seamless integration between control modules, the CIP software
reads out the part numbers of all the control modules installed in the vehicle as well as
the software levels of the respective modules. The information from the various installed
modules is then cross referenced against a “master reference list” to determine if a mod-
ule(s) needs to be updated and how this update will effect the other installed modules.
Once this cross reference process is started it can result in additional issues such as:
• If the software level in a selected module is updated will the hardware of the module
still be able to function correctly.
• If the software to be installed is not going to be compatible with the installed hard-
ware then the module will need to be replaced.
• If updated software is installed in the selected module will this have any impact on
any other installed modules and will they need to have the software updated or will
the hardware need to be updated in additional modules in order to install the revised
software.
Example: A desktop computer originally built with a Pentium I, 75 Mhz processor using
Windows 95 is not able to operate using Windows 2000. In order to operate
with Windows 2000 this old desktop computer needs to upgraded with new
hardware. However, a desktop computer designed to operate with Windows
2000 can be updated to Windows XP without having to upgrade the hard-
ware of the computer.

3
Coding, Individualization & Programming (CIP)
All hardware devices that utilize software/programs to operate can only have the installed
software updated a certain number of times before the operating capacity of the installed
hardware is exceeded and no longer compatible, this results in the device no longer being
able to function. In order for these devices to continue to operate the installed
hardware/control modules will need to be updated, which is what happens in our vehicles
or desktop computers over time.
Specific information pertaining to coding and programming with CIP are provided in
SI B 09 05 01.

Integration Levels
All new models produced as of the E65 have a minimum allowable software level, based
on production date, which is referred to as an integration level or data status. The inte-
gration level defines the software level that all the control modules installed into a particu-
lar model, at time of production, must be at in order to ensure compatibility. Once an
integration level for a specific production period is defined/“locked”, the modules installed
in those vehicles can not be updated beyond that level.
The Integration level or data status for vehicles equipped with a most bus is provided in
the “Status report” or “Measures plan” as shown below.

If the vehicle data status and target data status are not the same, this indicates that some
of the installed control modules need to be updated to bring the vehicle up to the latest
level.
If the software levels were not locked it would be quite complex to track all software and
hardware variations for all models through all production ranges. It would be extremely
difficult to determine what software and hardware level is compatible with each module
installed in a specific vehicle(s) and exactly what needs to be updated if one module is
updated or replaced, therefore a limit or locked point must be define for specific produc-
tion periods by model.
Example: MY2002 vehicles can not be programmed with software that is assigned to
MY2003 vehicles since the defined integration level for each Model Year is
different. Similarly Windows 2000 can not be installed & operated on a com-
puter originally developed to run with Windows 95.
Information contained in this module is for reference as a user guide, more detailed infor-
mation can be obtained from the respective Service Information Bulletins
SI B09 05 01 & SI B09 03 98.

4
Coding, Individualization & Programming (CIP)
Measures Plan
A measures plan is generated by CIP to identify what if any control modules need to be
updated in order to bring a vehicle up to the latest integration level or data status. The
measures plan also identifies the part number of the old/installed programmed control
module and also what the new part number will be after the update is performed.

By accepting the defined plan all modules that are listed will be updated “automatically”.

Whenever a measures plan is defined it should always be


Important!!! printed out before proceeding in order to document the
work performed, by attaching it to the repair order.

Note: An all inclusive status report or measures plan is only generated for vehi-
cles equipped with a MOST-bus, to ensure compatibility. For all other
vehicles a measures plan is generated only for the module selected to be
updated (i.e. DME, TCU, EGS...) no evaluation of the other modules in the
vehicle is made.

5
Coding, Individualization & Programming (CIP)
Initial CIP Screen

From the initial CIP screen select the model for which a coding or programming session
is to be performed.

6
Coding, Individualization & Programming (CIP)
CIP Main Selection Screen

Selection of CIP functions/options:


Termin. CIP - End the CIP program and return to Progman home screen
Load SW - Load software function to be selected if:
• Control module has been replaced
• Retrofit process is to be carried out
• Vehicle software is to be updated
• Coding/programming of one or more module(s) is to
be performed
CKM - Vehicle and Key Memory/Individualization allows various driver selec-
table features (such as drive way locking, seat memory, central lock-
ing/unlocking, daytime running lights etc.) to be coded to the
vehicle or individual keys.
Management - Provides the ability to:
• Display the current version of CIP installed
• Print previously performed Service Measure Reports
• Run a test on the software currently installed on system (SSS)
Vehicle - Allows access to:
• Vehicle Order
• Initialization
• Service Functions
• Complete vehicle coding

7
Coding, Individualization & Programming (CIP)
Control Module Replacement Yes/No

At this screen information is needed to determine which path is to be followed.


Answer “Yes” if:
• A previously installed control module has been replaced.
Answer “No” if :
• No control module(s) has been replaced but an update on one or more modules
needs to be performed.
• A retrofit needs to be performed on the vehicle (such as installation of CD player,
ULF, phone cradle installation, activation of bluetooth, etc...).
• A control module for a new system/accessory is installed as part of a retrofit installa-
tion.

8
Coding, Individualization & Programming (CIP)
CIP Functions - If No (Non MOST-Bus Vehicles with VO)
Select the module to be reprogrammed
Or
Select “Retrofits” if an accessory
function/feature is to be added or deleted.

Example: DME/DDE was selected on previ-


ous screen.
Programming is selected if:
• Checking for availability of updated soft-
ware for selected control module.
• It is known that updated software is
available for the selected control mod-
ule.

Replacement is selected if a module was


replaced.

EWS is selected if:


• Alignment of EWS & DME must be per-
formed

Example: Programming was selected on


previous Screen.
Upon selecting “Update software” a mea-
sures plan will be generated that is specific
to the module selected.

9
Coding, Individualization & Programming (CIP)
A measures plan for the selected
system/module is displayed.
A measures plan identifies the programmed
part number for the control module(s)
installed:
• “Old part no. progr. ctrl. mod.” - indicates
p/n for software currently installed.
• “New part no. progr. ctrl. mod.” - indicates
the p/n if the module is updated, by
accepting the displayed measures plan the
module will be updated to the new num-
ber and software.
Note: The “update” does not need to be
performed if the two part num-
bers are the same.

On vehicles without a MOST-Bus, a “Measures plan” provides information on updates


that are available for the selected control module. By selecting accept, only the module
listed in the measures plan will be updated.

Note: Prior to selecting accept, printout a copy of the measures plan and
attach it to the repair order to document the work performed.

Important!!! If the measures plan identifies any control modules that will
need to be replaced exit CIP.
For additional information pertaining to programming using CIP refer to SI B09 05 01.

10
Coding, Individualization & Programming (CIP)
CIP Functions - If No (MOST-Bus Vehicles)
After selecting “No” CIP evaluates the
installed control modules to determine if any
updates are required.

Once the evaluation is completed and CIP


determines that there are updates available a
“Status report” is generated.
Note: Status report is similar to a mea-
sures plan.
The status report identifies the control mod-
ules for which an update is available and also
indicates if the module will need to be repro-
grammed or replaced.
Information is also provided indicating the
current programmed part number and also
what the number should be after an update
is performed.

If “Cancel update” is selected or if CIP


determines that there are no updates need-
ed or available for the vehicle then the
“Control module selection” screen is dis-
played.
For additional information pertaining to pro-
gramming using CIP refer to SI B09 05 01.

11
Coding, Individualization & Programming (CIP)
Control Module Selection - Programming - Update Software
From the “Control module selection” screen
specific control modules can be selected for
reprogramming.
Or
Select “Retrofits” if an accessory
function/feature is to be added or deleted

Example: DME DDE is selected on the


previous screen.
By selecting “Programming” the software
of the selected module can be updated or a
measures plan for all installed modules can
be obtained and updated.

By selecting “Update Software” a mea-


sures plan will be generated that will indicate
what updates if any are available not only for
the DME but for all modules installed in the
vehicle.

12
Coding, Individualization & Programming (CIP)
A “Measures plan” provides information on
updates that are available for all installed
control modules. By selecting accept, all
modules listed in the measures plan will be
updated.
Note: Prior to selecting accept printout
a copy of the measures plan and
attach it to the repair order to
document the work performed.

Important!!!
If the measures plan identifies any
control modules that will need to be
replaced exit CIP.

Control Module Selection-Programming-Special Measures

Important!!!
The “Special Measures” function is
only to be used in the event that a con-
trol module(s) can not be programmed
during the “Update Software” process
that is executed as a result of a devel-
oped “Measures plan”/“Status report”
or specific instructions are given in a
Service Information Bulletin which
require the use of special measures to
update a module.

In the event that a control module(s) can not be programmed successfully the information
will appear next to the specific module(s) in the final report, which is generated upon
completion of an update or “Measures plan”.

13
Coding, Individualization & Programming (CIP)
Retrofits

Select “Retrofits” to view a list of func-


tions/features that can be modified or
installed.

The initial screen displays information per-


taining to:
- Airbag activation/deactivation
- Telematics On/Off
- Language (setting control display/moni-
tor language)
- Maintenance interval - reset/checking
- USA-Canada conversion
- Retrofits - listing accessories installed or
available for installation.

By selecting “Retrofits” on the previous


screen a list of accessory systems available
for installation is obtained.
Note: Some of the items listed may not
be available as retrofits for US
vehicles. Please refer to ASAP
portal on Centernet for more
information.

14
Coding, Individualization & Programming (CIP)
Example: ULF was selected on previous
screen.
If this system/module is installed the vehicle
order will be modified to reflect the addition
of this module/accessory to the vehicle by
selecting “Continue”.

15
Coding, Individualization & Programming (CIP)
Management
“Management” can be selected from the
main/initial CIP screen.

Or
“Management” can be selected from the
Main CIP Selection screen.

By selecting “Management” the following functions can be accessed:


• Print previously performed Service Measure reports
• Display the current version of CIP installed
• Run a test on the software currently installed on the system (SSS)

16
Coding, Individualization & Programming (CIP)
Management - Reports

To access the most recently generated mea-


sures plans select “Reports”.

The 16 most recently generated measures


plans can be accessed/viewed.
NOTE: The reports are not specific to
the vehicle currently connected
but are a cumulative listing of
vehicles recently
connected/accessed using CIP
via a specific SSS.

17
Coding, Individualization & Programming (CIP)
Management - Application - Test & Version

The “Application” function provides the abili-


ty to:
• Run a system test
• Determine information regarding the ver-
sion of CIP currently installed

Select “Test” if system files are to be


checked.

By selecting the “Start” button a brief test


of the system files will be performed.

18
Coding, Individualization & Programming (CIP)
By selecting “Version” installed application
information will be displayed.

A list of the various files/applications installed


as well as their software levels is displayed.

19
Coding, Individualization & Programming (CIP)
Vehicle
“Vehicle” can be selected from the main
CIP selection screen to access additional
functions:
- Vehicle order
- Initialization
- Service functions
- Complete encoding

By selecting “Vehicle” the following functions can be accessed:


• Vehicle Order
• Initialization
• Service functions
• Complete encoding

20
Coding, Individualization & Programming (CIP)
Vehicle - Vehicle Order

By selecting “Vehicle order” the ability to


adapt/modify the vehicle order can be
accessed.
Note: Changing the vehicle order may
affect vehicle operation.
Modifying the vehicle order
should only be performed when
directed to do so by the Technical
Hotline, Service Information
Bulletin or Aftersales Installation
Instructions.

Selection of “Adapt VO” provides the abili-


ty to install a modified Vehicle Order file.

Before selecting “Continue” a floppy disk


(1.44) containing the modified/new vehicle
order must be inserted into the disk drive of
the SSS.
Note: The modified VO file is obtained
from the Technical Hotline by submit-
ting a PUMA case requesting a modi-
fied VO, the PUMA case should indicate
what accessory/feature needs to be
added or removed. The modified file
will be sent via E-mail and must be
copied on to a 1.44” floppy disk. Do not
attempt to open the received file on a
PC, as this may corrupt the data con-
tained in the file.
(Refer to SI B 09 05 01)

21
Coding, Individualization & Programming (CIP)
Vehicle - Initialization

The “Initialization” function provides


access to three different functions:
• Start system time - Used to synchronize all
modules contained on the vehicles byte-
flight bus.
• Delete fault memory
• CAS or EWS calibration

By selecting “Delete fault memory” the


fault memory of all installed control modules
will be cleared.

Displays a report pertaining to the clearing of


the fault memory on all installed modules.

22
Coding, Individualization & Programming (CIP)
By selecting “EWS adjustm.” or “CAS
Calibration” the rolling code tables can be
initialized.

By selecting “Yes” the calibration/initializa-


tion of the rolling code tables in the DME
and CAS or EWS modules will be carried
out.

23
Coding, Individualization & Programming (CIP)
Vehicle - Service Function

The “Service function” feature provides


access to various calibration functions.

Selecting “LWS” will provide the ability to


calibrate the steering angle sensor.

By selecting continue the process to cali-


brate the steering angle sensor will be car-
ried out.

24
Coding, Individualization & Programming (CIP)
Vehicle - Complete Encoding

“Complete encoding” provides the ability


to code/recode all control modules installed
in the vehicle.

Recoding all the installed control modules


may result in in the loss of initialization or
system settings such as radio station presets
or seat/mirror memory.

By selecting “Yes” all installed control mod-


ules will be recoded based on the informa-
tion contained in the Vehicle Order.

25
Coding, Individualization & Programming (CIP)
CIP Functions - If Yes
After selecting “Yes” on the Yes/No selec-
tion screen a determination/check of all
installed control modules is performed.

Upon completing a check of the installed


control modules, a list highlighting the
installed control modules is displayed.
Select the control module(s) that were
replaced and select continue.

After selecting the replaced module(s) and selecting continue a measures plan will be
generated which compares the integration levels (actual vs. target) for not only the mod-
ules replaced but for all installed modules as well. If any of the installed control modules
do not match the target level they will be updated along with the replacement modules.
For additional information pertaining to programming replacement modules refer to
SI B09 05 01.

26
Coding, Individualization & Programming (CIP)
CKM - Individualization (Vehicle & Key Memory)

The CKM feature contained in CIP (for models produced as of the E65) provides the abil-
ity to “customize” certain vehicle and key functions to meet the specific preferences of
the customer. It is important to note that the functions/features that can be “customized”
will vary depending on model, equipment level and vehicle software level.
Upon selecting “CKM” a check of the current vehicle and key settings is made and dis-
played. The displayed settings list should be printed out and provided to the customer in
order for them to select how the available functions should be set. The CKM function
contained within CIP allows settings for both vehicle and keys to be made directly, the
older version separates the key settings from the vehicle setting as different functions.
On older vehicles the Car Memory and Key
Memory settings can be accessed via the
SGC/UNIX function (refer to Progman
Module and the section pertaining to
accessing CIP Functions for
E31/E32/E34/E36/E38/E39/E46/E52/E53).

Detailed information pertaining to CKM configuration is available in SI B09 03 98.

27
Coding, Individualization & Programming (CIP)
Upon selecting “CKM” a check of the cur-
rent vehicle and key settings is made.

Once the check is complete the current set-


ting are displayed and can be printed out.

Changes to the current settings can be


made by selecting the preferred function.
Note: Some preference settings can be
made that are specific to the key
being used.

28
Coding, Individualization & Programming (CIP)
The factory default setting are identified by a
“factory” symbol.
To except/code the new setting to the vehi-
cle or key select “Encode car”.

To lock the changes to the vehicle and/or


keys select “Save”.
By selecting back additional changes can be
selected or the function aborted.

Once the new values are stored/set a final


report showing the new setting will be dis-
played. The report will also show if the
effected modules did or did not accept the
changes.

29
Coding, Individualization & Programming (CIP)
ZCS Coding Procedure
The ZCS coding procedure can currently be performed with the DISplus using DIS CDs
until DIS CD 42 is released at which time all SGC/Unix coding and programming func-
tions will be available only via Progman using the GT1 or SSS.
There are two methods of encoding replacement control modules:
• Manual input of ZCS
• Automatic ZCS retrieval and coding

Coding Control Modules that Store the ZCS


On earlier production vehicles when replacing a control module that stores the ZCS code
(i.e Kombi?Instrument Cluster) the information must be entered manually in order to code
the replacement module. The ZCS code from the label located in the vehicle or a print-
out of the code stored in the module to be replaced must be entered into the new mod-
ule.
The control modules that store the ZCS and require manual input are:
• IKE - E38
• EKM - E31
• Instrument Cluster - E32/34 (After 9-91) & E36 (except 318ti and Z3 Roadster)
• EWS II - 318ti & Z3 Roadster

Note: As long as the defective EWS II control module can communicate with
the coding equipment, automatic encoding is possible.

On later production vehicles where the ZCS information is stored in two modules, redun-
dant data storage, the ZCS information to code the replacement module can be obtained
from the second/backup module.
Vehicles which have redundant ZCS data storage are:
• E36 (Z3) - Instrument Cluster & EWS II as of 9/98
• E39 - Instrument Cluster & EWS II
• E46 - Instrument Cluster & LSZ
• E53 - Instrument Cluster & LSZ

Note: E46 changed from ZCS to a Vehicle Order (VO/FA) vehicle data structure
in 9/01.

30
Coding, Individualization & Programming (CIP)
Manual Input of ZCS Data

From Progman establish a connection to the


interface connected to the vehicle and
access CIP.

To perform the procedure from CIP


the Model series must be selected
(3 series, 7 series ...).

Then select the body (E32, E36 ...).

Select “Codierung ZCS/FA”.

Then advance screen to the right two times


to enter the vehicle series selection screen.

The version ID page is displayed.

Make sure it is the most up-to-date version


of the software for the encoding procedure.

Press the right arrow.

31
Coding, Individualization & Programming (CIP)
Select vehicle series (i.e “E36 Series”).

Select “Recoding”.

Then advance screen to the right.

Displays control modules that are ZCS


codable.

Example:

Select “KOMBI”.

32
Coding, Individualization & Programming (CIP)
Select “Yes” to recode KOMBI.

Follow the instructions given on screen.

Chassis number of vehicle is displayed.

Select “Yes” to accept VIN.

Select “No” if VIN needs to be changed.

When installing a new module the last 7


digits of the VIN will need to be entered.

33
Coding, Individualization & Programming (CIP)
Follow the instructions given on screen.

Chassis number of vehicle is displayed, enter


VIN using touch screen pad or the keyboard
on an SSS.

Select “Yes” to accept VIN.

Select “No” if VIN needs to be


changed/corrected.

When installing a new module the last 7


digits of the VIN will need to be entered.

Current ZCS code is displayed

Select “YES” to accept current code

Select “No” to change the ZCS data

When installing a new module the ZCS code


of the vehicle will need to be entered. The
information can be obtained from:
• ZCS print out of old module before
removal
• ZCS label located in vehicle

34
Coding, Individualization & Programming (CIP)
If the ZCS code must be changed follow the
instruction given on screen and enter the
required information exactly as indicated on
the ZCS label or printout of ZCS code
before removal of module.

Confirm or enter new GM information.

Confirm or enter new SA information.

35
Coding, Individualization & Programming (CIP)
Confirm or enter new VN information.

Confirm or correct ZCS information.

Select “Yes” to begin the coding process


for the installed/selected module.

Upon completion of the coding process print


out a copy of the ZCS information displayed
and attach it to the repair order to be main-
tained with vehicle file.

Switch ignition off for 10 seconds, then


check for proper system operation.

36
Coding, Individualization & Programming (CIP)
Automatic Coding Procedure
When a control module is replaced that does not store the ZCS code , the replacement
module is coded automatically using the ZCS code. stored in the Kombi, EWS or LSZ.

From Progman establish a connection to the


interface connected to the vehicle and access
CIP.

To perform the procedure from CIP


the Model series must be selected
(3 series, 7 series ...).

Then select the body (E32, E36 ...).

Select “Codierung ZCS/FA”.

Then advance screen to the right two times to


enter the vehicle series selection screen.

37
Coding, Individualization & Programming (CIP)
The version ID page is displayed.

Make sure it is the most up-to-date version


of the software for the encoding procedure.

Press the right arrow.

Select vehicle series (i.e “E36 Series”).

Select “Recoding”

Then advance screen to the right.

38
Coding, Individualization & Programming (CIP)
Displays control modules that are ZCS
codable.

Example:

Select “ZVN II/GM (ZKE IV)”.

Confirm module selection.

If a replacement module is to be installed


install it now.

39
Coding, Individualization & Programming (CIP)
Select yes to begin coding or recoding the
selected module.

Coding/recoding process of selected module


is complete, follow the instructions given.

40
Coding, Individualization & Programming (CIP)
Additional ZCS Coding Functions

Retrofit
The retrofit function allows options or accessory equipment to be added after the vehicle
is manufactured.
By selecting to install a new option/accessory from the list of available retrofits for the spe-
cific vehicle, the ZCS information will be updated to reflect the addition of the new option
or accessory that was installed. Updating of the ZCS information will ensure that the new
component is recognized and able to communicate with the other modules in the vehicle.

Conversion
The conversion function allows specific features of certain control modules/systems to be
modified, similar to the way Individualization(Vehicle & Key Memory) is used on newer
models to “customize” a vehicle.

41
Coding, Individualization & Programming (CIP)
Glossary

A
ABS
Anti-lock Braking System - A system which prevents individual wheel lockup by monitor-
ing individual wheel speeds. The braking at each wheel is regulated by a series of elec-
tronically controlled valves which regulate the brake pressure. If the system detects an
impending lockup at any wheel, the brake pressure is pulsed to prevent lockup. This
enables the vehicle to be controlled during panic braking situations. This system has
been on all BMW models since 1986 and is now incorporated into the DSC system.
ABS systems are manufactured for BMW by Bosch and Teves.
(German: Antiblockiersystem)

ACC
Active Cruise Control - ACC is an enhanced cruise control system consisting of a front
mounted radar sensor which is used to detect vehicles traveling ahead in the traffic lanes.
The radar sensor is connected to the PT-CAN bus and communicates with the DME and
DSC. This system communicates with throttle and braking systems to keep a specified
distance (by time) between vehicles. Currently, this system is available as an option on all
E6X vehicles.

Active Safety
This is a design philosophy which assists the driver in avoiding potential accidents. Any
system which helps the driver retain precise control of the vehicle can be part of the over-
all active safety design. Systems such as DSC or ABS is conjunction with steering and
suspension systems can assist the driver in actively avoiding a dangerous situation. Also
any system which helps the driver to maintain attention on the road can also be a part of
the active safety philosophy. The RLS, driving lights, AHL are some of the systems that
become important during traffic and adverse environmental conditions.

A/D
Analog to Digital - This is method of converting analog signal into digital information
which allows electronic information to be shared electronically between processors.

AFS
Active Front Steering - This system consists of an electronically controlled steering rack
that incorporates a planetary gear set which allows a continuously variable steering ratio.
The system consists of a special steering rack, control module and support electronics
which are connected to the F-CAN. AFS is currently installed as an option on the E60,
E63 and E64.

1
Glossary
AHPS
Advanced Head Protection System - This system consists of a tubular airbag similar to
ITS but with the addition of a fabric sail. This sail adds additional protection by retaining
the occupant during a side impact and shielding the occupant from debris and glass
splinters. AHPS II protects the rear passengers in addition to the front passengers.

AIC
Automatic Interval Control - This is an intermittent wiper system which is dependent
upon input from a rain sensor. The rain sensor uses the principle of refraction to deter-
mine the rain intensity. The rain sensor is connected to the relevant bus system (K-bus)
and sends rain intensity information to the body electronics which in turn controls the
wiper interval. The wiper interval is also based on sensitivity input from a control knob
mounted on the wiper stalk switch. AIC has been in use since 1999 and was subse-
quently installed on all BMW models. (German:Automatic Intervall Control/Regensensor)

AITS
Advanced Inflatable Tubular Structure - See AHPS

AKS
Active Head Restraint System - This system which is used on the E65,E66 and E60
reduces the risk of cervical vertebrae injuries (whiplash). It consists of a deployable head-
rest which reduces the distance between the occupants head and the headrest.
German: Aktive Kopfstütze)

ARS
Active Roll Stabilization - ARS is a part of the dynamic drive systems introduced on the
E65/E66. The system consists of hydraulically controlled stabilizer bars that are con-
trolled via the ARS module. ARS is designed to minimize body roll during turns. ARS is
also now available on the E60, E63 and E64. (German: Aktive Rollstabilisierung)

ASE
Advanced Safety Electronics - This is a byteflight based passive safety system which is
based upon the ISIS network on the E65/E66. Introduced on the E85, it was modified for
use on the E60, E63 and E64.

ASK
Audio System Controller - This is the primary audio system controller used on the
E65/E66. It is an connected to the MOST bus and acts as the main controller for the
audio system and the MOST bus. (German: Audio-System-Kontroller)

AWL
Airbag Warning Lamp - The AWL is a visual indicator for for faults related to passive safe-
ty systems. It is used on all vehicles equipped with SRS/Passive safety systems. It is
located in the instrument cluster.

2
Glossary
B
BLS
Brake Light Switch - The brake light switch is used as an input to brake related systems
such as ASC/DSC. It is also used to actuate the brake lights as well as to control the shift
lock. (German: Bremslichtschalter)

BMW
Bavarian Motor Works (German: Bayerische Motoren Werke)

BST
Battery Safety Terminal - This system is used to isolate (disconnect) the main battery ter-
minal connection during an impact. It is a pyrotechnic device which protects the main
battery cable from short circuits by disconnecting the battery during moderate to severe
impacts. See Also SBK

byteflight
The byteflight is a fiber optic bus network designed for use with passive safety sys-
tems. It is comprised of a star structure which uses a centrally located module
(SIM/SGM) with a series of satellites arranged in a radial pattern around the central mod-
ule. byteflight can be found on vehicles equipped with ISIS or ASE. The byteflight bus
is also referred to as the SI (Safety and Information Bus) Bus.

BZM
Center Console Control Center - This BZM is on the K-CAN on the E65/E66. It provides
a connection between the i-Drive controller and the K-CAN. The BZM does not have
any control over the I-Drive or controller functions. The seat adjustment and seat heater
switches are also connected to the BZM. (German: Bedienzentrum Mittelkonsole)

C
CAN
Controller Area Network - This is a bus system which uses a high speed two-wire config-
uration. This bus is capable of transferring data bi-directionally at a rate of up to 500kbps.
Originally introduced on 1993 models for use on powertrain related systems, the CAN
bus has evolved into body electronics systems as well. Some of the new CAN bus sys-
tems are K-CAN, PT-CAN and F-CAN.

CIP
Coding Individualization and Programming - Beginning with the E65. a new method of
coding and programming was introduced. It consists of an FA (Vehicle Order) code
which is used to determine the level of equipment installed on the vehicle. CIP allows
for easy software upgrades as well as individualization of vehicle features.

3
Glossary
D
DISA
Differential Intake Air Control - The DISA system provides for a variable intake runner
length. The first use of DiSa was on the M42B18 engine. There have been numerous
variants of DiSA since introduction. The variable intake provides for low RPM torque
when needed as well as high torque in the upper RPM range.
(German: Differenzierte Sauganlage)

DSC
Dynamic Stability Control - This is a system which monitors various vehicle inputs such
as wheel speed, yaw rate, braking input to dynamically control braking and throttle sys-
tems. It can assist in correcting for oversteer and understeer situations. DSC consists of
a hydraulic unit and pump along with an electronic control module. There are several
variations of this system depending upon vehicle application. The systems are primarily
supplied by Bosch and Teves. (German: Dynamische Stabilitäts Control)

DTC
Diagnostic Trouble Code - As per SAE J1930 terminology, the term DTC replaces the
former term fault code or trouble code etc.

DTC
Dynamic Traction Control - DTC is a sub-function of DSC. The DTC function can be acti-
vated with the DSC button and provides two subfunctions. They two subfunctions are
the “sports tuning” of the Automatic Stability Control (ASC) and the Dynamic Stability
Control (DSC) and improved traction, particularly on ground surfaces with a low coeffi-
cient of friction.

E
EBV
Electronic Brake Force Distribution - This is one of the DSC sub functions which allows
for equal brake force distribution on turns while braking to compensate for weight shifts
and unequal suspension loads. (German: Elektronische Bremskraftverteilung)

ECO
Electronically Controlled Orifice - This refers to the ECO valve used in conjunction with
the Active Front Steering System (AFS). This provides for additional power steering fluid
flow for the AFS when needed. It is part of the power steering pump and is electronically
controlled by the SGM.

4
Glossary
EDC
Electronic Damper Control - The EDC system is designed to provide variable damping of
the shock absorbers during changes in road conditions. The system consists of a main
control unit, shock absorbers (struts) with solenoid valves, a series of acceleration sen-
sors and input from the steering angle sensor.
(German: Elektronische Dämpfer Steuerung)

EHC
Electronic Height Control - EHC provides for a variable rear height control to compensate
for vehicle loading to maintain proper rear camber settings. The system uses a pneumat-
ic pump with a pair of rear air springs. The system also uses rear height sensors to moni-
tor the ride height which are an input to the EHC control module. This system is used
exclusively on the E39 Sportwagon, the E53 X5 and the E65/E66. There is also a dual
axle version (EHC II) which is offered as an option on the X5.
(German: Elektronische Höhenstands Control)

EKP
Electric Fuel Pump - Any electric fuel pump is referred to as EKP. For example, The EKP
relay is the fuel pump relay. In addition, some fuel pumps are variable speed controlled
by an EKP module. Vehicles such as E46 M3 use a variable speed fuel pump based on
various inputs from DME. (German: Elektrische Kraftstoffpumpe)

EML
Electronic Motor Load Regulation - EML is electronically controlled throttle system.
Originally introduced on the M70B50 (V-12) engine, the system has been modified for
use on subsequent BMW models. As of 1999, all engines on BMW vehicle were
equipped with some form of electronic throttle control. Although all of the other engine
use a form of EML there are numerous differences in terminology. To reference the other
systems, see the glossary definitions for MDK, EDK and EDR.
(German: Elektronische Motorleistungsregulierung)

EWS
Electronic Driveaway Protection - EWS is designed to prevent the vehicle from starting by
using a electronically coded ignition key. The key contains a electronics identification
code which is changed each time the vehicle is started. There have been numerous ver-
sions of this system which have been in use in BMW models since the 1994 model year.
(German: Elektronische Wegfahrsperre)

5
Glossary
F
FA
Vehicle Order - The vehicle order is an “electronic list” of options which is electronically
stored within the vehicle. The FA code is used by CIP to determine equipment levels and
optional systems to facilitate coding and programming processes.
(German: Fahrzeug-Auftrag)

FB
Functional Description - When looking up electrical schematics in the diagnosis program
(DISplus/GT-1), the FB is used to determine the function and operation of the relevant
system. As of 2003, the FB has been replaced by SBT (Service Bulletin Technical) which
can be found in WebTIS. (German: Funktionsbestätigung)

F.I.R.S.T.
Fully Integrated Road Safety Technology - This is the corner stone behind BMW’s safety
philosophy. This strategy is used by BMW to develop all safety related systems. This
technology consists of various active and passive safety features designed to help the
driver avoid accidents as well as protect the occupants in the event of an unavoidable
accident.

G
GPS
Global Positioning System - GPS is a system of used to determine an exact position on
the Earth. The GPS system is capable of reading positioning data transmitted by a series
of geosynchronous satellites. GPS work in conjunction with other vehicle systems to
create a system allowing the customer s to view a road map and a series of audible and
visual prompts to locate a specific location or address.

GM
General Module - The general module is the main controller of the Central Body
Electronics system (ZKE). This module is responsible for power locks, windows,
wiper/washers, interior lighting etc. The GM is part of ZKE versions I, II III, IV and V.
Depending upon application, the GM is also an integral part of the various bus systems in
use. For example, the GM on the ZKE III system is the main controller for the P-bus and
provides a gateway between the P-bus and K-bus. (German: Grundmodul)

GRAV
GRAV refers to the lightweight front construction concept introduced on the E60. GRAV
is comprised of using lightweight aluminum materials for the chassis construction.
Specifically from the bulkhead forward. GRAV is also used on the new 6 series as well.
(German: Gewichtsreduzierter Aluminiumvorderbau)

6
Glossary
H
HDC
Hill Descent Control - This system, which is used on vehicle which have AWD such as
the E46iX, E53 and E87, allows for controlled descents on steep inclines. HDC regulates
brake and throttle to allow the driver to concentrate on steering the vehicle rather than
focusing on brake and throttle controls. There is a console mounted activation switch
which activates the system only if a specified criteria is met.

HFM
Hot Film Air Mass Meter - This is a form of air mass meter which uses a heated film
rather than the previous hot-wire arrangement on the HLM. The primary benefit of this
type of air mass meter is the elimination of the burn-off circuit. The surface area of the
hot film is not prone to effects from contamination, therefore the burn-off cycle is not
needed. HFM was introduced with the M60 engine in 1993 with DME version M3.3 and
has been in use since. (German: Heißfilm-Luftmassenmesser)

HLM
Hot Wire Air Mass Meter - This type of air mass meter was the successor to the “vane
type” airflow meter in use for years with various versions of engine management. The
HLM uses a hot-wire to measure air mass. This is done by monitoring the amount of cur-
rent required to maintain the hot-wire at a specific temperature. Due to the potential con-
tamination of the hot wire from airborne contaminant's, the wire is heated to a high tem-
perature after engine shutdown to clean the wire before the next startup cycle. The HLM
was used on vehicles equipped with Bosch LH -Jetronic a.k.a. DME M1.2 and M1.7 sys-
tems. (German:Hitzdraht Luftmassenmesser)

HPS
Head Protection System - This system consists of an Inflatable Tubular Structure (Head
airbag) used to protect occupants head in the event of a side impact. HPS is an integral
part of the BMW passive safety systems. (see also ITS)

HUD
Heads Up Display - This system projects a display on the windshield which provides the
driver with information such as vehicle speed etc. Originally introduced on the E63 and
E64, this system is also currently available on the E60.

7
Glossary
I
IBS
Intelligent Battery Sensor - The IBS is a mechatronic intelligent battery sensor with its
own microcontroller. The IBS is connected to the negative battery terminal and is used to
measure battery terminal voltage, discharge/charge current and battery (electrolyte) tem-
perature. The information collected by the IBS is used to determine battery SoC and
SoH. This information is sent to the DME via the Bit Serial Data interface (BSD).
(German: Intelligenter Batteriesensor)

IKE
Instrument Cluster Electronics - The IKE is the processing electronics located in the
instrument cluster. The high version instrument cluster used on the E38, E39 and E53
contains the IKE. The instrument cluster used on these vehicle (except base kombi) is a
display unit and performs no processing functions. The IKE contains all of the processing
electronics. The early version IKE was attached to the back of the instrument cluster and
connected by a ribbon cable. On later versions, the IKE was integrated into the cluster
housing. (German: Instrumentenkombination-Elektronik)

ISIS
Intelligent Safety Information System - This is a passive safety system which is used on
the E65/E66. It uses the byteflight fiber optic bus system.
(German: Intelligentes Sicherheits- und Informations-System)

ISN
Individual Serial Number or Individual Control Unit Number - The ISN is a signal which is
transferred between the DME and EWS systems. This is a “coded” signal which allows
the vehicle to be started. If the correct key is not inserted into the ignition, the EWS mod-
ule will not send the ISN which will not allow spark and fuel injection to occur. The ISN is
stored in both the DME and EWS module. When changing either of these modules, the
ISN must be transferred electronically to the new module using the DISplus or GT-1.
Failure to do so will prevent the engine from starting. Later models, (from 1999) use a
“rolling code” ISN which is dedicated to both the DME and EWS modules. This prevent
modules from being swapped between vehicle which further enhances the security of the
EWS system. (German:Individuelle Steuergeräte-Nummer)

ITS
Inflatable Tubular Structure - This is a tubular shaped airbag which is part of the HPS
(Head Protection System). It is designed to provide the vehicle occupants with head pro-
tection during side impacts. When deployed the ITS emerges from the roof panel trim
and stretches across from the A to B pillar at head level.

8
Glossary
K
KBM
Body Basic Module - The KBM is the primary control module for the body electronics on
the E60, E63 and E64. The KBM has the responsibility for the power windows, locks,
windshield wiping/washing, interior lighting and the consumer shutdown. Located behind
the glove box, the KBM communicates with other vehicle systems via the K-CAN.
(German: Karosserie-Basis-Modul)

Kombi
The term Kombi literally means “cluster” in German language, it is a short version of the
word “Instrumentenkombination”. It refers to the instrument cluster.

L
LCM
Lamp Check Module - This is the main controller for the exterior lighting on the E53, E38
and E39. This module combines the electronics for lamp control as well as the check
control system. This term should not be confused with LKM (German: Lamp Kontrol
Modul). The LKM was used on earlier vehicles (E31, E32 and E34) for exterior lighting
control only.

LDP
Leak Diagnosis Pump - This is an engine vacuum controlled pump used to detect evapo-
rative emission leaks. The LDP was used on vehicles with MS42, M5.2.1 to meet OBD
requirements for evaporative leak detection.

LED
Light Emitting Diode - An LED operates like any other diode. It only passes current in
one direction. But when forward biased, it will emit light. LED’s are used on numerous
systems on BMW vehicles. Mostly as indicators on switches and controls.

LEV
Low Emissions Vehicle - LEV is an emission standard created by CARB/EPA. The LEV
standard reduced vehicle emissions by 70% and was part of the 1998 vehicle standards.

LIN
Local Interconnect Network - The LIN bus is a serial communications bus used in the
automobile industry. LIN is a single wire, bi-directional bus which used a main controller
and several server units. It can communicate at a rate of 19.2 Kbps., but most BMW
applications communicate at 9.6Kbps. Currently the LIN bus is used on the E60, E63
and E64 for systems such as IHKA, AHL and the SBFA. Also, the E46 has adopted the
LIN bus for AHL and mirror operation.

9
Glossary
LL
Idle or Closed Throttle Position - This term is used in various diagnostic programs. It is
usually seen in the status requests and refers to the position of the throttle. In this case,
LL stands for the German term - “leerlauf “or idle.

LRE
Steering Wheel Electronics

LSE
Steering Column Electronics

LSZ
Light Switching Center - This is the primary controller for the exterior lighting on the E46.
It is connected to the K-bus and provides the lamp control and check control functions.
(German: Lichtschaltzentrum)

M
M-ASK
Multi-Audio System Controller - The M-ASK is used as the main controller for the audio
systems on the E60, E63 and E64. It is connected to the MOST bus and provides a
gateway to K-CAN. The M-ASK contains the ASK, aerial amplifier/tuner and the MOST
CAN gateway. (German:Multi-Audio-System-Kontroller)

MBC
Maximum Brake Control - MBC is a sub-function of the Dynamic Stability Control sys-
tem. The MBC function is designed to support driver initiated braking by building up
pressure in the rear brake circuit when the front wheels are already in ABS regulation.
The additional braking pressure is designed to bring the rear wheels up to the ABS regu-
lation point shortening the stopping distance. MBC is mainly effective when the rear of
the vehicle is fully loaded. The MBC function is triggered when the brakes are applied
more slowly than the threshold needed for a DBC regulation.

MDK
Motorized Throttle Valve - The MDK is an electronically controlled throttle system used
on the MS42.0 engine electronics. It is a derivative of the original EML but is controlled
directly by the ECM with no separate control module required. The MDK is a self con-
tained unit which houses the electronic throttle motor, PWG and feedback potentiome-
ters. (German: Motorische Drosselklappe)

MID
Multi Information Display - The MID is used on the E38, E39 and E53. It acts as a dis-
play and provides controls for the audio system and BC functions. The MID performs no
calculations but only a means of display and input functions. It is connected to the I/K
bus.
10
Glossary
MOST
Media Oriented System Transport - The MOST bus is a fiber optic network, used to
carry data, voice, audio and video signals. It has a data rate of 22.5 Mbps. MOST was
introduced on the E65/E66 and is now currently used on the other E6x vehicle. Future
applications include the E90 and E91.

MRS
Multiple Restraint System- Starting with the E39 in 1997, the Multiple Restraint System
was the new generation of passive safety systems which brought side impact airbags
along with other subsequent innovations to the BMW model line.
German: Mehrfach-Rückhaltesystem)

MRSA
Side Impact Sensor - used on MRS systems, this sensor is used to detect side impacts.
It is installed in a lateral direction near the b-pillar.

MSR
Deceleration Slip Regulation or Engine Drag Torque Reduction - This is a sub-function
of ASC/DSC designed to limit wheel slip during deceleration on low-friction surfaces
such as ice, snow leaves etc. This system limits slip by increasing idle speed and
advancing ignition timing during deceleration when wheel slippage is detected.
(German:Motorschleppmomentregelung)

N
NVRAM
Non-Volatile Random Access Memory - This is a random access memory which is not
affected by the loss of battery voltage. NV-RAM is used to store fault codes on most new
systems.

O
OBC
On Board Computer - The OBC is a driver information computer used to calculate fuel
consumption, fuel tank range, outside temperature etc. It has been used in numerous
applications over the years. Also referred to as “board computer” or BC, these BC func-
tions are still used on many current BMW vehicles.

OBD
On Board Diagnostics - OBD is a standard set forth by CARB/EPA to standardize engine
management diagnostics. The current OBD standard a.k.a OBD II requires a standard
diagnostic connector for all vehicle manufacturers as well as a standardized fault code list.

11
Glossary
OC-3
Occupant Classifier-3 - This is a new version of the SBE system which is designed to
determine the approximate weight and size of the passenger. This system detects the
contact pattern of the occupant to determine whether or not to deploy the front passen-
ger airbag (and side airbag). This system is currently found in the E60 and E83.

OPPS
Optic Testing and Programming Systems - This is a modified diagnostic head used to
expedite programming procedures. OPPS also for checking the MOST bus and byte-
flight fiber optic systems via separate adapter cables. The OPPS contains software and
hardware to check to attenuation of fiber optic signals.
(German: Optisches Prüf- und Programmiersystem)

OPS
Optic Programming System - This provides the same capabilities as OPPS but without
the hardware and software for checking the attenuation of the byteflight bus.

ORVR
On Board Refueling and Vapor Recovery - This is a system which allows for excess
vapors to be contained during vehicle refueling. This system is a part of the OBD II
emission standards.

P
PDC
Park Distance Control - The PDC system consists of a series of sonar sensors mounted
on the front and/or rear bumper of the vehicle. The sensors sense the distance of other
vehicles or obstructions when parking. The sensor send a signal to the PDC module
which triggers and audible signal to determine the distance between the vehicle and the
potential obstruction. This information allows the driver to judge distances during parking
maneuvers.

PTC
Positive Temperature Coefficient - PTC refers to a resistance element such as a ther-
mistor in which the resistance properties are proportional to temperature. In the case of a
PTC thermistor, the resistance will increase as temperature increases. This is in contrast
to an NTC thermistor in which the resistance will decrease when temperature increases.

PuMA
PuMA
(German: Problem- und Maßnahmenmanagement Aftersales)

12
Glossary
PWG
Pedal Position Sensor - This is a sensor which is used to measure the position of the
accelerator pedal on vehicles equipped with electronically controlled throttles. Variations
of the PWG are used on all versions of electronic throttle control, however they differ
slightly in construction and function. Some PWG sensors are comprised of a convention-
al potentiometer while other version use a linear hall sensor. (German: Pedalwertgeber)

PWM
Pulse Width Modulation - Pulse width modulation is a method of signal transmission
which varies the time of the signal rather than the voltage. PWM can also be used on a
motor control circuit or illumination circuit to control the total current. For instance, by
modulating the on time of an LED or bulb circuit, the brightness can be controlled. Also,
by varying the PWM of a signal transmission circuit, various commands can be communi-
cated to other systems. An example of PWM of BMW systems would be the dash illumi-
nation circuit (KL58g) or the cooling fan control circuit used on most current engine elec-
tronics systems. (German: Pulsweitenmodulation)

R
RAM
Random Access Memory - RAM is used for the temporary storage of data or programs
etc. RAM, as the name suggests, permits random access to the stored information. This
means that all storage locations are equally accessible in the same amount of time. RAM
has also read/write capabilities. RAM can be volatile or non-volatile. Volatile RAM means
that data would be lost in the event of a power loss whereas non-volatile RAM (NVRAM)
would retain data in the event of a power loss.

RDC
Tire Pressure Control - The RDC system consists of wheel mounted pressure sensors
which send tire pressure and temperature information to the central (RDC) module.
There are individual antennae which are mounted at each wheel well that receives infor-
mation from sensors which are part of the valve stem assembly. This system is used on
the E65/E66 and as an option on some E46 vehicles.
(German: Reifen Druck Control )

13
Glossary
RDW
Tire Pressure Warning System - The RDW system is designed to monitor tire for a loss in
tire pressure. This system does not measure tire pressure, but uses the wheel speed
sensors to monitor the rotational speed of the tire and wheel assembly to determine loss-
es in tire pressure. RDW requires no additional sensors or modules. The system is part
of the DSc system and only requires an input switch to the DSC module for initialization.
(German: Reifendruckwarnung)

RLS
Rain and Light Sensor - the RLS detects rain as well as ambient light. This signals are
transferred along the bus systems to provide information to the lighting and wiper sys-
tems. The RLS is part of AIC and replaces the former Rain Sensor. For example, when
rain is present, the wipers are switched to the appropriate intermittent speed to maintain
a clear windshield. If insufficient ambient light is detected, the lighting system is signaled
to activate the headlights (if in automatic mode).

RPS
Rollover Protection System - This system provides the vehicle occupants with adequate
survival space in a rollover. It consists of a set of deployable rollover bars which are
deployed in the event of an imminent rollover. RPS can be found on convertibles such as
the E36iC, E46iC and E64. BMW roadsters such as the E36/7, E85 and Z52 use rigidly
fixed rollover bars which provide the same level of protection as RPS. (See also URSS)

RXD
Wake-up Diagnosis Line - The RXD line is a part of the diagnosis bus. It is used as a
wakeup signal to the system under diagnosis. It is a 12 volt digital signal that works in
conjunction with TXD. As the diagnosis bus evolved into the newer more familiar D-bus,
RXD was eventually dropped. Later systems used control modules which only needed a
connection to TXD (D-Bus), which was used to wake up the necessary module. This
eliminated the need for RXD. Phase out of the RXD line began in 1999 and most vehi-
cles did not have RXD by 2001.

RZV
Direct Stationary Ignition - This is a distributorless ignition system which uses one igni-
tion coil per cylinder which is triggered by the ECM (DME). This also allows full timing
control over each cylinder and for misfire detection as well. RZV was introduced on the
M42B18 engine and has been used on every subsequent engine system since. The
only exception being the M73 which continued to use one ignition coil per bank.
(German: Ruhende Zündspannungsverteilung)

14
Glossary
S
SAC
Self Adjusting Clutch - The self adjusting clutch was introduced in approximately 1999
as a means of eliminating clutch freeplay adjustments. It consists of a special pressure
plate which requires the use of special tools for installation.
(German: Selbstnachstellende Kupplung)

SAE
Society of Automotive Engineers - SAE is a US based organization which has more than
84,000 members - engineers, business executives, educators, and students from more
than 97 countries - who share information and exchange ideas for advancing the engi-
neering of mobility systems. SAE sets the standards for development, events, and techni-
cal information and expertise used in designing, building, maintaining, and operating self-
propelled vehicles for use on land or sea, in air or space. For example, SAE is responsible
for setting the standards for automotive items such as bolts, bulbs and raw materials.
The German equivalent of SAE is DIN - German Industrial Standard.

SASL
Satellite A-pillar, Left - The SASL is a satellite module which is part of the byteflight bus
system. It is a remotely mounted satellite which contains accelerometers for detection of
impacts, but also contains circuits used to deploy airbags and other pyrotechnic devices.
(German: Satellit A-Säule links)

SASR
Satellite A-pillar, Right - See SASL, the SASR is provides the same functionality but is
located in the right side a-pillar. (German: Satellit A-Säule rechts)

SBE
Passenger Seat Occupancy Detection System - This system is used by the various pas-
sive safety systems to determine whether or not the passenger seat is occupied.
(German: Sitzbelegungserkennung)

SBK
This is a German Acronym that stands for Safety Batterie Klemme - This is the German
term for Battery Safety Terminal. See also BST.

SBSL
B-pillar Satellite, Left - This is a satellite module used on the byteflight system. It is used
on the ASE and ISIS system to collect acceleration data and to actuate airbag ignition cir-
cuits. The function of this satellite is dependent upon application. The ASE and ISIS
systems use the SBSL differently with regard to function and location. Refer to relevant
training material for more information. (German: Satellit B-Säule links)

15
Glossary
SBSR
B-pillar Satellite, Right - See SBSL, this sensor is the same as SBSL. It is installed at the
right b-pillar. (German: Satellit B-Säule rechts)

S/E
Send and Receive - This refers to a module or system which sends and receives
electronic information and messages. For example, the SIM contains S/E modules which
are connected to the satellites via byteflight. The S/E modules send as well as receive
optical signals and convert them to electrical signals with the help of the star coupler.

SFZ
Center Vehicle Satellite - This is a satellite module which is used on vehicles equipped
with byteflight based passive safety systems. It is mounted in the center of the vehicle,
usually under the center console . (German: Satellite Fahrzueg Zentrum)

SFZ-R
Center Vehicle Satellite with rollover protection - Same as SFZ, used on the E64 only. It
provides the same functions as the SFZ, but with added sensors for rollover protection.

SG
Control Unit - (German: Steuergerät)

SGM
Safety and Gateway Module - The SGM is the main controller of the byteflight on the
ASE system (E60,E63,E64). The SGM combines the functions of the SIM and ZGM
used on the ISIS system. (German: Safety Gateway Modul)

SGS
Seat Integrated Belt System - This is a seat belt system which is integrated into the seat.
There are no outside seat belt connection points to the b-pillar. The entire seat belt sys-
tem is contained within the structure of the seat. This type of arrangement is used on
vehicles where seat belt attachment to the b-pillar is impractical such as the E31 and the
E46 and E64 convertibles. (German: Sitzintegriertes Gurtsystem)

SIA
Service Interval Indicator -(German: Service-Intervall-Anzeige)

SIM
Safety and Information Module - The SIM is the main controller of the byteflight on the
E65/66 and the E85. (German: Sicherheits-Informationsmodul)

SLP
Secondary Air Pump- An electric air pump used to inject air into the exhaust system
upstream of the catalytic converter. This reduces startup HC emissions. This system is
triggered by the DME via the SLP relay. (German: Sekundär-Luft-Pumpe)

16
Glossary
SMBF
Seat Module, Passenger - The SMBF is a seat control module used on the E65/E66. It
has the main responsibility for controlling seat functions by actuating the seat motors
based on requests from the seat switch blocks. It is connected to the K-CAN-P and is
located under the respective seat. (German: Sitzmodul Beifahrer)

SMFA
Seat Module, Driver - The SMFA has the same functions of the SMBF. The SMFA con-
trols the driver’s side seat functions. See SMBF. (German: Sitzmodul Fahrer)

SMG
Sequential Manual Gearbox - The SMG system is a manual transmission which is con-
trolled using electro-hydraulic means. The SMG system uses an electronic control unit.
The SMG control unit monitors various input parameters. The SMG control unit
processes this input information and provides the electronic control for the transmission
via electro-hydraulically controlled actuators. This allows for a “clutchless” manual trans-
mission which can be shifted via a pair a paddle shifters on the steering wheel or by a
console mounted shifter which is a electronic input to the SMG control unit. This system
was introduced on the E46 M3 in 2002 and subsequently added to the E85, E46, E60.
E63 and E64.
(German: Sequenzielles M Getriebe or Sequenzielles Manuelles (Schalt-)Getriebe)

SRS
Supplemental Restraint System - This system refers to the airbag systems used on
BMW vehicles. It is also a generic automotive industry term for vehicles with airbags.

SSBF
Seat Satellite, Passenger - The SSBF is a satellite on the byteflight system used on the
E65/E66. The satellite is used to actuate igniter circuits for the front passenger airbag
and the active head restraint. The SSBF also contains the seat occupancy electronics
and receives input from the SBE sensor electronics. The input for the belt buckle switch
is also monitored by the SSBF. It is located under the front seat next to the seat module.
(German: Satellit Beifahrersitz).

SSFA
Seat Satellite, Driver - SSFA provides the same functions as the SSBF. The SSFA is
used for the driver’s side functions. Refer to SSBF. (German: Satellit Fahrersitz)

SSH
Seat Satellite, Rear - This is a satellite module which is located under the rear seat on an
E65/E66. It is only used in conjunction with vehicles which have the rear side airbag
option. This module communicates with the SIM via byteflight.

17
Glossary
STVL
Door Satellite, Front Left - this is a satellite module used on byteflight based passive
safety systems. It is mounted on the door, and contains crash sensing devices as well as
pressure sensors to detect impacts by measuring pressure in the door cavity. It is used
on the E65, E85, E60, E63 and E64. The STVL functions are slightly different depend-
ing upon vehicle application. (German: Satellit Tür Vorne Links)

STVR
Door Satellite, Front Right - See STVL, this sensor is the same as STVL but installed on
the right door. (German: Satellit Tür Vorne Rechts)

SULEV
Super Ultra-low Emissions Vehicle

SZL
Steering Column Switch Center- This SZL is a satellite module used as the interface
between the steering wheel electronics (and airbag igniter circuits) and the SIM/SGM via
byteflight. (German: Schaltzentrum Lenksäule )

SZM
Switching Center Center Console - The SZM provides switching functions on various
vehicles. The SZM is connected to the K-Bus and processes switch functions for sys-
tems such as DSC, RDW, Seat Heating etc. The SZM is located in the center console
below the radio and IHKA control units. The SZM provides switch commands to these
systems via a bus telegram. (German: Schaltzentrum Mittelkonsole)

T
TCU
Telematics Control Unit - The TCU allows for integration of cellular phones into BMW
vehicles. Variations of the TCU also have integrated GPS for location of the vehicle in the
event of an accident. The TCU is used in conjunction with BMW emergency call and
SOS systems. This term can be used in conjunction with TEL as well.

TMBF
Door Satellite, Passenger Door - This is a satellite module which is part of the byteflight
bus. This module is used on the E60, E63 and E64. In addition to crash detection and
pressure sensing devices, the TMBF also contains electronics for body electronic func-
tions such as power windows and door locks. (German: Tur Modul beifahrer)

TMFA
Door Satellite, Driver - This module performs the same functions as TMBF, but is located
on the driver’s side. (German: Tur Modul Fahrer)

18
Glossary
U
URSS
(German: Uberroll Schutz System) - See Rollover Protection System

V
VANOS
Variable Camshaft Control - The VANOS system allows for variable timing control of the
camshaft. (German: Variable Nocken-Steuerung or Variable Nockenwellen-Steuerung)

VVT
Variable Valve Timing - VVT is an alternative (generic) term for Valvetronic.
(German: Variable Ventiltrieb)

Z
ZAE
Central Activation Electronics - ZAE is an early passive safety system which succeeded
the Siemens/Cipro systems in 1993. The main feature of this system is the integration of
the crash sensing elements into one central housing which eliminates the fender mount-
ed mechanical crash sensors. This system was introduced in 1993 and phased out in
the 1997 model year and succeeded by the MRS systems.
(German: Zentrale Auslöse Elektronik)

ZCS
Central Coding Key - This is a special 37-digit code used to code modules to specific
vehicles. It is usually located electronically in the instrument cluster and in an additional
module for redundancy. The code contains information about the vehicle options and
equipment level (i.e. AC or No AC, Auto or manual trans, engine size etc.) This method
of coding modules will eventually be replaced by the FA code (or vehicle order).
19
Glossary
ZGM
Central Gateway Module - The ZGM is a gateway module used in the E65/E66. It pro-
vides a gateway between the various bus systems and the diagnostic interface. All D-bus
communication is funneled through the ZGM which acts as a “traffic cop” between these
various systems. On some vehicles such as the E85, E60, E63 and E64. There is no
separate ZGM, however the ZGM functions have been incorporated into the SIM/SGM.
(German: Zentral Gateway Modul)

ZKE
Central Body Electronics - The ZKE system is responsible for controlling various body
electronic functions. Systems such as power windows, power locks, wipers, and sunroof
are some of the items controlled. ZKE systems usually consists of a central module
referred to as the GM (General Module). The GM acts as the main system controlled and
bus master. There are numerous variations of ZKE. The systems and sub-systems
which are part of ZKE will vary between models. (German: Zentrale Karosserieelektronik)

ZWD
Idle Control Valve (two winding) - This is a type of idle control valve which uses two
opposing windings. The windings are supplied with a common power source and each
winding has it’s own ground circuit controlled by the ECM. One winding is for closing the
idle valve while the other is used for the opening of the idle valve. These two opposing
windings are ground controlled using a PWM signal. In order to control the idle, the ECM
will apply a greater PWM duty cycle to one of the windings. For example, to increase the
idle speed, the ECM would apply an increased duty cycle to the opening winding.
(German: Zweiwicklungs-(Leerlauf-)Drehsteller) (Translation - Two winding idle rotary
actuator)

20
Glossary

You might also like