Introduction to Coding & Programming
Model: All
Production: All
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 various 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 program of a specific control module/component is referred to as "coding".
Scheme 283
Scheme 284
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.
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 selection on DISplus/GT1/SSS
- Selecting customer specific system operational settings from a list of available features (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
Scheme 285
Scheme 286
(Program) into a module/component which already has the systems operating requirements (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.
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 available, 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.
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 inventory 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 preprogrammed 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 programming available in BMW workshops.
Scheme 287
The following advantages have occurred since programming and coding can be performed in the workshop
- Fewer control module hardware versions are needed (only need basic control modules)
- 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, ...)
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 ( E lectrically P rogrammable R ead O nly M emory)
- EEPROM ( E lectrically E rasable P rogrammable R ead O nly M emory)
In essence these devices are similar to the harddrive of the PC ( P ersonal C omputer) 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.
Scheme 288
EEPROM (Electrically Programmable Read Only Memory)
An EEPROM is a computer memory chip that can be electrically programmed and electrically 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, specific equipment and special software is required such as a DISplus, GT1 and an SSS which must all be connected to a network and have the must current version of CIP ( C oding, I ndividualization & P rogramming) 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 ) 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.
Coding & Programming Equipment
Model: All
Production: All
Equipment and Software
Coding and Programming of a control module can only be performed within the workshop 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
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
Scheme 289
GT1 (Group Tester 1)
Used For: Vehicle Diagnosis, Coding, Programming and Individualization
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
Scheme 290
SSS (Software Service Station)
Used For: Vehicle Coding, Programming and Individualization. NO DIAGNOSTIC CAPABILITY.
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
Scheme 291
Diagnostic Head
Interface between vehicle and DISplus, GT1 or SSS
Used For
- Vehicle Diagnosis, Coding, Programming and Individualization
- 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 EQUIPMENT CONFIGURATIONS
Scheme 292
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. 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 systems.
- 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 EQUIPMENT CONFIGURATIONS
Scheme 293
OPS Head - (Optical Programming System)
Interface between vehicle and DISplus, GT1 or SSS
Used For
- Vehicle Diagnosis, Coding, Programming and Individualization
Note. The OPS is not able to perform optical diagnosis of MOST Bus and Byteflight systems 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 EQUIPMENT CONFIGURATIONS
Scheme 294
Deutronic Automatic Battery Charger
Used For
- Maintaining proper vehicle battery voltage level during Diagnosis, Coding and Programming.
- Follow the initial setup of the charger as indicated in the SIB.
Connection
- During Coding or Programming Procedure the battery 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 CONFIGURATIONS
Scheme 295
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) |
HARDWARE OPERATING CONDITIONS
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 status values...) prior to CIP 15.0 all coding and programming information for early production 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 information 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 control module, the ability to code a new module or the ability to perform a new retrofit procedure when installing a new system.
Networks
As the level of technology in our vehicles continues to increase so does the level of technology 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 occurring 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 structures (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, safety, powertrain, etc.) are "stand alone" systems but also require information from other modules/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.
Scheme 296
Depending on the equipment level of the E65, the ISIS may consist of 11 satellite components (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 second in order to be effective, there can not be any processing delays. The SIM is connected 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.
Workshop LAN Network
A network is nothing more than a group of devices interconnected so that they can communicate 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.
Scheme 297
Workshop Network
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 communicate 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.
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 network structure that is used in our vehicles. In order for control modules to communicate with each other they must be correctly identified. The identification 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 component/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 network.
Scheme 298
Network Connections
When establishing a network which will utilize multiple access terminals/jacks it is recommended 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 running to/from the Switched Hub are all numbered on both ends to make troubleshooting 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 troubleshoot a problem with an electrical circuit in the vehicle where all the wires are the same color and the components connected have no pin assignments.
Scheme 299
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.
Scheme 300
Accessing Configuration Information - DISplus/GT1 & Interface(s)
Select "Administration".
Scheme 301
Select "System".
Scheme 302
The screen now displays the network configuration information for the device being used DISplus/GT1.
Scheme 303
Select "Diagnostic Head".
Scheme 304
Select "Free diagnostic head".
Note. In order for an interface to be displayed it must be connected to a vehicle and the ignition turned on.
Scheme 305
Network configuration information for the selected interface is displayed.
Example: A red color band will be assigned to this interface once "OK" is selected.
Scheme 306
Scheme 307
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 |
WORKSHOP LAYOUT INDEX
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 successfully diagnose, code and program a vehicle, it is required to have all equipment connected 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.
Scheme 308
Scheme 309
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/messages to specific devices from specific devices. Allows multiple devices to communicate with each other without reducing data transfer rate.
Cisco Switch WS-C2950-24
Server
Central computer which controls interface/communication between all devices on the Workshop LAN and communication to external networks and internet. Keystone device for network operation along with switch/router.
Scheme 310
Scheme 311
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 interconnect 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 ethernet cable connected to the switched hub is numbered as well, to assist in troubleshooting 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.
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 located 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.
Scheme 312
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 necessary 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 identify 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.
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 current 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.
Scheme 313
Scheme 314
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 network, 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)
Scheme 315
- Diagnosis of complaint is completed and test module result indicates that a control module needs to be updated/reprogrammed.
- Coding and Programming/CIP is accessed on GT1(7) and a request to program specific control module on vehicle (5) connected to OPPS head (6) is made.
- The SSS (1) takes over the programming process and begins to reprogram the control module and recode the vehicle (5).
- At this point the GT1(7) is free to connect to a new OPPS/diagnostic head and begin a diagnostic routine or initiate another programming/coding session on a new vehicle.
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.
Scheme 316
With the release of CIP 15.0 and the implementation 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 connector and directly to the MOST access port on E60, E63/64 and newer vehicles.
OPPS
The OPPS was first introduced with the E65 and is able to
Scheme 317
- 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
Scheme 318
- 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 communication 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.
The diagnostic head is able to
Scheme 319
- 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
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 terminating plug (4) from the cable to allow connection to the port (5).
Scheme 320
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.
Scheme 321
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 recommended 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
Scheme 322
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.
Scheme 323
Note. For optimum programming speed the OPPS/OPS head (5) can be substituted for the diagnostic 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
Scheme 324
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
Scheme 325
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
Scheme 326
Note. OPPS/OPS can not be used to perform diagnosis on an I-bus equipped vehicle (i.e. E32, E36, E38, E46, E53...).
Procedure for Coding & Programming
An important prerequisite for ensuring trouble-free programming is the correct preparation of the vehicle.
A diagnostic procedure must first be performed on the vehicle prior to any programming. Programming must not be started before faults in the vehicle electrical 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
Scheme 327
Manual gearbox/SMG
Transmission in neutral.
Parking brake applied.
Scheme 328
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.
Scheme 329
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.
Scheme 330
Check
Action /Procedure
Diagnosis
Perform quick test.
Using the diagnosis system, rectify any problems before programming and clear stored fault codes.
Scheme 331
Battery
The battery should be sufficiently charged at the start of the programming procedure (12.6 V).
Scheme 332
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.
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" button 3 times in rapid succession.
Do not connect or disconnect the charger during programming. The system voltage must not drop below 12.6 V during the programming procedure.
Scheme 333
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.
Scheme 334
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!
Scheme 335
Make sure that no switches, radio etc. are operated during programming as this could terminate the programming procedure.
DO NOT TOUCH CODING/PROGRAMMING ACTIVE
Coding Plug
Model: E23, E24, E28, E30, E32, E34, E36
Production: 9/87 - 2002
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.
Scheme 336
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
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.
Scheme 337
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 control 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 PROCEDURE ) 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.
Scheme 338
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
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.
| E32 | E34 | |
|---|---|---|
| ORIGINAL NUMBER | 1 1101 | 2 0101 |
| REPLACEMENT NUMBER | 5 1101 | 4 0101 |
ORDERING REPLACEMENT CODING PLUG
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 cluster. By reusing the old/original plug the mileage in the odometer does not change, since the coding plug is able to retain the information.
Scheme 339
- If the coding plug must be replaced, the total mileage and Service Interval information will be lost.
- Replacement coding plugs pre-coded by part number and are available from the parts department.
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.
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.
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 installation into the instrument cluster, refer to ZCS CODING PROCEDURE .
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
318i/is, 325i/is and M3
The instrument cluster for these vehicles does not utilize a coding plug. The entire cluster 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 replacement cluster for these vehicles.
318ti and Z3 Roadster
These vehicles are equipped with an instrument cluster that is not connected to the diagnostic 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 manipulation 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.
Scheme 340
Federal Odometer Disclosure Requirement 92-513
The Federal Odometer Disclosure Requirement 92-513 states that, whenever an instrument 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.
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.
Scheme 341
Scheme 342
Strict compliance with this requirement must be followed through with the following vehicles if mileage is reset to 0
Variant Coding
Model: E24, E28, E30, E32, E34, E36
Production: 3/87 - 12/95
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 control 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).
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 |
ENGINE CONTROL MODULE ECM/DME INFORMATION
Using the DISplus/GT1/SSS with the latest CIP programming software contained within Progman, allows the technician to
- Code a new, uncoded control module.
- Recode a previously coded control module.
The variant code is entered into the control module either by
Scheme 343
- Adopting the existing code from the defective DME control module (if diagnostic communication is possible).
- Manually entering the variant code via the keypad displayed on the screen of the DISplus/GT1/SSS.
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 module can be recoded.
If variant coding of an M1.3 control module for an M20 engine is not possible, 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 displayed.
- 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.
Scheme 344
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
Variant Code Structure
The four digit structure of the variant code consists of a 16 bit binary code which converts to a 4 digit hexadecimal code. Each hex character provides information pertaining to specific functions, characteristic maps and vehicle data.
Scheme 345
The information from the variant code is used to define the operational data to be assigned to the operating program of the module.
Each hex digit has a binary equivalent that provides four 1's or 0's which results in a total of 16 bits of information (or choices) per hexadecimal digit.
Scheme 346
Under no circumstances should the variant code to be changed from the assigned number for the vehicle. Erratic engine operation and possible engine damage may result.
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 ...)
Scheme 347
Select: "Progammierung"
Advance screen to the right two times to enter the programming/variant coding selection screen.
Scheme 348
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 ENGINE CONTROL MODULE ECM/DME INFORMATION for Variant Code) and follow the procedure indicated once selection is made.
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. 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 communicate on the diagnostic link the manual input method will be necessary (refer to MANUALLY ENTERING A VARIANT CODE ).
Scheme 349
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 module and checked against the listing of variant codes provided in SI B13 02 90 (3009) prior to entering the code into the new module.
Scheme 350
Coding Code
Model: E32 and E34
Production: 10/90 - 9/91
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 following control modules
- IHKR 2 & 3
- EDC III
- DWA
All other replacement control modules (except DME) within this production range are precoded 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
Scheme 351
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.
Scheme 352
Scheme 353
- 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" (Advance screen to the right two times to enter the selection screen.)
- Select: Specific model series
- Select: "Recoding" or "Coding Code"
- Select: "Replacement part"
- Select: Specific system/module to be coded
- Turn off ignition and remove the old module, install new module and turn ignition on.
- Advance the screen and enter "0" plus the number located on the label of the module
- 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 following 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.
Vehicle Coding Information
Model: All
Introduction
As part of an ongoing process to reduce the need for country, model and option specific control modules, BMW began to utilize a multi digit vehicle coding structure referred to as a Central Coding Key (ZCS) and later changed to a structure referred to as a Vehicle Order (VO/FA).
Scheme 354
The Central Coding Key (ZCS) is a unique 37 digit (originally a 48 digit) code that contains 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 module to be compatible with the specific vehicle it has been installed into. With the introduction 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.
ZCS Structure
The 37 digit structure of the ZCS is subdivided into three segments. The segments represent specific information about the vehicle.
Each segment ends with a checksum "digit". A checksum is utilized by the coding software to detect unacceptable/erroneous manually entered coding information.
Scheme 355
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)
If a modification needs to be made to the ZCS structure and there is no information available in a service bulletin then the BMW Technical Hotline should be contacted for assistance 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.
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.
FOUR DIGIT PORTION REPRESENTS VEHICLE BODY AND SPECIFIC BODY EQUIPMENT (COUPE, SEDAN, ROADSTER, SUNROOF, ETC,)
There are 4096 possible combinations of digits per model.
Scheme 356
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 (1) | All | Instrument Cluster/LSZ |
| E36 | 318i/is 325i/is M3 | Instrument Cluster | E52 | All | Instrument Cluster/LSZ |
| E36 | 318ti Z3 | EWS II As of 9/98: Instrument Cluster/EWS | E53 | All | Instument Cluster/LSZ |
| (1) The E46 switched to a Vehicle Order (VO) data structure in 9/01. | |||||
| (1) | The E46 switched to a Vehicle Order (VO) data structure in 9/01. |
ZCS STORED LOCATION IN VEHICLE
The procedure to code control modules that utilize the ZCS information can be performed via the DISplus/GT1 or SSS using Progman with CIP 15.0 or higher and accessing the "Codierung ZCS/FA" function.
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 according 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 module being coded or recoded is the module that stores the ZCS information, 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 storing the data is performed automatically using the information stored in the "back up" module.
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 ...).
Scheme 357
Select "Codierung ZCS/FA".
Then advance screen to the right two times to enter the vehicle series selection screen.
Scheme 358
Example
Select vehicle series (i.e "E36 Series" ).
Scheme 359
Select "Display coding code and code for printout".
Scheme 360
ZCS Information for vehicle is displayed along with the stored location.
Scheme 361
Accessing ZCS Information Label
On earlier production vehicles the ZCS label is affixed to the vehicle in a specific location depending on the model
Scheme 362
- E36 - Under rear seat; center area or next to left sending 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.
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 ...).
Scheme 363
Select "CodierungZCS/FA".
Then advance screen to the right two times to enter the vehicle series selection screen.
Scheme 364
Example
Select vehicle series (i.e "E36 Series" ).
Scheme 365
Select "Recode".
Then advance screen to the right.
Scheme 366
Displays control modules that are ZCS codable.
Scheme 367
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.
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
Scheme 368
Vehicle Order for New Models as of 9/01 Introduction
Scheme 369
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 (module/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.
Example: Information contained in the VO of an E60
Scheme 370
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 indicates that no changes were made to the available option packages/hardware available for installation into that specific model since 1203.
Model Code: Identified as NA53 indicates the vehicle and engine type plus provides 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 transmission vehicle.
Paint Code: Identified as 0475 indicates the color of the vehicle at time of production.
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
EPROMs & EEPROMs
Model: E31/32/34/36/38/39
Production: All
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.
| M3.X | DME/ECM Version | Vehicle Application |
|---|---|---|
| M3.1 | E36 - 325i/is (up to 8/92) | |
| E34 - 525i (up to 8/92) | ||
| M3.3 | E31 - 840Ci (9/93 - 12/95) | |
| E32 - 740i/iL (9/92 - 8/94) | ||
| E34 - 530i/it & 540i (3/93 - 12/95) | ||
| E38 - 740i/iL (9/94 - 12/95) | ||
| M3.3.1 | E36 - 325i/is & M3 (as of 9/92) | |
| E34 - 525i/it (as of 9/92) |
ENGINE CONTROL MODULE EPROM PROGRAMMING DATA
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 originally 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.
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.
Scheme 371
Scheme 372
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.
THE UPDATE CANCELS THE OLD FUNCTIONS CHARACTERISTICS AND ADDS THE UPDATED FUNCTION TO THE EPROM
Scheme 373
Scheme 374
For the M3.3 & M3.3.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.
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 E lectrically E rasable P rogrammable R ead O nly M emory 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 |
|---|---|---|
| M5.2 | M44 | E36 - 318i/iA (as of 12/95) E36 - Z3 (as of 1/96) |
| M62 | E39 - 540i/iA (as 3/96) E38 - 740iLA (as of 12/95) E31 - 840iCA (as of 1/96) | |
| MS41.1 | M52 | E36 - 328i/iA (as of 10/95) E39 - 528i/iA (as of 2/96) |
| MS 41.2 | S52 | E36 - M3 (as of 1/96) |
CONTROL MODULES INFORMATION DATA (DME/ECM)
The utilization of EEPROMs within the Engine Management Systems continues to be used today, and has expanded into other control modules as well.
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) |
| EGS 4.16 | M42B18 | E36 - 318iA/isA/iCA/itA (12/92 - 12/95) |
| M50B25 | E36 - 325iA/iSA/iCA (10/91 - 9/95) | |
| 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) |
| EGS 9.20 | M60B40 | E34 - 540iA (3/93 - 8/93) |
| E32 - 740iA/iLA (9/92 - 9/94) | ||
| E31 - 840CiA (9/93 - 9/94) | ||
| AGS 9.22 | M60B40 | E34 - 540iA (9/93 - 5/96) |
| E38 - 740iA/iLA (9/94 - 5/95) | ||
| E38 - 750iLA (1/95 - 6/95) |
TRANSMISSION CONTROL MODULE (TCM) INFORMATION DATA
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" program 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 MODULES FLASH (EEPROM) PROGRAMMING ".
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
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 available.
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 necessarily 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.
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).
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 "automatically" 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 ignition, 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.
Progman
Model: All
Production: All
Progman Introduction
With the release of CIP 15.0, BMW released a new software program known as Progman.
Scheme 375
Progman is a software package that operates with Windows XP Embedded to manage
Scheme 376
- Administration & assignment of OPPS/OPS/Diagnostic heads plus network configuration/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 application.
- Coding, Individualization & Programming functions of CIP.
The new prog ramming man agement 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 programs 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 corresponding hardware (Software Service Station).
Scheme 377
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
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 displayed via Progman and can be accessed by any GT1 or SSS on the network.
| Multiconsole | The multiconsole function makes it possible to control programming procedures both via 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. |
MULTICONSOLE/MULTISESSION FUNCTION
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.
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.
Scheme 378
As of CIP 15.0 SGC/Unix functions for Coding, Individualization & Programming are incorporated into CIP.
Scheme 379
What Will Progman Do For Me?
Progman allows the GT1 to be released from the task of Programming and Coding vehicles. 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)
| Device | # of MOST-bus equipped Vehicles able to be Programmed at one time | # Vehicles able to be Diagnosed while another is being Programmed |
|---|---|---|
| GT1 | 1 | 0 |
| GT1 | 1 | 0 |
| DISplus | 0 | 1 |
| SSS | 1 | 0 |
| TOTAL | 3 | 1 |
CIP INFORMATION BEFORE PROGMAN (CIP 15.0)
With Progman (CIP15.0)
| Device | # of MOST-bus equipped Vehicles able to be Programmed at one time | # Vehicles able to be Diagnosed while another is being Programmed |
|---|---|---|
| GT1 | 0 | 1 |
| GT1 | 0 | 1 |
| DISplus | 0 | 1 |
| SSS | 5 | 0 |
| TOTAL | 5 | 3 |
CIP INFORMATION WITH PROGMAN (CIP 15.0)
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 vehicles, 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 performed. 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.
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.
Scheme 380
From the main menu screen in Progman the administration features for system configuration can be accessed or a new session can be started. By selecting "Help" a more detailed document explaining Progman can be accessed.
In order to insure initial system setup selecting "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.
Scheme 381
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, software level and IP address.
Scheme 382
Explanation of Status Indicators
Symbol Description
Scheme 383
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.
Version
The firmware version indicates the software level currently installed on the selected interface (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.
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.
If an interface is selected and items on the right of the screen in the menu listing are selectable (not grey) then additional information 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 available for that device.
Scheme 384
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
Scheme 385
- Interface Name
- Gateway
- IP Address
- IP Subnet Mask
The specific name assigned to the device (Ex. Blue A). The name used should be helpful in locating/identifying the particular interface if necessary.
A specific four segment number assigned exclusively to the device. The number represents the address of the device on the network and is necessary when communicating with other devices located on the network.
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.
This information is used to define which segment 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.
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.
Scheme 386
Scheme 387
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 interface 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.
Scheme 388
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.
Scheme 389
Updating Interface after Initial Install
After the initial installation of Progman with CIP 15.0, the firmware installed on the interfaces 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
Scheme 390
With a connection to the interface established a message should be displayed indicating 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
Scheme 391
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 interface 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).
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
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.
Scheme 392
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.
Scheme 393
The overview tap provides a listing of all SSS's that are located on the network.
Scheme 394
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.
Scheme 395
Operating Status
This menu item provides a more detailed status information for specific SSS then the Overview table.
Scheme 396
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 recommended location from which the SSS should be restarted or shutdown using the buttons at the bottom of the screen.
The Network function allows network configuration 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.
Scheme 397
Information that can be entered is similar to the information needed to configure an interface. 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.
Scheme 398
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 vehicle data files for utilization by CIP.
The table provides an overview of the software 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.
Scheme 399
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 downloaded and installed after the normal operating times of the workshop as specified under "Operating Times".
"Display status" provides information pertaining to the installation of the latest update.
Information pertaining to an erroneous installation of an update is displayed in the messages section.
Note. If frequent error messages are displayed contact your service provider for assistance and have available a copy of the error messages that have been received.
Scheme 400
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 transmitted 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.
Scheme 401
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 available.
User Interface
Under this menu language settings specific to the individual SSS and printer configuration 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.
Workshop Exercise - Configuration Check
- Check/access network configuration information for: SSS DISplus GT1 Interfaces (Opps, OPS & Diagnostic Head)
- Check firmware level of interface's via SSS.
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 recognized by Progman.
Select "Service"
Select "Setting up a connection"
Scheme 402
Select "Quit connecting"
Scheme 403
The selected head is free/disconnected
Scheme 404
Select "End"
Scheme 405
Select "Change"
Select "Coding/Program"
Scheme 406
Select available SSS
Select "Continue"
Scheme 407
Starting A Session With Progman
Select "New Session"
Scheme 408
Select the desired interface
Select "Continue"
Scheme 409
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"
Scheme 410
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"
Scheme 411
Select "E53"
Scheme 412
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.
Scheme 413
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
Scheme 414
Select E60
Scheme 415
CIP is determining the vehicle order for the vehicle being accessed.
Scheme 416
From this screen select the desired function.
Scheme 417
Return To Progman "Home" Screen
Select "Minimize"
Scheme 418
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.
Scheme 419
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.
Scheme 420
Explanation of session status indicators
Scheme 421
- 1 - Black text with white background indicates 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 or reviewed by another user. This session can not be accessed by an additional user.
- 3 - Orange text indicates that input is required before program can continue, this session should be accessed and reviewed to provide required input.
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"
Scheme 422
The GT1 will switch to diagnostics and a new diagnostic session can be started by connecting to an available interface, if nothing 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.
Scheme 423
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 diagnostic screen
Select "Change"
Select "Coding/Program"
Scheme 424
Select the SSS on which the session is to be checked
Scheme 425
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"
Scheme 426
The status information for the selected session states that it is "Waiting for user action"
Select "Continue" to view/access the session
Scheme 427
Select "Start" to initiate/carryout the measures 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.
Scheme 428
Shutting Down the SSS
After selecting "Administ." on the Progman Home screen select "Settings".
Scheme 429
Select "Overview"
Scheme 430
Select the specific SSS to be shutdown
Scheme 431
After selecting the specific SSS, select "Operating Status".
Scheme 432
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.
Scheme 433
Workshop Exercise - Access CIP & ZCS
- Access CIP for an E60.
- Access ZCS functions to obtain the central coding key on an E53 or Vehicle order on an E46.
Coding, Individualization & Programming (CIP)
Model: All
Production: All
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 C oding, I ndividualization & P rogramming 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 modules 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 module( 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 hardware 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 hardware of the computer.
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.
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 integration level defines the software level that all the control modules installed into a particular 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.
Vehicle data status: E060-04-09-503
Target data status: E060-04-09-55
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 production 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 computer originally developed to run with Windows 95.
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.
Scheme 434
By accepting the defined plan all modules that are listed will be updated "automatically".
| IMPORTANT | Whenever a measures plan is defined it should always be 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 vehicles 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.
Scheme 435
From the initial CIP screen select the model for which a coding or programming session is to be performed.
Scheme 436
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 selectable features (such as drive way locking, seat memory, central locking/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
Scheme 437
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 installation.
Scheme 438
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 previous screen.
Programming is selected if
- Checking for availability of updated software for selected control module.
- It is known that updated software is available for the selected control module. Replacement is selected if a module was replaced.
EWS is selected if
- Alignment of EWS & DME must be performed
Scheme 439
Example: Programming was selected on previous Screen.
Upon selecting "Update software" a measures plan will be generated that is specific to the module selected.
Scheme 440
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 number and software.
Note. The "update" does not need to be performed if the two part numbers are the same.
Scheme 441
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. |
CIP Functions - If No (MOST-Bus Vehicles)
After selecting "No" CIP evaluates the installed control modules to determine if any updates are required.
Scheme 442
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 measures plan.
The status report identifies the control modules for which an update is available and also indicates if the module will need to be reprogrammed or replaced.
Information is also provided indicating the current programmed part number and also what the number should be after an update is performed.
Scheme 443
If "Cancel update" is selected or if CIP determines that there are no updates needed or available for the vehicle then the "Control module selection" screen is displayed.
Scheme 444
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
Scheme 445
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.
Scheme 446
By selecting "Update Software" a measures 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.
Scheme 447
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. |
Scheme 448
Control Module Selection-Programming-Special Measures
| IMPORTANT | The "Special Measures" function is only to be used in the event that a control module(s) can not be programmed during the "Update Software" process that is executed as a result of a developed "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. |
Scheme 449
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".
Retrofits
Select "Retrofits" to view a list of functions/features that can be modified or installed.
Scheme 450
The initial screen displays information pertaining to
- Airbag activation/deactivation
- Telematics On/Off
- Language (setting control display/monitor language)
- Maintenance interval - reset/checking
- USA-Canada conversion
- Retrofits - listing accessories installed or available for installation.
Scheme 451
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.
Scheme 452
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".
Scheme 453
Management
"Management" can be selected from the main/initial CIP screen.
Scheme 454
Or
"Management" can be selected from the Main CIP Selection screen.
Scheme 455
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)
Management - Reports
To access the most recently generated measures plans select "Reports".
Scheme 456
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.
Scheme 457
Management - Application - Test & Version
The "Application" function provides the ability to
- Run a system test
- Determine information regarding the version of CIP currently installed
Scheme 458
Select "Test" if system files are to be checked.
Scheme 459
By selecting the "Start" button a brief test of the system files will be performed.
Scheme 460
By selecting "Version" installed application information will be displayed.
Scheme 461
A list of the various files/applications installed as well as their software levels is displayed.
Scheme 462
Vehicle
"Vehicle" can be selected from the main CIP selection screen to access additional functions
Scheme 463
- Vehicle order
- Initialization
- Service functions
- Complete encoding
By selecting "Vehicle" the following functions can be accessed
- Vehicle Order
- Initialization
- Service functions
- Complete encoding
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.
Scheme 464
Selection of "Adapt VO" provides the ability to install a modified Vehicle Order file.
Scheme 465
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 submitting a PUMA case requesting a modified 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 contained in the file.
Scheme 466
Vehicle - Initialization
The "Initialization" function provides access to three different functions
Scheme 467
- Start system time - Used to synchronize all modules contained on the vehicles byteflight bus.
- Delete fault memory
- CAS or EWS calibration
By selecting "Delete fault memory" the fault memory of all installed control modules will be cleared.
Scheme 468
Displays a report pertaining to the clearing of the fault memory on all installed modules.
Scheme 469
By selecting "EWS adjustm." or "CAS Calibration" the rolling code tables can be initialized.
Scheme 470
By selecting "Yes" the calibration/initialization of the rolling code tables in the DME and CAS or EWS modules will be carried out.
Scheme 471
Vehicle - Service Function
The "Service function" feature provides access to various calibration functions.
Scheme 472
Selecting "LWS" will provide the ability to calibrate the steering angle sensor.
Scheme 473
By selecting continue the process to calibrate the steering angle sensor will be carried out.
Scheme 474
Vehicle - Complete Encoding
"Complete encoding" provides the ability to code/recode all control modules installed in the vehicle.
Scheme 475
Recoding all the installed control modules may result in the loss of initialization or system settings such as radio station presets or seat/mirror memory.
Scheme 476
By selecting "Yes" all installed control modules will be recoded based on the information contained in the Vehicle Order.
Scheme 477
CIP Functions - If Yes
After selecting "Yes" on the Yes/No selection screen a determination/check of all installed control modules is performed.
Scheme 478
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.
Scheme 479
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 modules 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.
Scheme 480
The CKM feature contained in CIP (for models produced as of the E65) provides the ability 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 displayed. 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.
Scheme 481
Detailed information pertaining to CKM configuration is available in SI B09 03 98.
Upon selecting "CKM" a check of the current vehicle and key settings is made.
Scheme 482
Once the check is complete the current setting are displayed and can be printed out.
Scheme 483
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.
Scheme 484
The factory default setting are identified by a "factory" symbol.
To except/code the new setting to the vehicle or key select "Encode car".
Scheme 485
To lock the changes to the vehicle and/or keys select "Save".
By selecting back additional changes can be selected or the function aborted.
Scheme 486
Once the new values are stored/set a final report showing the new setting will be displayed. The report will also show if the effected modules did or did not accept the changes.
Scheme 487
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 functions 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 printout of the code stored in the module to be replaced must be entered into the new module.
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, redundant 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.
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 ...).
Scheme 488
Select "Codierung ZCS/FA".
Then advance screen to the right two times to enter the vehicle series selection screen.
Scheme 489
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.
Scheme 490
Select vehicle series (i.e "E36 Series").
Scheme 491
Select "Recoding".
Then advance screen to the right.
Scheme 492
Displays control modules that are ZCS codable.
Example
Select "KOMBI".
Scheme 493
Select "Yes" to recode KOMBI.
Scheme 494
Follow the instructions given on screen.
Scheme 495
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.
Scheme 496
Follow the instructions given on screen.
Scheme 497
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.
Scheme 498
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
Scheme 499
- ZCS print out of old module before removal
- ZCS label located in vehicle
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.
Scheme 500
Confirm or enter new GM information.
Scheme 501
Confirm or enter new SA information.
Scheme 502
Confirm or enter new VN information.
Scheme 503
Confirm or correct ZCS information.
Scheme 504
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 maintained with vehicle file.
Switch ignition off for 10 seconds, then check for proper system operation.
Scheme 505
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 ...).
Scheme 506
Select "Codierung ZCS/FA".
Then advance screen to the right two times to enter the vehicle series selection screen.
Scheme 507
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.
Scheme 508
Select vehicle series (i.e "E36 Series").
Scheme 509
Select "Recoding"
Then advance screen to the right.
Scheme 510
Displays control modules that are ZCS codable.
Example
Select "ZVN II/GM (ZKE IV)".
Scheme 511
Confirm module selection.
Scheme 512
If a replacement module is to be installed install it now.
Scheme 513
Select yes to begin coding or recoding the selected module.
Scheme 514
Coding/recoding process of selected module is complete, follow the instructions given.
Scheme 515
Scheme 516
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 specific 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.