Classicscars
Member
We have an Odd Fire V6 engine, it’s firing order is cylinder 1,5,2,4,3,6 at static timing of 0, 45, 120, 165, 240, 285 degrees.
The current ignition system has failed and is no longer serviceable. We have not been able to find an alternative system that can work with the Odd firing. I have looked at megasquirt and others.
Going to our parts bin we found these great GM coils that fit close to each spark plug. Each coil requires 5V, 300milamp for 3.5ms basically.
Using an old distributor we can set 3 magnets 120 degrees apart plus another magnet on a different radius to trigger a complete rotation.
Using 2 Hall effect sensors 45 degrees apart we can create even firings, one sensor for cylinders one two and three, the other sensor for cylinders four five and six.
The third Hall effect sensor is simply to signal completion of rotation and start the firing order again.
So with great mechanical and machinery skills, no electronic and little coding I am trying to get this to work.
Currently we just need to get this engine to fire, no need to worry about engine timing advance at this point.
Any guidence on circuit design and code would be very helpful.
Very simple process would be something like this :
Loop
// TDC sensor starts ignition sequence
Interrupt on TDC sensor sets Leftcoil =1 and RightCoil =4
// Sensor Left ignites Coils 1, 2 and 3
Interrupt Left Sensor is high then Coil 1 is high for 3.5ms
LeftCoil = leftCoil + 1
// Sensor Right ignites Coils 4,5,6
Interrupt Right Sensor is high then Coil 3 is high for
3.5ms
RightCoil = RightCoil + 1
The current ignition system has failed and is no longer serviceable. We have not been able to find an alternative system that can work with the Odd firing. I have looked at megasquirt and others.
Going to our parts bin we found these great GM coils that fit close to each spark plug. Each coil requires 5V, 300milamp for 3.5ms basically.
Using an old distributor we can set 3 magnets 120 degrees apart plus another magnet on a different radius to trigger a complete rotation.
Using 2 Hall effect sensors 45 degrees apart we can create even firings, one sensor for cylinders one two and three, the other sensor for cylinders four five and six.
The third Hall effect sensor is simply to signal completion of rotation and start the firing order again.
So with great mechanical and machinery skills, no electronic and little coding I am trying to get this to work.
Currently we just need to get this engine to fire, no need to worry about engine timing advance at this point.
Any guidence on circuit design and code would be very helpful.
Very simple process would be something like this :
Loop
// TDC sensor starts ignition sequence
Interrupt on TDC sensor sets Leftcoil =1 and RightCoil =4
// Sensor Left ignites Coils 1, 2 and 3
Interrupt Left Sensor is high then Coil 1 is high for 3.5ms
LeftCoil = leftCoil + 1
// Sensor Right ignites Coils 4,5,6
Interrupt Right Sensor is high then Coil 3 is high for
3.5ms
RightCoil = RightCoil + 1