TuneFI
A fuel controller that shows you the data. 100Hz logging, wideband O2, ECU sensor access, fuel map generation — all from your phone. The Full tier also recovers the factory ignition timing the stock ECU pulls at full throttle — no other piggyback does that.
What It Does
Sits between your ECU and injector. Intercepts each signal and adjusts pulse width to deliver the right amount of fuel. But unlike every other piggyback controller — it also reads the data.
Wideband O2 sensor gives you real-time air-fuel ratio. TPS and RPM logging at 100Hz builds a complete picture of your engine's fueling. The app generates corrected fuel maps from your ride data. No laptop, no dyno.
How It Works
Your ECU controls fuel by grounding the injector lead on each intake stroke. The fuel pump holds constant pressure, so the only variable is pulse width — how long the injector stays open.
TuneFI intercepts each injector signal and adjusts the pulse width based on a 3D fuel map (RPM × TPS). It also reads throttle position and RPM directly at microsecond resolution, filtering signal noise that older controllers can't handle.
With a wideband O2 sensor connected (Spartan 3 via UART), the controller logs air-fuel ratio alongside TPS and RPM — 150,000 data points from a single 20-minute ride.
Fuel Map Generation
Log a ride → export data → the tool generates a corrected fuel map based on your AFR targets. Target 14.7:1 at cruise (TPS < 30%, RPM < 6000) and gradually richer to 12.5:1 at wide open throttle.

The solver calculates a smooth transition map based on data density and confidence at each RPM/TPS point. Export as JSON, import into the app, push to the controller. No manual cell editing.
ECU Sensor Access
TuneFI also reads factory ECU data through the diagnostic port via K-line protocol. All sensors on your phone — no dealer tools required.
- —RPM
- —Throttle position (0–100%)
- —Coolant temperature
- —Intake air temperature
- —Battery voltage
- —Vehicle speed (km/h)
- —Intake manifold pressure
- —FI error codes
Ignition Timing
Above 8500 RPM at full throttle, the KLX300 ECU retards ignition — a power cliff built into the factory map (see the power-cliff Lab Report). TuneFI's TPS-spoof circuit holds the throttle signal at the threshold where timing stays fully advanced, recovering the factory timing retard. No other piggyback touches ignition.
Validated on V3 hardware — firmware support is in active polish. Why a fuel tuner alone can't fix the low-end bog, and why ignition matters, is in the EFI throttle-bog deep dive.
Videos
TuneFI Reveal — Hardware, Software & Live Demo
ECU Sensor Access — Live Factory Data on Your Phone
Specs
| MCU | ESP32-C6 (RISC-V) — MCPWM injector + DMA ADC, no BLE contention |
| INJECTOR | VNLD5160 automotive-grade driver |
| FIRMWARE | 30,000 lines of C, 92% test coverage |
| CONTROL | 3D fuel mapping (RPM × TPS), Bluetooth app |
| IGNITION | TPS spoof recovers timing above 8500 RPM (Full tier) |
| DATA | 100Hz logging: RPM, TPS, injector pulse width, AFR |
| ECU | K-line protocol — reads factory sensors via diagnostic port |
| WIDEBAND | Spartan 3 via UART, integrated AFR logging |
| LOGIC | Alpha-N |
| BIKES | Any single-cylinder EFI bike (developed on KLX250/300) |
| UPDATES | OTA firmware updates from the app |
Pre-order & Community
The V2 batch is validated and spoken for — five units, three to Discord early adopters, one on my KLX355. V3 brings the TPS-spoof circuit; the September production run is driven by pre-order demand.
Reserve a unit with a $5 deposit — Lite ($250) or Full ($350, +ignition/TPS spoof), credited to your unit, refundable until it ships. To see how TuneFI stacks up against the EJK, Power Commander, and a BDSB reflash, read the fuel-controller comparison.
Not buying a finished product — joining development at the ground floor. Technical discussion on Discord.
Development Timeline
Oct 2025
Project started
Perf board + dev board, jumper wires everywhere. First injector signal interception on the bench. ESP32-S3, MOSFET driver, potentiometers simulating RPM and throttle.
Jan 2026
First prototype running
Injector pulse width extension validated against a Dynojet Power Commander on oscilloscope. Flyback voltage from inductive load handled at the driver stage. Bluetooth app reads live data.
Apr 2026
ECU binary decoded
Community member Ross Olsen dumped the full KLX300 ECU calibration. Ignition timing analysis revealed 6° retard at WOT above 8500 RPM. Published as Lab Report. The TPS clamping fix became a TuneFI target.
May 2026
Automotive engineer hired, PCB designed
Electronics design was out of my depth. Hired an engineer who designs ECUs for a living. He took the draft prototype and turned it into a proper PCB — clean layout, RISC-V real-time processor, automotive-grade injector driver. Manufactured by JLCPCB.
May 2026
Engineering samples on the bike
Five boards built. Two running on my KLX355 for development — one month of riding, zero issues. 30,000 lines of C firmware, 30,000 lines of tests, 92% coverage. Wideband O2 integration working. Fuel map generation from ride data.


Jun 2026
ECU sensor access via K-line
Implemented K-line protocol to read factory ECU data through the diagnostic port. RPM, throttle position, temps, manifold pressure, speed, FI codes — all on your phone. No dealer tools. No off-the-shelf scanner does this for KLX bikes.
Jul 2026
V2 validated, app live
Automotive-grade injector driver (VNLD5160), waterproof aluminum enclosure, Android app live on Google Play. Hand-built batch of five, nearly gone — three to Discord early adopters, one on my KLX355. Fueling smooth, data logging end to end.
Jul 20, 2026
V3 hardware: TPS spoof works on the bike
The redesigned TPS-spoof circuit — the one open item from V2 — now recovers ignition timing on the bike. Firmware support is in active polish. This was the flagship capability that set the Full tier apart.
Next
First production units ship — September
Wiring harnesses sourced to a factory — my hand-crimping wasn't scalable. Pre-order demand drives the run, split Lite ($250) and Full ($350, +TPS spoof). First units targeting September.