digital ignition advance display
Post Reply    Forum -> Project Reports
Author Message
Enthusiast
Derbi Boulevard 125 4t
Joined: 05 Feb 2020
Posts: 57
Location: Lithuania
Fri May 08, 2020 6:02 am quote
Hey,

Have created another small project. It is digital ignition advance angle display for scooters with CDI. It takes signal from pickup coil and signal from wire wound around spark plug wire, does the math and displays RPM and advance degrees. Has button to adjust pickup coil signal degrees BTDC.

Code: https://github.com/rverzinkevicius/ignition_advance

Veni, Vidi, Posti
74 Super, 75 Super, PX project, LML off-roader and new to 2018, '66 Blue Badge Smallframe
Joined: 30 Nov 2011
Posts: 7658
Location: Victoria, Australia
Fri May 08, 2020 6:25 am quote
Re: digital ignition advance display
isdeekelis wrote:
Hey,

Have created another small project. It is digital ignition advance angle display for scooters with CDI. It takes signal from pickup coil and signal from wire wound around spark plug wire, does the math and displays RPM and advance degrees. Has button to adjust pickup coil signal degrees BTDC.

Code: https://github.com/rverzinkevicius/ignition_advance
Looks very interesting. I guess this won't work on a 2 stroke Vespa with Ducati CDI?
Ossessionato
BV350, Primavera 150, Yamaha Zuma 125
Joined: 06 Jun 2013
Posts: 3106
Location: The Twin Cities of Minneapolis/Saint Paul, Minnesota
Fri May 08, 2020 6:40 am quote
Offhand, I don't see why it wouldn't work with some modifications to the software.

Interesting project!
Member
Joined: 30 Jul 2016
Posts: 5
Location: Philly 'Burbs
Thu May 14, 2020 12:59 pm quote
Will it work on a 2 cylinder motor where both plugs fire simultaneously but the firing order is 360 out of phase (if that makes sense)?
Enthusiast
Derbi Boulevard 125 4t
Joined: 05 Feb 2020
Posts: 57
Location: Lithuania
Fri May 15, 2020 4:50 am quote
I think yes. There are few conditions for this to work: you need to have pickup coil and not contact ignition. You need to know how many degrees BTDC pickup generates signal. Also voltage of pickup coil should not be more than 3 volts in order not to damage esp8266.

Current code also has output for timing light, which requires 2n2222 transistor, 200 ohm resistor and LED. But i have noticed that advance mark is jumping few degrees at idle while checking with timing light and don't know why...
Veni, Vidi, Posti
74 Super, 75 Super, PX project, LML off-roader and new to 2018, '66 Blue Badge Smallframe
Joined: 30 Nov 2011
Posts: 7658
Location: Victoria, Australia
Fri May 15, 2020 2:56 pm quote
isdeekelis wrote:
But i have noticed that advance mark is jumping few degrees at idle while checking with timing light and don't know why...
On your unit?
All I know is that using the Ducati type ignition (which is static rather than variable) you should set the ignition timing at around 3000 rpm on say, a PX. You'll see the timing move with the light on it lower than that... not a lot but enough to require setting at the higher speed.


Enthusiast
Derbi Boulevard 125 4t
Joined: 05 Feb 2020
Posts: 57
Location: Lithuania
Sat May 16, 2020 7:46 am quote
Same jumping both with usual timing light and timing light controlled by my unit.
I thought on usual timing light jumping is due to noise generated by coil/plug, so you first see light splash during spark and then several splashes afterwards generated by noise. I tried to eliminate this effect in code by ignoring subsequent voltage spikes after first one, but it looks like ignition is indeed jumping few degrees forth, but not back (retards, but not advances more than set).
Will check if signal from ecu sent to ignition coil is also jumping.

Anyway, i see correct advance degrees on screen and it doesn't jump and this was my goal.
Enthusiast
Derbi Boulevard 125 4t
Joined: 05 Feb 2020
Posts: 57
Location: Lithuania
Sat May 16, 2020 9:56 am quote
Although code handles noise, that noise is strong enough to trigger resistor which lights LED. Removing sensing wire from spark plug wire and simply holding it in hand (body works as antenna) eliminates jumping! So i need some circuit to reduce sensitivity.
Enthusiast
Derbi Boulevard 125 4t
Joined: 05 Feb 2020
Posts: 57
Location: Lithuania
Sun May 17, 2020 4:18 am quote
Success! Simple 0.01uF capacitor between spark sensing pin and GND solved it. Now mark is steady at idle.
Will try to draw schematic for whole this thing.

https://github.com/rverzinkevicius/ignition_advance/blob/master/tl.mp4?raw=true
Ossessionato
BV350, Primavera 150, Yamaha Zuma 125
Joined: 06 Jun 2013
Posts: 3106
Location: The Twin Cities of Minneapolis/Saint Paul, Minnesota
Sun May 17, 2020 4:50 am quote
I would add some transient suppression diodes to the spark and pickup inputs to protect the processor. There's nothing to limit voltage spikes from either source.

For example:
https://www.digikey.com/en/datasheets/littelfuseinc/littelfuse-inc-littelfuse_tvs_diode_sa_datasheet
Enthusiast
Derbi Boulevard 125 4t
Joined: 05 Feb 2020
Posts: 57
Location: Lithuania
Sun May 17, 2020 10:17 pm quote
Should be it:




By the way there is file "ignition_advance.bin" in github page. It is already compiled and there is no need to have Arduino IDE with all connected libraries. Just use https://github.com/nodemcu/nodemcu-flasher
Team Scooter Trash for Petfinder Foundation   Vespa Wasp Pin Badges   Cool Ass scooter seat cover
Post Reply    Forum -> Project Reports
[ Time: 0.1381s ][ Queries: 26 (0.0275s) ][ Debug on ]