
What are maps? Maps are lookup tables designed to make a Motronic ECU run
faster. Hundreds of processor calculations can be avoided. A map is not just
tabulated data but a complex data structure as you will see below. Here is an example of a simple 2D
(two dimensional) map. It is from a Porsche 911 and it is
for Fuel at Wide Open Throttle. Fuel level vs. engine rpm is stored in this map. The map consists of 20
bytes of data highlighted in Orange.

Example -
Porsche 911
Fuel Map - Wide Open Throttle
3E 14 0A 08 25 28 05 0E 03 07 04 01 01 01 01 01 01 01 01 01 03
60
7A 79 7D 7F 8D 8D 7C 7D
7E 7F 80 82 84 85 87 88 89 8A 8B 87
Red
Type designator
Blue Size - 14h
or 20
Green 20 data values - for this example it is engine RPM values
Orange 20 data values - for this example it is fuel levels

Example
#2 - Porsche 911
Fuel Map - Idle
Detailed Map Structure
Porsche 911 Fuel Map at Idle

Column A below is the row numbers 1 to 22
Column B is the raw code
Column C is the converted data
Column D is the conversion formulas
| row 1 |
3Eh |
First
digit - describes the map type |
| row 2 |
0Ah |
Second digit - Hexadecimal "A" - this is 10 decimal. 10 RPM
values and 10 Fuel levels. |
| row 3 |
07h |
400 |
=C4-HEX2DEC(B3)*40 |
Rows 3 through 12, there are 10 engine RPM values The base number, row
12, is decremented by each of the previous rows 11 through row 3. Working up.
Each hex number (converted to decimal) is multiplied
by 40. Then it is subtracted from the row below it.
The base number, row 12, is created by subtracting hex number from
256 then multiplied by 40 . |
| row 4 |
03h |
680 |
=C5-HEX2DEC(B4)*40 |
| row 5 |
08h |
800 |
=C6-HEX2DEC(B5)*40 |
| row 6 |
18h |
1120 |
=C7-HEX2DEC(B6)*40 |
| row 7 |
03h |
2080 |
=C8-HEX2DEC(B7)*40 |
| row 8 |
05h |
2200 |
=C9-HEX2DEC(B8)*40 |
| row 9 |
05h |
2400 |
=C10-HEX2DEC(B9)*40 |
| row 10 |
05h |
2600 |
=C11-HEX2DEC(B10)*40 |
| row 11 |
05h |
2800 |
=C12-HEX2DEC(B11)*40 |
| row 12 |
B5h |
3000 |
=(256-HEX2DEC(B12))*40 |
The base
number - Maximum engine RPM |
| row 13 |
6Dh |
109 |
=HEX2DEC(B22) |
Rows 13 through 22, there are 10 Fuel levels
©2007 FR Wilk |
| row 14 |
6Ah |
106 |
=HEX2DEC(B22) |
| row 15 |
6Ah |
106 |
=HEX2DEC(B22) |
| row 16 |
6Ah |
106 |
=HEX2DEC(B22) |
| row 17 |
6Ah |
106 |
=HEX2DEC(B22) |
| row 18 |
6Ah |
106 |
=HEX2DEC(B22) |
| row 19 |
6Ah |
106 |
=HEX2DEC(B22) |
| row 20 |
6Ah |
106 |
=HEX2DEC(B22) |
| row 21 |
6Ah |
106 |
=HEX2DEC(B22) |
| row 22 |
6Ah |
106 |
=HEX2DEC(B22) |