Model Engine Ignitions

Home Model Engine Machinist Forum

Help Support Home Model Engine Machinist Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
Making Sparks: Making Nano Sparks movie
1653316799791.png

Finally I'm making sparks and 1 thing is for certain my jury-rigged timing light sucks, I'll make a better one. I made a slow -mo movie but, it kind of sucks also and had to use my editing software to look at it frame by frame. It showed that on one magnet I'm off by about 3 degrees and the other is off by 5. I can get rid of this by adjusting the Hall's location in software and of course if I had only 1 magnet it would be easier. In the movie the sparks quits every now and then but, it only did it in the movie, go figure. Otherwise it was steady as a rock. Also using a longer dwell gave a better spark and it was nice to see that using a 4msec dwell I could get up to 11,000 RPM but, it starts to cut out @11,500 RPM. There is a noticeable harmonic with the LS2 coil @6,500 RPM where the spark dies down a little but, that's 1,000 RPM higher than the old GM-HEI 4 wire and not as bad. I don't know the spark strength yet, I'll wait until I have a safer setup for that. One thing I'm really happy about is the noise from the coil. It's only about 8 volts negative and about 11 volts positive so, this shouldn't be to hard to cleanup. Something strange, when I turn the motor off and let it stop it will keep firing at a rate of a heart beat. This stops if I push the reset button on the Nano. This only shows up when the motor is not turning, something else to fix.

So it seems that I have all the core hardware prototyped and I can start on the PC software for programming the Nano. I have a board designed already and will order them most likely at the end of next month. I'm using an Infineon IPP25N06S3L-22 OptiMOS-T2 Power-Transistor to drive the coil trigger signal, it stays cooler than the Nano. And of course like a lot of my stuff it's obsolete, I'll have to find a newer alternate. Maybe I should have just went with the 2N7000 FETs like I was going to do, I will in fact. I'm going to be using this setup as basis for another ignition for my race car which will be a distributorless ignition for my Olds 455. Well the cam sync is actually a Ford Mustang (5.0L) cam pulser that also drives the oil pump.

So I'm vary pleased with the way things have worked out so far. More on the video, the actual sparks at idle @550 RPM looked both blueish and orange to me but, on the video they were just orangish in colour, blue filter on my phone. Also I apologize for the spark cutting out, I kept hitting some wires that made the spark cutout. The Nano and LEDS only drew 30ma which was nice, not sure what the coil drew, I'll check later. So I have some filtering to do like pull-ups or pull-downs on unused pins an such, also maybe a snubber circuit, we'll see.

Cheers
Ray
 
Last edited:
In the movie the sparks quits every now and then but, it only did it in the movie, go figure.

I may be in quite over my head here but I would expect the spark to be missed by a movie at seemingly random intervals, unless the camera shutter is somehow synchronized to the engine. Digital cameras make it more confusing to explain, but they still have an amount of time the shutter is open and the light collected, followed by an amount of time with the shutter closed to read the sensor contents into memory. If they're not synchronized to, say, open the shutter a few milliseconds before the spark (or more after the previous spark), I'd think the fact they're running on different time bases would have you miss the spark sometimes. You'd have to be especially lucky to catch every spark.
 
I may be in quite over my head here but I would expect the spark to be missed by a movie at seemingly random intervals, unless the camera shutter is somehow synchronized to the engine. Digital cameras make it more confusing to explain, but they still have an amount of time the shutter is open and the light collected, followed by an amount of time with the shutter closed to read the sensor contents into memory. If they're not synchronized to, say, open the shutter a few milliseconds before the spark (or more after the previous spark), I'd think the fact they're running on different time bases would have you miss the spark sometimes. You'd have to be especially lucky to catch every spark.
Sorry about the confusion of what I wrote but, what I meant was a 'Murphy's law' thing because, I did several runs and didn't have the spark quit. But when I made the movie I was trying to hold the phone and watch what I was recoding. I have a bad connection on the trigger going to the coil and if I hit or touch that wire it sometimes looses it's connection.

I'm into digital photography and understand what you mean about the camera not catching all the sparks. I reviewed the recording and yes I agree with you. It shows up around the same time or speed of the frames per second the camera has. I know from watching with my eyes there was sparks but the video shows sparks dropped. I know there is no mechanical shutter but the processor reads the sensor line by line and I know this can also cause artifacts to appear or missed. My phone has a frame rate of 28 fps so anything around that or a harmonic of that will cause some problems. Oh well. I should have used my little movie camera it's like a GoPro that has a frame rate of 300 fps and made a movie, maybe next time that's what I'll use.

Cheers
Ray
 
