How to MegaSquirt Your Chevy LT1, LT4 or L99 with Opti-Spark Ignition

Overview

Chevrolet LT1, LT4, and L99 engines use the Opti‑Spark optical distributor: a 360‑slot ring for crank angle and an inner 8‑slot ring for cylinder ID. MegaSquirt support is proven for both fuel and ignition. MS3Pro adds a dedicated Optispark mode (uses both rings). MS2/MS1 read the trailing edge of the 8‑slot ring when using the stock ignition module. If you’d rather delete the Opti and go crank‑triggered, see: [Link: Crank‑triggered ignition options].

Applications

  • All Chevy LT1, LT4, L99 with Opti‑Spark (Camaro, Firebird/Trans Am, Corvette, Caprice/Roadmaster/Fleetwood)
  • Level of control: Full standalone EMS — fuel and ignition.

Thanks to “Mobythevan” (hybridz.org) for MS2 settings insights.

Choose your ECU path

  • MS3Pro (Gen1/EVO/Ultimate) — No internal ECU mods; a couple pull‑ups in the harness. Dedicated Optispark mode
  • MS3 mainboard + MS3X (V3.0/V3.57) — Minor jumper changes; uses MS3X inputs/outputs
  • MS2 (V3.0/V3.57) — Internal pull‑up and simple output jumper; Basic Trigger strategy

Prefer product guidance? [Link: MS3Pro EVO] • [Link: MS3Pro ULTIMATE] • [Link: Contact Tech Support]

MS3Pro Wiring (Gen1, EVO, EVO+, Ultimate)

Optispark pinout (to MS3Pro):

A — Low‑resolution signal → White connector pin 6
B — High‑resolution signal → Gray connector pin 17
C — 12V Power
D — Sensor Ground

  • Add 1 kΩ, 1/4 W pull‑ups from TPS VREF (white pin 8) to BOTH low‑res and high‑res signals
  • Coil control using the stock module: Spark A → gray pin 27 (trigger input on the GM ICM)
  • Distributorless option: MS3Pro can use the Opti as a trigger source for LS‑style coils or IGN‑1A if you want to ditch the stock module

Sequential injection (MS3Pro) — injector pinout (gray connector):

1=A cyl 1, 2=B cyl 8, 4=C cyl 4, 6=D cyl 3, 8=E cyl 6, 10=F cyl 5, 11=G cyl 7, 12=H cyl 2.

MS3 mainboard + MS3X (V3.0 / V3.57)

ECU jumpers / internal notes

  • Install stepper‑IAC jumpers (our assembled MS3s ship this way)
  • Trigger from inverted VR output:
    • V3.0: TachSelect→VRIN, TSEL→VROUTINV
    • V3.57: JP1 = 1‑2, J1 = 5‑6
      That’s it.

Wiring (MS3X)

  • High Opti frequency uses PT4 for “cam”:
    • Optispark A (low‑res) → mainboard pin 24
    • Optispark B (high‑res) → MS3X pin 31 (PT4)
    • C = 12V
    • D = Ground
    • Add 330 Ω, 1/4 W pull‑ups from TPS VREF (mainboard pin 26) to BOTH low‑res and high‑res signals
    • Coil: MS3X Spark A (pin 14) → stock ICM trigger. Distributorless also supported if desired.

Injector outputs (MS3X):

19=A cyl 1, 16=B cyl 8, 13=C cyl 4, 10=D cyl 3, 7=E cyl 6, 4=F cyl 5, 1=G cyl 7, 20=H cyl 2.

MS2 (V3.0 / V3.57)

Internal Mods

  • Install stepper‑IAC jumpers
  • Use Hall/Optical input circuit
  • Add 12 V pull‑up on ignition input:
    • V3.0: 1 kΩ from S12 → TachSelect
    • V3.57: 1 kΩ from S12 → JP1 pin 3 (heat‑shrink, underside)
  • Stock ignition module spark output:
    • V3.0: JS10 → IGN
    • V3.57: JS10 → center hole of Q16
      That’s it.

Wiring (MS2 / MS1)

  • Stock ICM “B” terminal → ECU pin 36 (coil trigger out)
  • Optispark low‑res (pin A; usually black/red or red/black) → ECU pin 24 (tach in)
  • High‑res (pin B) not used on MS2/MS1
  • C = 12V
  • D = Ground.

Idle air control (LT1 stepper IAC)

  • MS2/MS3 V3.0/V3.57 mainboard pins 25/27/29/31 drive the GM stepper IAC
  • MS3Pro gray connector pins 30/31/32/33 drive the stepper IAC
  • GM used several IAC styles on LT‑series—verify connector type.

Other functions you may want the ECU to handle

  • Fuel pump — MegaSquirt output is ground‑switched; rewire relay coil to a switched 12 V on one side, ECU fuel‑pump pin on the other
  • Cooling fans — Typically two fans:
    • MS3Pro: PWM or high‑current outputs available
    • MS3X: use any medium‑current outputs
    • MS2: one fan via IAC on/off (pin 30) and one via MK‑RelayCtrl mod (recommend PA0 Knock Enable; feed JS11; bring out on SPR3 → DB37 pin 3)
  • Vehicle speed output (some Corvettes) — MS3 supports a VSS out. Otherwise retain the stock ECU in parallel if you need factory subsystems
  • Air conditioning — MS3 can use a spare digital input for A/C request and an output for compressor + idle‑up (MS3X or MS3Pro). Current MS2/Extra supports switched‑input idle‑up and relay control for the compressor
  • 4L60E/4L80E automatic — Not controlled by MS2/MS3 directly. Use MicroSquirt with trans firmware and the appropriate harness

TunerStudio setup

MS‑III (MS3Pro and MS3 w/ MS3X)

  • Spark mode: Optispark
  • Trigger Angle/Offset: 0 (fine‑tune with timing light)
  • Ignition input capture: Rising edge (MS3X) / Falling edge (MS3Pro)
  • Spark output: Going High / Inverted when using the stock ICM
  • Number of coils: Single coil
  • Spark hardware in use: MS3X Spark (MS3X) / Spark (MS3Pro)
  • Cam input: MS3X Cam In (MS3X) / Digital Switched In 2 (MS3Pro)
  • If using an aftermarket Opti, you may need “Flip Polarity on High‑Res Tach.”

MS‑II (MS2/Extra)

  • Spark mode: Basic Trigger
  • Trigger Angle/Offset: ~90° (confirm with a timing light)
  • Ignition input capture: Falling edge
  • Spark output: Going High / Inverted (stock ICM)
  • Spark hardware in use: JS10
  • Cranking trigger: Calculated
  • Dwell: depends on coil; use the lean‑cruise misfire method, then add ~0.2 ms.

MS1/Extra

  • Spark Output Inverted: No (stock ICM)
  • Trigger Angle: start ~68° with Trigger Angle Addition 22.5° (verify with timing light)
  • Dwell: tune per coil as above.

Suggested parts

MS3Pro (Chevy LT1/LT4/L99)

MS2 options

MS3 mainboard + MS3X

Transmission control