Rotary Engine

Technical Library › Engine Information › MazdaUpdated Sep 2026

Rotaries don't behave like piston engines, and the ECU setup reflects that. This is our shop reference for putting a Mazda rotary on a Haltech Elite: how to tell the engines apart, what to enter for displacement and triggers, and how lead, trail and staged injectors map to ECU outputs.

Why rotaries need their own setup notes

A Mazda rotary has two spark plugs per rotor, usually two stages of injectors, and trigger hardware that changed several times across the RX-7, Cosmo and RX-8. None of it is hard once you know the rules, but guessing gets you a no-start or, worse, a misfire you chase for days. Below is how we approach a rotary install on the Elite platform, grouped by the job you're doing rather than by model.

If you're new to rotaries, read our 10 things you need to know about rotary tuning alongside this page.

Step 1: know which engine you have

These notes focus on the turbocharged engines, plus the naturally aspirated RX-8. Here's how we tell them apart on the bench or in the car:

EngineWhere you'll find itGiveawaysIgnition from the factory
12A TurboJDM Series 3 RX-7, some HB CosmosOrange cap on a carb-style throttle body, tiny ports. Bolts into any first-gen RX-7 but makes little powerDistributor with a boost retard diaphragm
13B-T Series 4Mostly 1986-88 FC RX-7Rod-driven mechanical oil metering pump, twin-scroll turbo, one TPS, straight intercooler pipe, 8.5:1 compressionWaste spark on lead, toggle-type trail igniter
13B-T Series 5Mostly 1989-91 FC RX-7Stepper-motor oil metering, two TPS, bigger single-scroll turbo, tapered intercooler pipe, 9.0:1 compressionSame as Series 4
13B-REJC Cosmo only, all automaticsSequential twin turbos, very large end-plate ports, serpentine belt, no flywheel inspection coverNot covered in our notes, confirm on the car
13B-REWFD RX-7 Series 6, 7 and 8Like the Cosmo motor but smaller ports and bigger secondary injectorsWaste spark
20BJC Cosmo only, automaticThree rotors, sequential twinsTwo dual-toggle igniters. The factory igniters will not run on a Haltech
13B-MSP (Renesis)RX-8Side exhaust ports, 10.0:1 compression, drive by wire, motorized port actuators, naturally aspirated. Manuals carry three injectors per rotorDirect fire
26B / 4-rotorLe Mans race engine, never sold to the publicAftermarket 4-rotor kits use custom cranks and end platesNeeds an Elite 2500 for 4-rotor support

Step 2: displacement and firing order

For VE-based fuel tuning, the Elite needs the engine's true swept volume. Enter these numbers, not the "equivalent" piston-engine figures people quote online:

  • 10A (2 rotors): 982 cc, firing 1-2
  • 12A (2 rotors): 1146 cc, firing 1-2
  • 13B (2 rotors): 1308 cc, firing 1-2
  • 20B (3 rotors): 1962 cc, firing 1-2-3
  • 26B (4 rotors): 2616 cc, firing 1-3-2-4

Step 3: triggers

Every Mazda rotary uses variable reluctor (magnetic) sensors, and set up properly they all trigger on the falling edge. What differs is where the sensors live and how the factory wired their grounds.

FC RX-7, Cosmo 13B and 20B: the CAS

These use a crank angle sensor that looks like a distributor and turns at half engine speed. Pop the inspection cover and you'll see a 24-tooth trigger wheel and a separate sync wheel, each with its own reluctor pickup. Wire the red NE+ lead to Trigger + and white NE- to Trigger -. The green G+ lead goes to Home + and the white/black G- to Home -. Use the yellow and green wires in each shielded 4-core.

FD RX-7: crank-mounted sensors

The FD moved to two sensors at the crank pulley: a 12-tooth inner wheel for trigger and a single outer tooth for home. The pattern the ECU sees is equivalent to the FC's CAS. The catch is that Mazda tied both sensor negatives together inside the factory loom, so the right settings depend on how you wire it:

  • Through the factory ECU connector: the black wire (12-tooth sensor, pin 2) goes to Trigger +, the white wire (1-tooth sensor, pin 2) to Home +, and the shared red negative to signal ground (the blue wire in the trigger 4-core). Set both Trigger Ground Ref and Home Ground Ref to Enabled.
  • Straight to the sensors (our preference): run each sensor's own negative back to the ECU. On the 12-tooth sensor, pin 2 black is Trigger + and pin 1 green is Trigger -. On the 1-tooth sensor, pin 2 white is Home + and pin 1 red is Home -. Set both ground reference options to Disabled.

Getting the ground reference setting backwards for your wiring is one of the most common rotary no-start causes we see.

Trigger settings at a glance

SettingFC 13B / 20B CosmoFD 13BRX-8
TDC angle5535 (not yet verified, check with a timing light)
TDC offset tableRequiredRequiredRequired
Trigger and home sensor typeReluctor, falling edge, filter 0Reluctor, falling edge, filter 0Reluctor trigger, falling edge, filter 0
Ground refDisabledEnabled (factory loom wiring)Disabled
Quick startDisabledDisabledDisabled
IgnitionFactory igniters not supported. 20B must run direct fireWaste spark, falling edge, constant chargeDirect fire, falling edge, constant charge

Whatever the model, confirm base timing with a light before you tune anything. Our guide to using a timing light covers the process.

Step 4: ignition, lead and trail

Each rotor housing has two plugs. The lead plug is the lower one (the housing is stamped "L") and the trail plug is the upper one (stamped "T"). Haltech's approach is to treat a 2-rotor like a 2-cylinder with one plug per cylinder: the lead coils take the first ignition outputs, and the trail coils are handled as extra outputs after them. That rule scales to 3 and 4 rotors.