I forgot to mention, on the scope at very high RPM it looks like it is firing on every other pulse but, it's not really, this is just the scopes triggering off channel1. If I just use channel 2 the output trigger then everything is fine. I'm still trying to learn all the features of this scope. I find that if I take the RPM very slowly then the scope will stay in sync and show all pulses to 11,000 rpm.

Also the LS2 coil will work with a dwell done to 0.5msec but spark is quite weak. I've tried from 0.5 to 4.0msec and find that 2.5-3.5 is best for spark and RPM.

Ray
 
Something strange, when I turn the motor off and let it stop it will keep firing at a rate of a heart beat. This stops if I push the reset button on the Nano. This only shows up when the motor is not turning, something else to fix.
My first guess would be that a timer is counting down to zero, firing an interrupt, and looping back through to do it all again.
 
My first guess would be that a timer is counting down to zero, firing an interrupt, and looping back through to do it all again.
Andy I checked and the interrupt is firing that's for sure, not exactly sure why but.... On the scope it shows that there is an ignition noise pulse showing up on the output of the 2N4403 which feeds to the int0 on pin 2 which should fire the interrupt. I believe this is where I'll start to track this down. Most likely I need some decoupling caps, which doesn't surprise me. It's fine when the mcu is first turned on or reset. I'll check it tomorrow and report back.

Cheers
Ray
 
Ok time for some really bad news. My normal supplier here in Canada sent me an email saying that the 328p processor which is what the Uno, Nano, and others use is either drying up or is no longer available on the market. He only has what he has in stock until next year!!!! So I went to the Microchip website and sure enough, this is what Microchip has posted for availability for All of the 328p packages;

"Out of Stock
Order now, can ship on 29-May-2023"
These normally price out from their website at $2.49 USD.

But if one wants to buy the automotive grade ones;
"Out of Stock
Additional quantities can ship by 26-Sep-2022"
These normally price out from their website at $5.25 USD.

So I'm not sure which way I'm going to go here. Might have to use a different micro-controller that stay's with the Arduino development environment.

Ray
 
Andy I checked and the interrupt is firing that's for sure, not exactly sure why but.... On the scope it shows that there is an ignition noise pulse showing up on the output of the 2N4403 which feeds to the int0 on pin 2 which should fire the interrupt. I believe this is where I'll start to track this down. Most likely I need some decoupling caps, which doesn't surprise me. It's fine when the mcu is first turned on or reset. I'll check it tomorrow and report back.

Cheers
Ray
Ah, noise on the interrupt line. Hmm - you said about heartbeat rate; could it be picking up some 60Hz noise from the mains?
 
Ah, noise on the interrupt line. Hmm - you said about heartbeat rate; could it be picking up some 60Hz noise from the mains?
Nope I checked for that and I can induce 60 Hz. hum with my hand if I want to. As soon as I take the scope probe off it stops. I moved the scope leads away from the high tension wire and it's better. Only sparks 2-3 times and stops. I need a little more work on it yet. Maybe a filtering inductor would help, something to play with. :) Oh, the spark is strong enough too burn through a sticky label, cool.

Cheers
Ray
 
Well it was bound to happen. My degree wheel came off the motor yesterday at about 11k-12k rpm. Needless to say I'm going to have to come up with something better or stop at 6,000 rpm. The saga continues.

Ray
 
Nope I checked for that and I can induce 60 Hz. hum with my hand if I want to. As soon as I take the scope probe off it stops. I moved the scope leads away from the high tension wire and it's better. Only sparks 2-3 times and stops. I need a little more work on it yet. Maybe a filtering inductor would help, something to play with. :) Oh, the spark is strong enough too burn through a sticky label, cool.

Cheers
Ray
Well, rats. I always hope it's going to be something simple. But hey, complications keep life interesting, right? :)
 
Well it was bound to happen. My degree wheel came off the motor yesterday at about 11k-12k rpm. Needless to say I'm going to have to come up with something better or stop at 6,000 rpm. The saga continues.

Ray
Use a function generator (or even a simple 555) and eliminate the physical wheel/hall/magnet/ motor etc. all together. That will also allow you to adjust the pulse width and rpm and will be more accurate and stable.
Also no need for your "timing light". You have a scope - use it to measure everything.
 
Last edited:
Tell me you have video!!!!
No I don't, sorry.:( I'm going to have setup my little GoPro and start recording everything just encase. :D
When it flew off it took out the Hall-Effect, broke the motor loose, and then hit me square in the chest. It then went to my right and landed in a box with a plastic bag in it, spinning away. When it started to slow down it climbed out and raced across the floor. I have no idea where the 2 magnets went but, 1 of them took a chunk of the disc with it. My daughter said to me "dad did you remember to roughen up the surface before epoxying them on?" I said " hell no, I'm 60 years old, do you want me to remember everything" :) That's a lot of force/weight spinning around at 12,000 rpm.

