Homebrew EFI -- the ECU

Existing ECUs

Update 2008: The MicroSquirt looks like it fulfills all my requirements. This page is only here for hysterical porpoises.

The simplest way to build the ECU would be to use an existing design such as the Bowling & Grippo MegaSquirt or the MegaSquirtAVR. On the other hand, part of the fun of this project is to hack together something out of nothing, so I'm considering designing my own ECU.

Designing New Hardware

Injector Drivers

The injectors I'm using are low impedance types, which need some kind of current control device. I can't help thinking that the simplest way to drive them is going to be to use a LM1949 Injector Drive Controller which is designed for this very task and available in an 8-pin DIP package.


Eventually, I'd like to get rid of the standard 'black box' CDI units and bring ignition advance under software control. Before I do this, I'll have to learn a bit more about CDIs. Due to the high voltages involved, I'll build the igniter units into a separate box, driven from optoisolated outputs from the ECU.

Idiot Lights

One or more idiot lights on the dashboard can reveal operating mode and any error conditions. If the microcontroller can source 20mA, LEDs won't even need drivers?

Other Outputs

The engine has to switch the fuel pump and the O2 sensor heater on and off. I'd like it to take control of the starter motor too, I think, locking it out once the motor is running. Either darlington drivers or MOSFETS would be useful for this.

Designing New Software


Older Thoughts:

This stuff is based on my original notes, and will slowly be replaced by the newer, more organized stuff above.




For existing ECUs, see the Homebrew EFI Links page
homepage / motorcycles / Homebrew EFI