Ignition output (wire color)Pin: Elite 1000-2500 / 550-7502-rotor direct fire2-rotor waste spark3-rotor (20B)4-rotor (26B)
#1 (yellow/black)A3 / 3Lead, rotor 1Both leads (one dual-post coil)Lead 1Lead 1
#2 (yellow/red)A4 / 4Lead, rotor 2Not usedLead 2Lead 2
#3 (yellow/orange)A5 / 5Trail, rotor 1Trail 1Lead 3Lead 3
#4 (yellow/green)A6 / 6Trail, rotor 2Trail 2Trail 1Lead 4
#5 (yellow/brown)A7 / ---Trail 2Trail 1
#6 (yellow/blue)A8 / ---Trail 3Trail 2
#7 (yellow/violet)B17 / ----Trail 3
#8 (yellow/grey)B18 / ----Trail 4

3-rotor engines need an Elite 2000 or 2500 for the extra outputs, and 4-rotor support comes from the Elite 2500.

Factory coil packs

  • FC RX-7: the lead side is a dual-post coil with a single-channel igniter bolted on. The trail side uses two coils and a "toggle" igniter, where one ECU wire sets the timing and a second wire tells it which coil to fire. Older Haltech ECUs handled it, but the Elite series cannot drive the FC trail igniter. Plan on a modern igniter such as an HPI6 or smart coils. Both factory igniters ground through their cases, so if you keep any of them, bolt them to clean chassis ground.
  • FD RX-7: coils sit under the intake with a 3-channel igniter on the inner fender. Lead is a dual-post coil fired in waste spark, trail is two separate coils. The igniter plug's light green wire (pin 3) is the lead trigger and goes to ignition output 1. Brown (pin 8) is trail 1 on output 3, and brown/black (pin 6) is trail 2 on output 4. Pin 5 (black/white) is switched 12V. Configure waste spark, constant charge, falling edge.
  • RX-8: four coils with built-in igniters, so they wire straight to the ECU. Pin A is the trigger signal, B grounds to the rotor housing and C is 12V. Use direct fire, constant charge, falling edge.

Dwell should come from the coil's own data. See our dwell time article, and if you're unsure whether a coil has an igniter inside, here's how to tell.

Step 5: injectors and staging

Rotaries run primaries in the intake runners and secondaries that come in with load. Keep the stages in order on consecutive injector outputs: on the Elite 2000/2500, outputs 1 to 4 are pins A19 to A22 (blue, blue/black, blue/brown, blue/red), 5 and 6 are A27 and A28 (blue/orange, blue/yellow), and 7 and 8 are B29 and B30 (blue/green, blue/violet).

  • 2-rotor (including the automatic RX-8): primaries on outputs 1 and 2, secondaries on 3 and 4.
  • 3-rotor: three primaries on outputs 1 to 3, three secondaries on 4 to 6.
  • 4-rotor: primaries on 1 to 4, secondaries on 5 to 8.
  • Manual RX-8: six injectors in three stages. Mazda calls them Primary 1, Primary 2 and Secondary. Wire front then rear rotor for each stage: outputs 1-2 are stage 1, 3-4 are stage 2 and 5-6 are stage 3.

Factory injector sizes

Engine / chassisPrimarySecondaryThird stage
12A Turbo, JDM first-gen RX-7800 cc--
13B 6-port NA, US first-gen RX-7720 cc--
13B 6-port NA, FC430 cc430 cc-
13B Turbo, FC and JC Cosmo550 cc550 cc-
13B Turbo, FD550 cc850 cc-
RX-8 manual290 cc380 cc380 cc
RX-8 automatic290 cc480 cc-
20B, JC Cosmo550 cc550 cc-

Step 6: throttle position and MAP

  • Series 4 TPS (one sensor only): it hits full scale at roughly 30% real throttle, which makes it useless for serious tuning. Swap to a Series 5 throttle body or sensor setup.
  • Series 5 TPS (two sensors): one covers the full range, the other is the same short-range sensor the Series 4 used. The full-range sensor is the one Mazda added for the electronic oil metering. Connect only the full-range sensor to the Haltech.
  • FD TPS: signal, 5V and ground are all you need. The idle switch contact isn't used.
  • MAP: on the FC we use the ECU's internal MAP sensor. On the FD the factory sensor works, but the internal one is still our first choice.

Common rotary problems

SymptomUsually
Cranks, RPM shows but no spark on the trail plugs (FC)Still using the factory toggle igniter, which the Elite can't drive
No RPM signal, or it drops in and out (FD)Ground ref setting doesn't match how the sensor negatives are wired
Throttle reads 100% at part throttleSeries 4 short-range TPS, or the wrong Series 5 sensor wired
Fuel model way off from the startDisplacement entered as a piston-engine equivalent instead of true swept volume
Timing light doesn't match the ECUTDC angle not confirmed, especially on the RX-8

Rotary FAQ

Is there a plug-in option for the FD RX-7?

Yes. We stock the Elite 2500 plug 'n' play kit for the Series 7 and 8 FD, and for FCs there are terminated harnesses like the Elite 1500 13B S4/5 kit.

Can I keep the factory oil metering pump?

It depends on the series and how the pump is driven. Talk to us before you decide, because oil metering mistakes are expensive on a rotary.

Which Elite do I need for a 20B or 4-rotor?

A 3-rotor needs at least an Elite 2000 or 2500 for six ignition and six injector outputs. A 4-rotor needs the Elite 2500. Book a free consultation and we'll spec the rest of the system with you.