What this page sets up
For every variable cam, the ECU needs a closed loop: read the cam's position, compare it with the target, and drive the cam's oil control solenoid to close the gap. That means each cam you control has its own position sensor and its own solenoid, and both have to be assigned here.
| Connection | What to pick | Why |
|---|---|---|
| Intake / Exhaust Cam Input | Usually the Home input or an SPI (Synchronised Pulsed Input) | These inputs can timestamp cam teeth against crank position |
| Intake / Exhaust Cam Output | Usually a DPO (Digital Pulsed Output) | The solenoid is driven with a pulsed signal to position the cam |
If one cam sensor is already your Home (sync) signal, it can often double as that cam's position input. Extra cams go on SPIs.
The SPI glitch filter
A cam signal on an SPI can pick up electrical noise, especially near coils or alternator wiring. The SPI Glitch Filter sets, in microseconds, how long a pulse must stay in its new state before the ECU accepts it. Anything shorter is thrown out as a glitch. 2D mapping is available if one fixed value doesn't suit the whole operating range.
| Filter setting | Result |
|---|---|
| Too small | Noise spikes get through as fake teeth, so cam position jumps around |
| Too large | Real teeth get rejected, particularly at high RPM when pulses get shorter |
Fix noise at the source first: shielded cable, good grounds, and routing away from ignition wiring. Then use the smallest filter that gives a steady cam angle reading, and confirm it still reads cleanly at the top of the rev range.
Troubleshooting
| Symptom | Usually |
|---|---|
| Cam angle reading jumps or flickers | Noise on the input; check shielding and grounds, then the glitch filter |
| Cam angle drops out at high RPM | Glitch filter too large |
| Cam never moves | Output not assigned, solenoid unpowered, or wired to the wrong pin |
| The wrong cam responds, or intake and exhaust readings are mixed up | Intake and exhaust inputs or outputs swapped |
Once wiring is done, tune targets in cam control, then the intake and exhaust cam tables, and target scalar if you need it.




