You are on page 1of 13

AEM Undocumented Settings

Last updated: 11/23/07


HARDWARE OPTIONS:
The crank sensor input can be from either a Magnetic Variable Reluctance (VR)
sensor or a Hall effect sensor. The two types of sensor require different
hardware settings on the ECU board, so are selected by physical jumpers.
Jumpers

Figure 1: AEM EMS 10-1300 (1G DSM)


To allow for different input ranges of the crank sensors, physical hardware
jumpers need to be set. Typical jumper Names:
Crank sensor
Cam Sensor
Speed Sensor
Spare Speed Sensor

(JPT1)
(JPT2)
(JPT3)
(JPT4)

COIL
COIL
COIL
COIL

(JPC1)
(JPC2)
(JPC3)
(JPC4)

1
2
3
4

Sensor Type
NVR
High Output (VR, MAG)
Hall/Logic (0-5v)

Jumper Position
none
1-2 position
2-3 position

TIP: Some AEM ECUs such as the 10-1313 have the jumpers on board to change the
ignition output, but don't have the transistor mounted to complete the circuit.
In these cases an igniter will need to be used to drive an MSD or some other CDI
systems directly. A transistor can also be soldered onto the board in the blank
JPC board locations.
BARO SENSOR
The barometric sensors on the AEM EMS board on some applications are disabled to
make use of an external sensor built into the MAF or other external barometric
sensors. To enable the on-board sensor the jumper (JP2) will need to be moved to
the 2-3 position connecting the internal barometer circuit to the board.

SATURATED DRIVER- A power transistor driver that turns fully on for the entire
duration of the injector PW. This type of driver is used with injectors having
high resistance coils (typically 12 to 16 ohm) or with
injectors having low resistance coils in combination with a ballast resistor.
Currently what the AEM EMS comes with a saturated driver from the factory.
(1.5AMPS max)
Advantages: Heat is primarily dissipated through the injector or ballast
resistor and not at the driver circuit. Circuitry is simplified compared to the
peak-hold driver.
Disadvantages: The inherently slower dynamic response of this system decreases
the injectors usable flow range. The Q of an injector used with this type of
circuit is more duty cycle sensitive due to heat dissipation considerations.
This drivers inductive suppression, which may be resistance, capacitance or
zener, significantly affects the injectors Qd rates due to variations in the
circuits current decay rate. This decay results in a change of the injectors
closing time.
PEAK-HOLD DRIVER- A driver that uses two levels of current to operate the
injector. The driver circuit applies battery voltage to the injector until a
predetermined current level is reached. The current is then reduced and held at
a lower level for the duration of the pulsewidth. This type of driver is
normally used with injectors having low resistance coils (typically around 2
ohm). The accuracy of the driver peak current level (Ip) and the hold current
level (Ih) is held to 0.50%.
Advantages: The high peak current minimizes OT response and the low hold current
minimizes CT response. This method of control results in an increased linear
range of injector operation.
Disadvantages: Heat is primarily dissipated at the driver. Circuitry is more
complex than that of the saturated driver.

Basic SETUP tips:


Throttle configuration

In the calibration file, adjust the TPS min and max voltages manually rather
than using the setup wizard.
Set the TPS settings in such a way that the throttle readings NEVER reach 0% or
100% (even with variances caused by engine bay temperature and on/off status).
Example: Set the Throttle setting so that you never are under 1% when fully
released and over 97% when fully depressed and the ignition ON. This will save
you from many headaches with throttle based trims.
Ignition Timing Check
Always check timing on the secondary side of the coil system. Never attempt to
use the primary side as a pickup. Doing so will cause an offset of true Ignition
timing that can in some cases vary or drift with rpm. In cases where a plug wire
or other method of getting a secondary pickup signal isn't possible, try setting
up a temporary conventional plug and wire coil setup or setup a plug wire inbetween the COP so that you can sync the ignition timing with a light.
Once the basic ignition is synchronized with a timing light, and while the
timing is still locked. Rev the engine to roughly 5000rpm and check for timing
drift. Adjust the option pickup comp delay until minimal drift is noticed.
Pickup Comp Delay
Used to compensate for timing pickup and ignition components latency and
minimize Ignition Timing "drift". Typical value = 40

