You are hereThoughts on using an Atmel chip to replace vacuum advance units on non-EFI engines
Thoughts on using an Atmel chip to replace vacuum advance units on non-EFI engines
An idea that has been brewing -
Use an atmel/avr (atmega8/atmega16/atmega32 etc) chip to replace the vacuum advance on pre-EFI cars, this has the advantage of allowing you to specify prefered degrees of advance based on manifold pressure (via a MAP sensor) from your laptop, other things could be worked into it such as engine/air temp etc. (air temp effects the a/f ratio)
Essentially - ensuring you have the correct amount of ignition advance ensures you burn all the fuel charge in the cylinder - when this happens you go faster, get more milage etc, if you add too much advance then the fuel is burnt up before it reaches TDC and you get "pinging" or "pinking"
All this needs to be achieved with a crank angle sensor (CAS), however we can infer these details from a little math however it means any activity will occur on the _next_ firing cylinder.
Also, we can either integrate with an existing ignition module (such as BIM 024) or use the Atmel to replace this circuitry and drive the ignition coil itself thru some heavy duty switching transistors.
Challenges
Knowing pricely what the current RPM is with maximum granularity, using this information degee's of advance would be obtained by decreasing the hold-off time until the negative side of the ignition coil is released (and thus fired).Ultimately one would remove any internal mechanical advance features of their distributor - however this could be worked in with the mapping.
Technical thoughts
At 1000rpm, you may wish to obtain 12 degrees BTDC (timing advanced 12 degrees before firing - remember more advance means the piston is further away from TDC), baseline ignition at idle and no vacuum would be 10 degrees, so you want to add 2 degrees to this.This may represent a hold off time of 5ms depending on RPM, coil firing time should be always held at about 0.9ms, that is - the time that the negative side of the coil is unconnected
Controlling the coil firing
Old school styles coils release their load when the earth to the coil is removed, using a power transistior we can replace the ignition control unit and drive the coil directly at twice the amp capacity (20Amps) that most bosch systems will drive (10Amps) allowing for bigger coils etc.Would happens is that when the engine is cranking the transistor releases the coil when a reluctor signal is detected, this is the trigger from the distributor that says "fire now!", immediately the coil negative input is release causing a spark to occur.
Working in the advance timing would mean knowing the current RPM and mapping that into number of milliseconds to shave off the dwell time of the ignition coil (prematurely fire it), we should need to use any fancy rotor caps or buttons for this as most of rotor buttons seem to have about 20 degrees of total coverage to the roto cap built in.
- reply