Use a function generator (or even a simple 555) and eliminate the physical wheel/hall/magnet/ motor etc. all together. That will also allow you to adjust the pulse width and rpm and will be more accurate and stable.
Also no need for your "timing light". You have a scope - use it to measure everything.
That's exactly what I was thinking 2 555's or a 556 should do it. I wanted to simulate a real flywheel and I think I have done that so it's best I do it a smarter and safer way. LOL, funny you should mention that Dave because that's what I was trying to do and do a recording on the scope. I haven't checked yet if there is a recording in the scope storage. If I have it I'll post it. I wanted to use a timing light because most people don't have a scope, oh well.

Cheers guys
Ray
 
Just wanted to say that I'm still working on this ignition. Just that I've been busy with other stuff and working on the computer program for setting the advance tables. Once done it will be just a matter of clicking on the upload button. I've tried a few languages that I think will allow me to adjust the values by multiple selections and communicate by serial with the mcu. Like electronics and machining there is more than 1 way to skin a cat, it's just deciding which way to go that's troublesome..

Ray
 
Opinion Poll: Feedback needed.
There is an inherent problem between programmers and users. Programmers have there idea of how things should be and users have theirs, so here's your chance at giving me some feedback.

The screenshot below is of the table you could say that allows one to set the timing versus the RPM. I like the colours :) but I can go 1 of 2 ways to increment the timing values. To begin one would select the cells either by 1 at a time or drag the cursor over the cells you want to change, they will turn blue in colour. next you would click on one of the controls to change the selected cells values up or down. Now I need to know which controls people would like to use Either option 1 or option 2 controls but, not both. After you change the values one clicks on"apply" and then "save". Oh I forgot to add a "reset values button" in case you change your mind.

Advance vs RPM.jpg


Remember this is a work in progress and features will be added and/or removed as time goes on and by popular demand if possible. The first cell shows RPM from 0 to 100, next is 100 to 200, and the last cell is 900 to 1000 in that row. The very last cell in row 10 is 9900 to 10,000 and I think that's lots for now. I may or may not add a graph of the curve but, for now this will have to do. Every computer programming language has things that it either allows you to do or it doesn't. Because I'm using Visual Studio, actually VB.NET I'm already at 2,000 lines of code, talk about bloatware. Anyway option 2 is easier for me (less code) but, I understand my program but, you people have input here. My ego is not too big so that I can't take constructive criticism So Have At It, let me know what your thoughts are. Option 1 or Option 2.

Cheers
Ray
 
Have an input box that the number can be set in. Then when you double click where the value goes in the chart that number changes to the number in the input box. Then you can quickly set the entire table.
 
Have an input box that the number can be set in. Then when you double click where the value goes in the chart that number changes to the number in the input box. Then you can quickly set the entire table.
I could do that but, I would have to use a textbox. I would have to do a check to make sure the number can be converted into an integer. If it fails I would then need to tell the user of the mistake. For example "3.5" would fail because of the period also "1O" would fail because that's an 'O' instead of a '0'. You could also just select the cell you want to change and type in the number. You could also select all the rows by clicking on each arrow at the start of the row which, would select the whole row. Hum I'll think about that one Steve and get back to you.

Ray
 
Also the table needs to go higher unless your ignitions are for single cylinders or v8s that only run at 2500 rpm
The program doesn't know how many cylinders there are, it's the ignition circuit itself that limits the number of cylinders and RPM. Right now using the LS2 coil and my degree wheel with 2 magnets (2 pulses per rotation) the spark starts to weaken @11,500 RPM and gives up the ghost @15,000 RPM for a 4 cylinder 2 stroke using wasted spark, not enough dwell time. a V8 using a distributor running off the cam (half speed) the RPM limit of the coil should be the same RPM. Using my degree wheel it got 12,500 RPM which, would work for a 4 cylinder 4 stroke using a crank trigger. A V8 with a cam dizzy would be the same RPM. If I use my CDI coil and CDI ignition then that number goes up to 25,500 V8 4 stroke RPM with a distributor running off the cam. With a 2 stroke (1 or 2 cylinders) that goes up to 51,000 RPM. For now I'm going to leave the program at 10,000 RPM, once finished I can always increase the max RPM. I think I got my RPM vs cylinders vs # of strokes correct. :)

Ray
 

Latest posts

Back
Top