FUEL Map configuration:


LD0MPC
A fuel map compression factor used to improve the dynamic range of the fuel map.
255 is an uncompressed map.
Microsec/bit
Fueling table scalar. Used as a multiplier for the raw values in the fuel table.

Cam/Crank Options
Crank L Sens Above
Some VR crank sensors give too high an output at high engine speeds causing
excessive noise and dropped signals. This feature allows the sensitivity of the
ECU to be switched to a lower setting at an engine speed above a user set
amount. Typically 1500rpm.
Crank H Sens Below
High channel sensitivity when below this value. This should be set below the ON
value (hysteresis). For logic level sensors (hall effect), set to 0
Crank Rising Edge
Rising edge of the crank signal is used as the significant edge when ON.
Typically 0FF in VR/MAG applications.
Crank Falling Edge
Falling edge of the crank signal is used as the significant edge if ON.
Typically OFF in logic/hall applications.

Sync Early
Synchronize on the first cam pulse. This will ignore code that looks for an
entire engine cycle AFTER the first cam pulse to verify the correct number of
teeth has past. Improves starting significantly.
Crank Sync Skip
Fires ignition directly off of the crank sensor without waiting for a cam input
for synchronization. This option is not meant for applications with more than
one coil output. Only for cars that use distributors or batch fire/2cycle
engines that mechanically cannot fire spark out of sequence.
Ign + 1/4 Tooth
Intended for a low tooth count crank pattern, where there is one timing event
per input timing pulse. Closely tied to the Crank ALT fire option and the tooth
control table.
In Mitsubishi applications, the 2nd tooth = 6 (Tooth Control). The Ing + 1/4
option is only used by the "Crank Alt Fire" mode by advancing timing by .25
internal degrees while cranking, and for checking for synchronization.
Crank Inject All
Enables a fuel PRIME pulse which is tunable by temperature on the "Initial Crank
Pulse Table", adding a single pulse of fuel before "Stat Syncd" is turned on
and as soon as the engine starts cranking regardless of engine cycle.
Use: Priming a cold engine for starting. Typically the warmer the engine the
less PRIME is needed.
Sync Ignore
The synchronization strategy is ignored above this engine speed, if 0 then
synchronization is always tested.
Sync Error R/S
Disables Stat Syncd if this number of Sync errors is detected. Also used as
the number of good syncs to re-establish synchronization.
Crank ALT FIRE
When ON, The cranking ignition timing is set by the physical teeth location of
the crank trigger/disc.
USE: Trigger setups that have few crank teeth over an engine cycle, this mode is
needed. Fires spark directly when specific crank edges (selected by the tooth
table and other factors) occur. In this mode the value of the "Crank Adv" option
in the Engine Start Options is ignored. Crank Alt Fire works regardless of the
setup using waste spark or direct fire.
Exceptions:
1. When using the "Ign+1/4" option the actual timing will be advanced 1/4 of a
degree during cranking.
2. AEM can output ignition differently during cranking (because of the Crank Alt
Fire, Crank Alt Inver option) vs. when the engine is running. These different
modes are needed when you have just a few teeth on the crank wheel. In such
cases, the spark position during cranking will be incorrect unless you start
using the Crank Alt Fire method.

In some cases, even if you get Stat Syncd to show ON and get no timing errors,
this doesn't mean your job is done and the engine will start. For example,
getting ignition during cranking correct is a bit tricky if you have a wheel
with few significant crank edges. In this case you need to have a significant
edge at about 10 degrees BTDC and have to use the Crank Alt Fire method to make
the EMS instead fire on the edge itself. Sometimes it will be necessary to shift
the edges, in which case you'll need to do some tweaking with the Tooth Control
table.
In such cases, having a simple generator of square waves (a parallel LPT port on
your notebook and a small program will do it) attached to the crank and cam
inputs of your
EMS and an oscilloscope attached to your cam signal and ignition channels is a
must in order to get it firing correctly.

