BMW - Introduction To Coding & Programming
BMW - Introduction To Coding & Programming
Table of Contents
Introduction to Coding & Programming
Subject
Page
What is Coding? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3
What is Programming? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4
What is the Purpose of Coding and Programming? . . . . . . . . . . . . . .5
Where is Data Stored in a Control Module? . . . . . . . . . . . . . . . . . . . . .7
EPROM (Electrically Programmable Read Only Memory) . . . . . . . . . . . .7
EEPROM (Electrically Programmable Read Only Memory) . . . . . . . . . . .8
Review Questions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9
Revision Date:
2
Introduction to Coding & Programming
What is Coding?
It is a process utilized by BMW, which groups system specific operating requirements
(Data) together and then assigns a label/code to each of these groups of data. The 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.
BEFORE CODING
AFTER CODING
Hassermen
Bsaljeoi
Gllufpjenr
Rusdljfoiv
Nerucvleu
Frluelkdmvdk
Wsdkurovcn
kjdfkjorir
Hassermen
A codable control module has a basic operating program already installed along with
several specific variations of operating data. The coding process allows a specific set of
operating data to be assigned to the basic operating program of that module/component,
with respect to its specific application.
3
Introduction to Coding & Programming
What is Programming?
It is a process utilized by BMW to load application/system specific operating instructions
BEFORE PROGRAMMING
AFTER PROGRAMMING
BASIC
DATA
No specific operational
program installed.
Hassermen
Bsaljeoi
Gllufpjenr
Rusdljfoiv
Nerucvleu
Frluelkdmvdk
Wsdkurovcn
kjdfkjorir
Hassermen
(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.
4
Introduction to Coding & Programming
As the number of control modules and the complexity of the various systems installed
into vehicles increased, the number of modules that needed to be stored in parts 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.
DME
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, ...)
6
Introduction to Coding & Programming
DME
7
Introduction to Coding & Programming
8
Introduction to Coding & Programming
Review Questions
1. What happens when a control module is coded?
9
Introduction to Coding & Programming