You are on page 1of 6

# The Alfa Romeo 155 Manuals & Technical information.

Hexmap Information

## There are 7 maps which are important:

1.
2.
3.
4.
5.
6.
7.

Injection map
Ignition map
Turbo pressure map
Turbo pressure limiter map
WOT (wide open throttle) injection enrichment map
Injection timing map
RPM limiter map

INJECTION MAP
This map controls, how long injectors are open (how much gasoline
enters in the combustion chamber).
This map has 16x16 fields. There are 16 RPM breakpoints and 16 air
density breakpoints.
COLUMNS are RPM breakpoints. Address is at hex 7000-701F. In order
to calculate one breakpoint, you have to sum two 8 bit values and
divide the number 1875000 with sum to get RPM value:
1. breakpoint:
address hex 7000: value 1 hex = 1 dec *256 = 256
address hex 7001: value 20 hex = 32 dec
256+32=288 1875000/288 = 6510 RPM
701E: value 9 hex = 9 dec *256 =2304
address hex 701F: value 83 hex = 131 dec
2304+131=2435 1875000/2435 = 770 RPM
ROWS are air density breakpoints (absolute pressure) in bars. Address
is at hex 7020-703F. In order to calculate one breakpoint you have to

sum two 8 bit values and divide them with 1032 to get the air density
(absolute pressure) in bars:
1. breakpoint:
address hex 7020: value 0 hex = 0 dec *256 =0
address hex 7021: value CC hex = 204 dec
0+204= 204/1032=0.2 bar (-0.8 bar vacuum)
16. breakpoint:
address hex 703E: value 8 hex = 8 dec *256 =2048
address hex 703F: value 77 hex = 119 dec
2048+119= 2167/1032 =2.1 bar
Now at address hex 7040 follow 256 values for injection time (for
every RPM breakpoint and every airdensity point). These values are
only 8 bit. To get the injector opening duration in miliseconds, you
have to make the following calculation :
(dec value*0.064)+1

IGNITION MAP
This map controls the ignition advance.
This map has 16x10 fields. There are 16 RPM breakpoints and 10
airdensity breakpoints.
COLUMNS are RPM breakpoints. Address is at hex 7230-724F.
Calculation is the same as with injection map RPM breakpoints.
ROWS are air density breakpoints (absolute pressure) in bars. Address
is at hex 7250-7263. The calculation is the same as with injection map
airedensity breakpoints.
8 bit. To get the ignition advance in degrees BTDC (before piston top
dead center). To get the ignition advance in degress you have to make
the following calculation:
dec value*0.25

## TURBO PRESSURE MAP

This map controls the turbo pressure. This is achieved via duty cycle of
opening the overboost (pierburg) valve.

## <Click for full size>

This map has 16x4 fields. There are 16 RPM breakpoints and 4
breakpoints for TPS (throttle position sensor) opening angle in
degrees.
COLUMNS are RPM breakpoints. Addres is at hex 75A0-75BF.
Calculation is the same as with injection map RPM breakpoints.
ROWS are breakpoints for TPS opening angle in degrees (how much
you push the throttle). Address is at hex 75C0-75C7. There are two
different calculations:
for angles<30 degrees: (dec value*0.1848)-1.41
for angles>30 degrees: (dec value*0.7058)-90
1. breakpoint
address hex 75C0: value 0 hex = 0 dec
address hex 75C1: value A8 hex = 168 dec
0+168= 168*0.1848= 31.05-1.41= 29.64 degrees
4. breakpoint
address hex 75C6: value 0 hex = 0 dec
address hex 75C7: value E0 hex = 224 dec
0+224= 224*0.7058= 158.10-90= 68.1 degrees
At address hex 75C8 follow the duty cycle values. These values are 8
bit. To get the duty cycle values in %, you have to make the following
calculation:
((dec value*100)/256)*2
Max value for this map is 128 and not 8 bit max value of 256, as
(128*100)/256)*2= 100%, so the value of dec 128 means the 100%
duty cycle or 100% opening of the overboost valve which means the

## highest turbo pressure. But as the turbo pressure build up is

dependant of turbo charger type, wastegate actuator stiffness and
RPMs, there is no logical calculation for altering the values to get the
desired turbo pressure. You have to try different values and make test
runs.

## TURBO PRESSURE LIMITER

This map controls max turbo pressure which is allowed before ECU
cuts the ignition.

## <Click for full size>

This map is 16x2 fields. There are 16 RPM breakpoints. This map
shares the same RPM breakpoints with TURBO PRESSURE map.
COLUMNS are RPM breakpoints. Calculation is the same as with
injection map RPM breakpoints.
There are 2 ROWS. Second row is the max pressure limit. When this
pressure is reached, ECU will cut the ignition. First row is max pressure
set. When ECU cuts the ignition due to reached max pressure, it will
start working again, when the set value is reached.
At address hex 7650 follow the pressure limit and pressure set values.
These values are 8 bit. To get the pressure limit and pressure set
values in bars you have to divide dec value with 170.

## WOT (wide open throttle) INJECTION ENRICHMENT MAP

This map controls the fuel enrichment at WOT (wide open throttle).
<Click for full size>
This map is 16x1 field. There are 16 RPM breakpoints. This map shares
the same RPM breakpoints with IGNITION map.
COLUMNS are RPM breakpoints.

## There is one ROW. It represents the factor which is multiplied with

injection time at WOT.
These are 8 bit values. In order to get the factor value, you have to
divide dec value with 128.
Example: address hex 71DA (11th value - 3200 RPM breakpoint): value
9D hex= 157 dec
157/128= 1.23
So at WOT at 3200 RPMs (here the turbo pressure starts to raise
rapidly), there must be highest fuel enrichment at full throttle. ECU
multiply the value from injection map (selected accordingly to RPM
and pressure) with factor 1.23.
This means 23% enrichment at WOT.

## INJECTION TIMING MAP

This map controls the injection timing (at what degree of turn of the
crankshaft injectors start to open)
<Click for full size>
This map is 16x1 field. There are 16 RPM breakpoints. This map shares
the same RPM breakpoints with IGNITION map.
COLUMNS are RPM breakpoints.
There is one ROW. It represents the angle of the crankshaft where
injectors start to open.
At address hex 7200-720F follow angle values. These are 8 bit values.
In order to get the angle values in degrees, you have to make the
following calculation:
450+90*(128-dec value)/32

## This map controls the rev limiter.

There are two values. At first value ECU cuts the ignition and at
second start to work again. These are 16 bit values. You must divide
1875000 with dec value to get the RPM.
First value is at address hex 7497-7498
Second value is at address hex 7499-749A
Address hex 7497: value hex 1= dec 1*256 =256
Address hex 7498: value hex 14= dec 20
256+20= 276 1875000/276= 6793 RPM
Example to raise RPM limit to 7500 RPM:
1875000/7500= 250
250/256= 0 dec = 0
hex remains 250 dec = FA hex
You have to alter the value at address hex 7497 to 0 and value at hex
7498 to FA.
You have to alter the second value accordingly (for example to 7300
RPM)

If you want to make the changes and raise the power safely, you have
to test the new chip with wideband lambda and some sort of knock
sensing. I use LM-1 from Innovative motorsports. I'm also logging all
significant sensors (TPS, knock, RPM, boost, ATS). With that in mind
you can raise the power of individual car well beyond the power of "of
the shelf" chips, as every engine is unique in its own way and you can
make the chip which is best for particular engine.