Synchronization

Overview

Once the crank / cam sensors are configured, the synchronization strategy and tooth pattern must be set up to be able to synchronize the ECU with the engine.

When cranking / starting the engine, the ECU will initially be in an unsynchronized state. The ECU will not be able to determine the engine cycle position until synchronization is achieved.

When the ECU reaches the synchronized state, the channel iconStat Sync'd channel will be set to ON.

During cranking, the ECU uses a different control strategy to normal running.

Synchronization Strategy

The most common synchronization strategy is to use a Missing tooth (or eXtra tooth) on the crankshaft wheel, GEMS ECUs refer to this as the Sync MX strategy.

There are 4 synchronization strategies available, controlled by 3 options. These options must be set in a mutually exclusive way:

  • Sync MX - Missing / extra tooth/teeth on the crankshaft wheel.
  • Sync Cam Count - Simplest strategy, uses the camshaft sensor to determine the engine cycle position, prefer option iconSync Crank S count if possible.
  • Sync Crank S Count - Similar to option iconSync Cam Count, counts the number of crankshaft teeth between camshaft teeth.
  • Sync Cam - when the above 3 options are OFF. Ignores the table iconTooth Control table and used camshaft signal to subdivide the engine cycle.

Subsections of Synchronization

Sync MX

Overview

The Sync MX strategy is the most common synchronization strategy. It uses a missing tooth / teeth (or an extra tooth) on the crankshaft wheel to determine the engine cycle position.

Sync MX Options

The following options are used to detect the missing or extra tooth:

Option Description
option iconSync MX ON
option iconSync Cam Count OFF
option iconSync Crank S Count OFF
option iconSync Crank Divider OFF. This option has a major impact on timing interrupts and changing it requires an ECU reset.
option iconMissing Number of missing or extra teeth. Allowed values 0, 1, 2, -1. A value of -1 indicates the wheel uses an extra tooth (e.g. Honda 12+1).
option iconMX Sync Test Number of actual teeth before the missing tooth since the last missing section. For wheels with only 1 missing section or 1 extra tooth, set this to the physical number of teeth - 1. So for e.g. 36-2 this should be 34-1, which is 33. For more complex wheels with multiple missing sections (e.g. Rover K), set to the longest run of teeth without any missing teeth between them.
option iconMX Time Threshold for Missing Tooth detection. Percentage of prior tooth interval time to predict minimum interval to next tooth.
option iconStart MX Time Threshold for Missing Tooth detection (when cranking).
option iconSync Teeth Cam Synchronization, count of Cam sensor events that must occur to reset channel iconFuel Tooth No and channel iconIgn Tooth No.
option iconTest not Sync'd Set to ON so that while cranking, all opportunities are used for synchronization
option iconSync off Above Ignore the Cam sync above the specified channel iconEngine Speed, if non zero. This may be required at higher RPMs if cam and crank interrupts can interfere with each other, reducing timing precision.
option iconSync Err R/S Result in loss of synchronization (channel iconStat Sync'd => OFF) if this number of Sync errors are detected.
option iconSync Test A Tooth and option iconSync Test A enable move cam synchronisation decision at a specific channel iconA Tooth, rather than synchronisation test at last valid entry in Tooth control table. This is may be useful with variable cam control systems, where the cam signal used for synchronisation crosses the old fixed decision point. Only used with “Sync MX” Strategy.

Using a value for ‘Missing’ of 1 may be acceptable for wheels with 2 missing teeth in a row, depending upon the value of channel iconMX Time.

The value of option iconMX Time is a balance between the maximum tolerable deceleration of the engine and the ability to detect the missing tooth.

option iconMX Time or option iconStart MX Time is used to make channel icond Tooth Time that is compared with the new tooth time to detect the missing or extra tooth. If detected it is displayed in channel iconMiss Time.

This is a scaling factor for the tooth interval for giving a lower bound on when the next tooth should arrive.

If there are missing teeth then either 1 or 2 whole intervals will be added to this value, depending upon the value of option iconMissing. If there is an extra tooth then no extra intervals are added.

When the first tooth after the missing section on the wheel is detected then this deadline should be missed - and the ECU will consider this event as having just passed the missing tooth.

Missing Tooth Detection Missing Tooth Detection

For each time the table iconTooth Control table is successfully processed, the ECU will decrement the channel iconSync good count channel until it reaches 0.

Sync Cam Count

Overview

Simplest synchronising strategy, where possible use Sync Crank S Count.

Where Cam Count = Sync teeth

Cam count is the number of cam teeth between crank teeth, as in old Subaru pattern and Dodge Viper.

Examples

Toyota

24 even crank teeth per engine cycle with 1 cam tooth.

  • Tooth Control table is 0-23 = 5, 24 = 3
  • Sync Cam Count = ON
  • Sync Crank S Count = OFF
  • Sync MX = OFF
  • Sync Teeth = 1
  • MX Sync Test = 24

Old Subaru

3 crank teeth per cylinder event.

  • Tooth Control table is 4,5,6, 4,5,6, 4,5,6, 4,5,6, then at 12 = 3
  • Sync Cam Count = ON
  • Sync Crank S Count = OFF
  • Sync MX = OFF
  • Sync Teeth = 1 or 3 there are two 2s
  • MX Sync Test = 12
  • Ignition range = 0.50 teeth
  • Crank Alt Fire = ON
  • Start Ignition = -10

Sync Crank S Count

Overview

Where SS Tooth No = MX Sync test and Sync Tooth = Sync teeth

SS Tooth No is the number of internal crank teeth between cam teeth.

Sync tooth is the value of Fuel tooth at the synchronising cam tooth.

Sync Crank S Count Options

Option Description
option iconSync Crank S Count ON
option iconSync MX OFF
option iconSync Cam Count OFF
option iconSync Cam Width OFF
option iconSync Crank Divider OFF. This option has a major impact on timing interrupts and changing it requires an ECU reset.
option iconMissing Set to 0 since there are no missing / extra teeth.
option iconSync Teeth
option iconMX Sync Test

Examples

Honda S2000

24 even crank teeth per engine cycle with 3 cam teeth at TDC for only 3 cylinders.

  • Tooth Control table is 0-23 = 5, 24 = 3
  • Sync Teeth = don’t care - See channel Sync Tooth or Cam tooth1, the cam tooth for synchronisation relative to crank.
  • MX Sync Test = 12 - See channel SS Tooth No, the number of internal teeth between cam teeth at the synchronising cam tooth, the other possibility 6 is not unique as it occurs twice per engine cycle.

Toyota

24 even crank teeth per engine cycle with 1 cam tooth.

  • Tooth Control table is 0-23 = 5, 24 = 3
  • Sync Teeth = 1
  • MX Sync Test = 24

Simple crank trigger

Edge at 45deg 4 teeth cycle, no cam synchronisation.

  • Tooth Control table is 0-2 = 1, 3 = 5, 24 = 3
  • Sync Teeth = 0
  • MX Sync Test = 4

Adjust ignition range for useful +/45 degrees = 0.5

Ford P8 L8

4 even crank teeth per engine cycle with 2 cam teeth.

  • Tooth Control table is 0-7 = 5, 8 = 3
  • Sync Teeth = don’t care - See channel Sync Tooth or Cam tooth1, the cam tooth for synchronisation relative to crank)
  • MX Sync Test = 6 - See channel SS Tooth No, the number of internal teeth between cam teeth at the synchronising cam tooth, the other possibility 2 is not as strong.
  • Fuel Teeth = 8
  • Spark Teeth = 4 for wasted spark
  • Wheel Teeth = 4

