All Supported Triggers

See also Trigger

To change your trigger settings, open TunerStudio, Engine->Trigger Configuration.

Important Note

Cam always goes before crank. For shapes with two wheels, left wheel is top in tuner studio. Also order of channels on engine sniffer should match order of channels on the bottom part of corresponding image.

Universal

GM

Honda

Mazda

Nissan

Toyota

Subaru

Mitsubishi

Jeep & Renix

Chrysler

Miscellaneous

Universal

Universal 36/1 ToDo: add picture

60/2

If you also have a CAM sensor somewhere see VVT

60/2

32/2

36/1

36/1

36/1

36/2

x

Bosch Quick Start

x

Honda

12 crank/24 crank

Similar but different from "Custom 12/0": * "Custom 12/0" synchronizes on any tooth relying on a distributor * "12crank/24cam" is a special popular trigger which depends on cam sensor for engine phase detection.

temporary link for Honda 12

Honda K 1/12 Crankshaft

x

Honda K 4+1

Honda K Exhaust Camshaft

x

Honda CBR600

Honda CBR600

Mazda

Mazda Protege SOHC

Mazda Protege SOHC

Mazda Miata NA

Also used on some Mitsubishi like 4g18 4g93

Mazda Miata NA

Mazda Miata NB

Mazda Miata NB1

Mazda Protege 1993 DOHC

Mazda Protege 1993 DOHC

Mazda 121/Ford Aspire

Ford Aspire

GM

GM 7x

GM 7x

GM LS 24x

See https://github.com/rusefi/rusefi/pull/4140

x

GM 60/2/2/2

GM/Daewoo Distributor F8CV

x

Jeep

Jeep 18-2-2-2

Jeep 18-2-2-2

Jeep 4 cyl

Jeep 4-cyl

Renix 44/2/2

x

Renix 66/2/2/2

x

Subaru

Subaru 7+6 tooth

Subaru 7+6

36/2/2/2

Might also be used on some Daihatsu, Nissan and Miata

36/2/2

Subaru EZ30 variation of 36/2/2/2

!

Subaru SVX

x

Chrysler

Dodge Neon 1995

Dodge Neon 1995

Dodge Neon 1995 only crankshaft sensor

Dodge Neon 1995 crank only

Dodge Hemi and SRT4

x

Dodge Ram

Dodge Ram

Dodge Neon 2003

Chrysler NGC 4 cylinder

Dodge Neon 2003

Dodge Stratus

Chrysler NGC 6 cylinder

Dodge Stratus

Miscellaneous

60 degree tooth

Sovek, Saruman ignition blind type

x

Renault F

A bit of a 60/2/2

x

Suzuki G13B

x

Universal skipped wheel

A basic wheel - assumes equally spaced teeth with a number of missing teeth. Tuner studio allows up to 500 teeth with 500 missing - functional limits are not tested.

Ford Barra VVT

x

Ford Coyote VVT

x

Daihatsu

3 cylinder

x

4 cylinder

x

Benelli Tre

x

Ford ST170

x

One tooth

One Tooth

Mitsubishi

4G93

x

36-2-1-1

x

36-2-1

For example 4B11 4G15 4G69

x

3A92 VVT

x

4G69 VVT

Same as 4G15

x

6G72 Cam

x

Nissan

QR25 crank x

QR/MR cam x

VQ35 crank x VQ cam x

VQ30 x

360 slot trigger not ready yet, no test vehicles :(

Nissan

VW 60/2

VW special understanding of 60/2 with a wide tooth instead of of just missing tooth.

See also Universal True 60/2

VW 60/2

Toyota

Toyota 2JZ

1/12 version

2JZ would use global trigger offset 65

Use this with "Single Tooth First Half" VVT mode for cam input

x

3/34 version

Use skipped wheel for crank and "Toyota 3 Tooth" previously known as "VVT: 2JZ" for cam.

VVT 3-0 "Toyota 3 Tooth" previously known as "VVT: 2JZ"

1+60/2

VVT 4-1

x

Skoda Favorit

x

Ford PIP

Ford PIP

Unknown trigger type

Unknown Trigger

TODO: implement a feature so that trigger could be defined via TunerStudio

If your have an unknown or an unsupported trigger shape, once you've confirmed that trigger events are getting into the software (see "troubleshooting" sections) you need to crank your engine while rusEFI console is connected with Engine Sniffer tab active.

With long enough cranking you should get a visual log of your trigger signal, that would give you some idea of what kind of trigger shape you have. Save an image and post it on a forum. It's recommended to remove spark plugs while investigating trigger shape to make your cranking more even.

Once preliminary shape of a new trigger is added into rusEFI firmware based on the Engine Sniffer image, second step is getting a more precise recording of the shape with exact angles. This is done with spark plugs removed and Sensor Sniffer mode set to TRIGGER. With long enough cranking a chart of trigger shape would appear on the Sensor Sniffer tab and the console log file (see out/ folder next to rusefi console binaries) would contain the angles. Please post this log file on the forum for the developers to encode the new trigger shape into the software.

How this works

Trigger decoding cycle starts at 'synchronization point' - that's the trigger fall or rise event which satisfies the 'synchronization gap' condition. Since trigger synchronization point usually has nothing to do with top dead center #1 (TDC), we have have 'globalTriggerAngleOffset' parameter - that's the offset between synchronization point and TDC.

For example, 'set global_trigger_offset_angle 0', TDC is set to synchronization point, the green vertical line is TDC mark:

Offset Angle 0

Now the real TDC, 'set global_trigger_offset_angle 175' command:

Offset Angle 175

Note the different location of the green TDC line. Also note how all Injector #1 pulse has moved (Injector #3 is the lowest signal on these pictures) - that's because ignition and injection are scheduled based on TDC point.

While running ignition is controlled by ignition timing map, you can also offset the whole ignition timing map using 'set ignition_offset' command. Ignition dwell is controlled by dwell time curve.

Injection could be offset using 'set injection_offset X' command.

While cranking, you can set angle-based ignition instead of timing map & dwell based ignition. In angle-based mode, dwell is defined in crankshaft angle duration and timing is constant. set cranking_charge_angle and set_cranking_timing_angle.

See 'trigger decoding' in Doxygen

Dev note: unit_tests executable produces triggers.txt file - gen_trigger_images.bat reads triggers.txt and produces these .png files. TODO: automate this further?