Basic Quad Bike ECU - MAP and VR Sensor Based

Hello all,

My first ambitious arduino project is to take a children's quad bike which wasn't running due to carby issues and convert it to EFI + electronic ignition. The basic gist of the project is this:

  • fuel will be delivered via a high pressure fuel pump with a pressure regulator to provide a constant pressure to the injector

  • the RPM calculation and ignition timing will be taken from an existing variable reluctance sensor on the crankcase

  • the spark will be generated using an LS1 coil pack (which takes a microcontroller 5V output directly to fire the spark plug) to keep it simple

  • the amount of fuel required will be calculated using a manifold air pressure (MAP) sensor, a inlet air temperature sensor (IAT) and the RPM calculated via the VR sensor.

For this I have put together the following schematic - any critiques and thoughts would be much appreciated please! I am quite green with all this and am very open to suggestions and improvements!

The IC for converting the VR sensor output into a microcontroller friendly input is a MAX9924, the MAP sensor is a MPX4250AP1, and the IAT sensor is a basic NTC thermistor. The injector I have taken from a Peugeot 306 car and seems to open ok on a 12V signal via the MOSFET as shown below.

The plan for the code on the microcontroller (a Mega 2560) is to have it fire the spark when it gets the input from the VR sensor and then to provide fuel according to the following steps:

  • calculate the mass of air going in to the engine via the ideal gas equation

  • n = PV / RT where P comes from the MAP sensor, V comes from the RPM calculated and the size of the engine (which is about 80cc), T comes from the IAT sensor, and R is constant.

  • with this then the mass of fuel is calculated as 1 / 14.7 * mass of air

  • With the rate of fuel through the injector at the set fuel pressure having been previously calibrated the microcontroller can then pulse the desired amount of fuel through.

The schematic developed so far is this:

Kind regards,

I think it would be very unwise to risk a child's life with a DIY engine control system. Especially based on advice from people on a Forum whose qualifications (if any) you know nothing about.


Hello Robin,

I don't even know where to begin with such an irrelevant reply. I was going to say thanks for your concern but that would not be a genuine response to a genuine concern.

This is not about making a better quad bike so that a child can play on it, if it were the project would be an incredibly expensive and stupid way to do that. Heck, the owner of the quad has now outgrown it! The whole point of this project is to learn how to work with arduinos and design and build an interesting circuit and system, with hopefully some input from fellow amateurs who love electronics too!

I should add that this sort of post is enough to ensure that people won't feel comfortable to contribute to this thread, and also is a terrible welcome for a new member. Hopefully a moderator will remove it (and this post too).

Let's keep this technical going forwards please!

Kind regards,

How else was I (or anyone else) supposed to interpret your opening sentence

My first ambitious arduino project is to take a children's quad bike ....

There is no way I am going to help with any project that puts people's lives or health at risk and I know from other Threads that other regular contributors to the Forum share my view.

If you had provided assurance in your Original Post that the modified bike would not be used by anyone other than yourself and only on land to which the public has no access my attitude would have been different.

You may wish to give that assurance in your next Reply.


Robin, this is silly. Your help wasn't specifically requested and you have no obligation to assist. If you feel compelled to offer unsolicited moral advice there are plenty of other avenues for such activities rather than on an arduino forum!

And no, I will not be complying to such nonsense. To quote John McEnroe "You cannot be serious"!

Again, let's keep this technical going forwards please, and please don't reply if you have nothing to add but further irrelevant and undesired commentary.