Sync Cam

Overview

Old synchronization strategy used with timing wheels with a high number of teeth without any missing/extra teeth. The camshaft sensor is used to identify the engine cycle position.

Option Description
option iconSync MX OFF
option iconSync Cam Count OFF
option iconSync Crank S Count OFF
option iconSync Cam Width ON
option iconSync Crank Divider ON. This option has a major impact on timing interrupts and changing it requires an ECU reset.
option iconMissing Set to 0 since there are no missing / extra teeth.
option iconCrank Divider Divisor for reducing crank teeth to internal teeth.
option iconCam Width Test Number of subdivided teeth that must be seen in order to synchronize.
option iconSync Teeth Copied to channel iconCrank Div Sync Err if synchronization is lost; number of good sync’s required to set channel iconStat Sync'd to ON.

If the option iconSync Cam Width option is ON, synchronization is achieved if channel iconCam Width = option iconCam Width Test when the Cam interrupt occurs.
In some ECUs this may be option iconMX Sync test.

If the option iconSync Cam Width option is OFF then synchronization would achieved if channel iconSS Tooth No = option iconCam Width Test when the Cam interrupt occurs. However, channel iconSS Tooth No is only set when option iconSync Crank Divider is OFF or during crank interrupt with the Sync Crank S Count strategy enabled. So this mode is no longer of use in recent firmware versions.

In case of loss of sync, channel iconCrank Div Sync Err is set to the value of the option iconSync Teeth and decremented for each successful Cam synchronization. When channel iconCrank Div Sync Err reaches 0, the ECU will consider the engine to be synchronized and will set channel iconStat Sync'd to ON.

channel iconPulse Acc count T1 (aka channel iconPA Count T1) is captured at start of T2 interrupt, stored in channel iconPA count1 temp. This counts T1 events (crank teeth).

channel iconCam Width receives the number of subdivided crank teeth that have occurred since the last Cam sensor event.

Examples

These are historical examples that may contain errors and have not been re-tested on modern hardware.

Historical BMW M3

135 crank teeth on ring gear, one sync pulse at 1/2 engine speed.

  • Crank Divider = 9, giving 15 internal teeth per rev. 24deg/internal tooth
  • Ign Range = 2.75
  • Fuel Teeth = 30
  • Spark Teeth = 15 (wasted spark)
  • Cam Width Test = 30 (May be channel iconMX Sync Test on some ECUs)
  • Sync Cam Width = ON (? original example reported as OFF)
  • Sync Crank Divider = ON

Nissan

360 crank teeth (high speed), 4 cylinder slots of different widths, equivalent to 2,3,5,or 5 crank teeth.

  • Crank Divider = 15, giving 12 internal teeth per rev. 30deg/internal tooth
  • Ign Range = 3.0
  • Fuel Teeth = 24
  • Spark Teeth = 12 (wasted spark)
  • Cam Width Test = 251 (? - needs confirmation)
  • Sync Cam Width = ON
  • Sync Crank Divider = ON

Use only fast falling edges for crank (T1) and cam (T2).