TOOTH CONTROL TABLE configuration:


The AEM ECU is designed around an internal counter of 12 markers, known as
teeth, per crank revolution. Ignition
Cycle Teeth is the number of internal teeth in one ignition cycle. This
processing using the tooth control table, allows many crank tooth patterns to
translate into a 12 tooth crank wheel that may be processed by a user scalar to
absolute crank degrees.
Note: Ideally there should be 12 or 24 process significant edge teeth at a
regular 30 degrees to create the internal 12 teeth

Figure 2: Custom 24-tooth trigger disc

TOOTH CONTROL TABLE


In order to improve timing pattern flexibility, the Tooth Control table assigned
with the value A_Tooth processes the crank signal; the actions to be taken are
encoded in 3 bits:
Tooth Control Number
0
1

Bits (0,1,2)
000

Do nothing

001

Process significant edge

010

011

100

101

110

Function

111

Process alternative edge; used for crank


firing
Force reset of A_Tooh if loss of sync
occurs
Test for synchronization
Process significant edge and test for
synchronization
Process alternative edge and test for
synchronization
Reserved

String must end in 3 (011) to indicate end of sequence.


There are 3 synchronization strategies. Only one may be active.
1. Sync Crank S count
Sync Crank S Count is for the cam/crank patterns that have evenly spaced teeth
on the crank position sensor trigger wheel with no missing teeth, but has more
than one tooth on the cam position sensor trigger wheel. Since there's more than
one cam tooth, we can't use Sync Cam Count as it would try to sync in multiple
spots. When Sync Crank S Count is selected, The EMS will count the number of
crank tooth signals between each of the cam tooth signals.

Figure 3: OEM Mitsubishi trigger disc


The parameter "S Sync Tooth" will display this count and it resets every time a
cam tooth signal is received. The number in which the crank tooth signal is to
use for its reference. For example, the S2000 has 24 evenly crank teeth per
engine cycle and 3 non-evenly spaced cam teeth per engine cycle. The 3 cam teeth
are separated by angles of 90, 90, and 180 degrees - kind of like an evenly
spaced 4 tooth wheel with one missing tooth.

Now, the EMS will count 6, 6, and 12 crank teeth between each of the can teeth
and it will use the unique count of 12 teeth as the reference point for engine
position.
The option "MX Sync Test" is where you tell the EMS what count value to use as a
reference as the EMS does not do this automatically.
TIP: Sync Cam Count method can also be used for trigger wheels on which not all
the teeth are evenly spaced (Teeth can be skipped using the tooth table) and
also this method can be used with cam signals with multiple teeth too.
Example:
A setup is using a wheel with not evenly spaced teeth (110 deg, 70 deg, 110 deg,
70 deg), and a cam sensor, which has two teeth in engine cycle (4 cam edges) and
the AEM starting calibration uses the Sync Cam Count method. It can be set to
run using the Sync Crank S Count method as well.
To choose which one, look at a scope of 1 engine cycle range of your crank and
cam signals overlaid. Then decide if you can find a unique sync point by either
counting crank edges between two cam edges (Sync Crank S Count) or cam edges
between significant crank edges (Sync Cam Count). In this example, it can be set
to use either method.
2. Sync Cam Count
Most basic of all the Sync methods our EMS uses. This is for cam/crank patterns
that have equally spaced teeth on the crank position sensor trigger wheel, no
missing teeth, and one tooth on the cam position sensor trigger wheel.
What the EMS does is look for the first crank tooth signal that occurs after the
cam tooth signal as a reference point for the engine position.
The option "Sync Teeth" tells the software how many cam teeth there are and is
set to 1 for use with Sync Cam Count.
This method is used on many of the early Honda and Toyota engines with 24 evenly
spaced crank teeth per engine cycle and 1 cam tooth per engine cycle.
3. Sync MX
A Missing tooth strategy where tests are performed if a missing tooth is
detected. Missing or Extra teeth are used to determine whether an external
synchronizing pulse (0), a missing or long tooth (-1), or an extra or short
tooth (+1) is used for synchronization.
MX Sync Count
The number of normal crank teeth between missing teeth.
Cam count is the number of cam teeth in the between missing teeth.
Missing is the number of successive missed teeth, if negative the system
searches for early or extra teeth.
MX OPTIONS:

MX Time
Used to detect short, long, extra, or missing teeth. Used to make "d Tooth" Time
that is compared with the new tooth time to detect the missing or extra tooth,
if detected it is displayed in Miss Time. If left as 0 will it not be used.
MX Time Start
Used to make d Tooth Time (when in start mode) that is compared with the new
tooth time to detect the missing or extra tooth, if detected it is displayed in
D Tooth time = Tooth time M/X time.

Injection configuration
Injector Phase- synchronizes the injection event to the valve opening angle for
best emissions and throttle response. Changing this value moves all of the
injectors advanced or retarded in relation to TDC.
Use: Move this number up or down to obtain the best idle, and throttle response.
For fine tuning of this use the Injector Angle Map is used.
A brief explanation of how injector phasing works in the AEM software:
It actually depends on where your cam sync falls relative to TDC. This is best
explained using an example:
If option Inject Tooth #01 = 0.00 teeth
and the Inj Adv Map = 357 degrees
and option Injector Phase = 0.00 teeth
The injector will open at the first significant crank edge following the cam
sync edge. If the falling edge is your significant edge, the opening time will
correspond to the first falling edge of the crank signal. The Inj Adv Map has a
range of -360 degrees to +357 degrees. The smaller Inj Adv MAP value, the later
the injector fires. You can monitor the actual opening position of the injector
by logging the parameter Fuel Inj #01 Open in teeth. If all of the above is
true, this parameter should read 0.00 teeth. So to know exactly where your
injection events are happening relative to TDC, you need to know where your cam
sync event happens because everything is based off of that signal.
DSM specific:
The DSM 30-13XX timing pattern control is a little more complicated since it
doesn't have a single cam sync pulse. Both the rising and falling edges of the
cam signal are significant. These cars have several evenly spaced teeth
followed by a wide tooth on the cam. In this case, if all of the above is true,
the injector opening will coincide with the first falling edge of the crank
sensor signal following the wide cam tooth pulse.

COIL DWELL configuration:


Coil dwell time is the period of time the coil is charged
which is most important for an inductive generated spark. For a
setup this time doesn't matter as much. All a CDI box uses from
signal is the trigger edges. For how long time the signal stays

prior to firing
CDI ignition
the ECU ignition
high or low (the

dwell time) between the edges has absolutely no function. The spark comes from
the energy stored in a capacitor and not from inductive charging the coil.
(Disclaimer: Coil dwell calculation is closely tied to the crank sensor tooth
count and the tooth control table. To avoid damaging ignition components and/or
your EMS, AEM suggests that users utilize the Coil Dwell Wizard. Be sure to
change Coil Dwell settings in very small increments, and verify changes with an
oscilloscope.)
Dwell Max- This is the maximum time between coil charging in crank teeth. A
large number allows more available time to charge the coil while a smaller
number allows less time to charge. This sets the max duty cycle allowed,
regardless of other settings. This is the maximum "ON" time of the coil.
Set this to (Max Duty Cycle Desired * Number of Crank Teeth Per Ignition Event)
For instance, the RX-7 uses a 12-tooth crank sensor, and is firing the coils
every 6 crank teeth, so in order to limit the maximum Duty Cycle to 66%, set
Dwell Max to 4. (4 = 0.66 * 6) Setting this to 3 would yield a 50% max duty
cycle.
Dwell Min- This is the time between coil charging in crank teeth. A small number
allows more time between each charge while a larger number allows less time.
This sets the minimum duty cycle, regardless of other settings. This is the
minimum "OFF" time of the coil.
Set this to (Max Duty Cycle Desired * Number of Crank Teeth Per Ignition Event)
TIP: You could perform a similar set of calculations here, but I prefer to set
this to a low value (0.1-0.5) and use other settings to decide the minimum dwell
time.
Coil Dwell Factor- This factor adjusts the multiplier in the charge time
calculation for each coil. Coil dwell factor is just a unit less number, so a
programmer somewhere decided to multiply it by 2 in the calculation.
Ignition Charge Time = 2 * Coil Dwell Factor * (Dwell vs Batt Volts value) *
(Dwell vs RPM value)
For instance,
Dwell Factor:
Dwell vs Batt
Dwell vs RPM:

here are my table values at 2000 RPM:


30
Volts: 50
100

This results in a 3.0ms coil charge time:


3000 us (3.0 ms) = 2 * 30 * 100 * 50
EXAMPLE:
Since there are a few factors being multiplied, there are a few different ways
to achieve the same solution. Here's how I've been doing it, using a 1993 RX-7
as an example.
Here is some data gathered from a stock ECU:
RPM / Dwell / Duty Cycle:

2000
3500
5500
7000
7500

------

3.0
2.9
2.7
2.6
2.4

------

20
33
50
60
62

Notice the dwell time is decreasing, which will decrease the amount of spark
energy (which isn't desirable in most cases). This is to avoid overheating the
coils from having an excessively-high duty cycle.

Example Trigger configurations:


12tooth cam driven hall/logic sensor with 1 cam tooth
You must make several configuration changes in order for the AEM ECU to
recognize the HALL signal properly.
1. Open your AEM calibration file
2. Go to Setup >> Sensors >> Cam/Crank Sensor >> Options Cam/Crank
Setup
3. Make the following changes if youre still running a single channel ignition
system and the distributor for spark distribution:
Options Cam/Crank
Fuel Teeth: 12
Spark Teeth: 3
Ign Range: 1.50
Tooth Time Min: 50
Crank Alt Fire [ ]
Crank Alt Invert [ ]
Ign + 1 / 4 Tooth [ ]
Eng Cycle 1 Rev [ ]
Make the following changes if youre running a 2-channel ignition in a wasted
spark configuration:
Options Cam/Crank
Fuel Teeth: 12
Spark Teeth: 6
Ign Range: 1.50
Tooth Time Min: 50
Crank Alt Fire [ ]
Crank Alt Invert [ ]
Ign + 1 / 4 Tooth [ ]
Eng Cycle 1 Rev [ ]
Make the following changes if youre running a 4-channel ignition setup:
Options Cam/Crank
Fuel Teeth: 12
Spark Teeth: 12

Ign Range: 1.50


Tooth Time Min: 50
Crank Alt Fire [ ]
Crank Alt Invert [ ]
Ign + 1 / 4 Tooth [ ]
Eng Cycle 1 Rev [ ]
Options Sync Setup
Sync Early [X]
Crank Sync Skip [ ]
Missing: 0
MX Sync Test: 12
MX Time: 0
Sync Teeth: 1
Sync Err R/S: 11
Sync Ignore: 0
Tooth Control Table
Set tooth control at 5 from position 0 11, 3 on position 12, and 0 for the
remaining table (5,5,5,5,5,5,5,5,5,5,5,3)
Options Injector Phasing
Injector Phase: 7.00
Inject Tooth #01: 6.00
Inject Tooth #02: 3.00
Inject Tooth #03: 9.00
Inject Tooth #04: 0.00
Inject Tooth #05: 0.00
Inject Tooth #06: 0.00
Inject Tooth #07: 0.00
Inject Tooth #08: 0.00
Inject Tooth #09: 0.00
Inject Tooth #10: 0.00
Options Ign Phasing
Ignition Sync: 0.43 (MAY CHANGE DEPENDING UPON YOUR SYNC)
Pickup Delay Comp: 150 (MAY CHANGE)
Ign Tooth #01: 6.00
Ign Tooth #02: 3.00
Ign Tooth #03: 9.00
Ign Tooth #04: 0.00
Ign Tooth #05: 0.00
Ign Tooth #06: 0.00
Ign Tooth #07: 0.00
Ign Tooth #08: 0.00
Ign Tooth #09: 0.00
Ign Tooth #10: 0.00
Go to Ignition -> Advanced Ignition -> Coil Dwell Setup -> Coil Dwell Wizard. If
you have any type of ignition amplifier (MSD, AEM, Crane, M&W, Autronic) then
you will need to click the box for .All CDI systems.. If you are using the oem
ignition setup, with the stock coil and ignitor, you will choose. Honda Internal
Coil (92-01) or applicable.
Options Coil Dwell
Coil Dwell Factor: 20
Dwell Max: 3.00

Dwell Min: 0.05


Inside, on the bottom board, find jumpers JPT1 and JPT2. If youre looking at
the board with the harness connector to your left, they will be on the left side
of the board, near the harness connector. There are a total of 4 jumpers there,
JPT1, JPT2, JPT3, and JPT4. Do not move JPT3 or JPT4.

BOOST COMP tuning strategy:


Boost Compensation tuning
If at say 4K RPM and 100KPA you need X amount of fuel to get Y A/F then at 4K
RPM and 200KPA you will need 2X fuel to get the same Y A/F. Make sense? Yes, in
extreme cases the VE of the motor will change at some point due to restrictions
somewhere but for the most part this concept holds true.
If you look at a Full Boost Compd mapping you will see that all fuel columns
are the same vertically. The way that works is there's a Fuel Modifier table
called Boost Fuel Correction. This is setup usually so that say 100KPA is a
"zero point" - no change (the zero point can be anywhere you choose). But 200KPA
effects a +100% change in fuel and 0KPA is a -100% change in fueling. Points in
between are linear. Making sense so far?
Now - you can Boost Comp a mapping that's done cell by cell just by applying
those % changes to the existing map. The effect is greater granularity in
fueling although you MAY need to modify something called the Microsec/Bit.
MicroSec/Bit defines the number "1" in the RAW view of the fuel map - more on
that later Okay, so you now have a mapping that is Boost Comp'd but numbers up
and down are not the same - should drive as fine as the original map. You can
stop at this point or go further. IF you stop here, as I did once upon a time,
and tune multiple load rows for the same A/F you'll get a surprise as they all
become the same number.
Okay, go do a WOT pull at the lowest load value your W/G will allow - easy if
it's a N/A motor! Tune that load row to whatever A/F you need WOT and make the
cells above and below that load the same so there's no interpolation. If you
take those numbers you get and apply them anywhere you go WOT you should find
that you maintain the same A/F in those load areas that you tuned for. You now
have what I call a "Hybrid" Boost Comp map because the vacuum areas are cell by
cell. You can leave that if you want.
To get the vacuum area done for a "full" Boost Comp map continue copying those
same numbers down vertically - the car will now run pig rich. Go into a table
called the Throttle Inj Modifier. Adjust the table so that at idle you have a
decent A/F and then go for a drive. At cruising speed\throttle adjust the table
so that you get a decent cruise A/F and then calculate between the two points to
get a linear table. Play with this some but in the end you'll have a table that
removes more fuel as the throttle is closed (mine is -26%) and less at say 50%
throttle (mine is -3%) in a linear table.
Another way to do those vacuum areas is to do a little math. Say you want 12:1
in one row but the vertical numbers give you 11.5:1 - calculate the percentage
of difference between the two and either apply that to the Boost Fuel Correction
table for that load range or to the fuel table load area. Do this for every area
you want something other than whatever your WOT fueling was. In this case
there's NO Throttle Mod table filled in. So, why do it this way? Because some
smaller turbos will spool at part throttle - say on hills and things. With Full

Boost Comp it's also possible to get into a situation where say the car is
lugging on a hill and more throttle just makes it go pig rich but load doesn't
go up quickly. I'm actually about to convert to this method to try it out.
Make sense? Lot's of ways to skin this cat!

You might also like