Draft. Trigger offset has not been confirmed on a running Race Core install. Pins marked TBD are unknown — do not guess them. A wrong decoder or firing order can destroy the engine.
Mazda BP (MX-5 / Miata NA–NB)
NA 1.6/1.8 CAS (4G63-style), NB 1.8 with crank and cam, NB FL VVT. The NA CAS is a supported 4G63-family decoder — unlike Nissan 360.
Recommended: F7, V4 or Micro Core. Four sequential, COP conversion or keep wasted-spark with an igniter.
- Cylinders: 4
- Displacement: 1597 / 1839 cc
- Firing order: 1-3-4-2
- Orientation: Cylinder 1 front (timing-belt). Transverse, flywheel to the left in a RHD MX-5.
Variants
| Variant | Years | Trigger | Notes |
|---|---|---|---|
| NA 1.6 / 1.8 | 1989–1997 | Mazda CAS (4G63-style 2+2 / optical in CAS) | TunerStudio: Mazda Miata NA / 4G63 CAS family. Cable, AFM on 1.6, MAP possible. |
| NB 1.8 | 1998–2000 | Crank + cam | Missing-tooth class crank. COP/waste-spark. |
| NB FL VVT | 2001–2005 | Crank + cam + VVT | Intake VVT. BP-VE. |
Recommended pin assignment (Race Core F7)
| Pin | TunerStudio | Function |
|---|---|---|
| B10 | Digital 1 | Crank Hall |
| B1 | Digital 2 | Cam Hall |
| B5 / B13 | VR 1+ / VR 1− | Crank VR |
| A3 | Lowside 1 | Injector cylinder 1 |
| A15 | Lowside 2 | Injector cylinder 2 |
| A4 | Lowside 3 | Injector cylinder 3 |
| A16 | Lowside 4 | Injector cylinder 4 |
| A35 | Ign 1 | Cyl 1 logic coil |
| A34 | Ign 2 | Cyl 2 logic coil |
| A22 | Ign 3 | Cyl 3 logic coil |
| A33 | Ign 4 | Cyl 4 logic coil |
| C20 | Analog Temp 3 | CLT |
| C30 | Analog Temp 2 | IAT |
| C13 | Analog Volt 1 | MAP 0–5 V |
| C24 | Analog Volt 2 | TPS 1 |
| C34 | Knock 1 | Knock bank 1 |
| A20 | Lowside 10 | Fuel-pump relay coil |
| A21 | Lowside 12 | Main-relay coil |
| A12 | Lowside 15 | Radiator-fan relay coil |
| A2 | Highside 1 | VVT bank 1 / intake |
| B18 | Battery Sense | Ignition-switched 12 V (5 A fuse) |
| B23 | +12 V MR | Main-relay 12 V into ECU |
| A17 A18 A24 B14 B19 B20 | Power GND | Engine block → battery − |
Trigger
NA: Mazda Miata NA / 4G63 CAS decoder — this one is supported. NB: missing-tooth crank + cam. Do not put an NA CAS on a 36-1 decoder.
Crank
| NA CAS | Two tracks in the CAS. Wiring is 12 V, ground, two signals — crank-equivalent and cam-equivalent. Digital 1 and Digital 2, or the documented Miata CAS pair. |
Cam
| NB | Dedicated cam Hall, Digital 2. |
TunerStudio
| Setting | Value |
|---|---|
| Trigger / wheel type | NA: Mazda Miata NA / 4G63 CAS. NB: 36-1 or 36-2-2-2 class + cam |
| Use only rising edge | VR: typically yes on MAX992x. Hall: as logged. |
| Invert primary | No — swap VR wires first |
| Firing order | 1-3-4-2 |
Offset: Light on cylinder 1 (front, under the T-stat on NA).
- NC 2.0 MZR is a different engine (LF) — not this note.
Injection
High-Z, sequential four. ~180–250 cc OEM.
| Fuel | Return on NA. Keep it. |
Ignition
NA wasted-spark igniter (two channels) or COP conversion Ign 1–4.
| Dwell | 2.0–2.5 ms COP. |
Idle
Bypass ISC, PWM low-side.
First start
- Load the matching variant configuration in TunerStudio before the harness is live — injectors and coils stay disconnected until the decoder is confirmed.
- Fuel pump fuse out. Coils unplugged or spark outputs disabled. Crank. Open Diagnostics → composite / high-speed logger.
- Confirm crank teeth are even, the missing-tooth (or named pattern) is a single clean gap, and cam is one pulse per two crank revolutions for sequential four-stroke.
- RPM during cranking should sit in the 150–350 rpm band. 0 rpm or 12,000 rpm means the decoder is lost — polarity or wheel type, not offset.
- Lock timing to a fixed 10° (idle control off). Timing light on cylinder 1. Change trigger offset until the damper agrees with 10°.
- Recheck at ~3,000 rpm. If timing walks with RPM, it is VR polarity, a delayed Hall, or the wrong decoder — not offset.
- Enable spark. Confirm a healthy burn (timing light or plug colour) with fuel still disabled.
- Enable fuel. Prime, then crank. Catch the first idle on a rich-safe VE, then lean toward stoich at idle.
- Only then enable closed-loop idle, VVT, boost and traction. A base map is a starting point, not a dyno tune.
A base map is a starting point, not a dyno tune.