(08-31-2020, 07:40 PM)maroka Wrote: Wow! Thanks for the quick and massive response!
I guess I should have mentioned:
-The engine has 4 COPs with a separate ignitor (only 2 wires go into each COP).
-The arduino circuit I built utilizes the transistor method that you mentioned. When the out pin is HIGH the transistor is on and sinks current to ground through a resistor, when LOW, the transistor is off and you get current going through the output of the circuit. I'll try to draw it up later today.
A little more on the arduino sketch. I coded it to sweep a range of frequencies based on the output of a pot that I had wired up. It was about 2 months ago, so I don't really remember the frequency range, but the fact is that the needle did not move. I don't have a scope to test the output of my circuit, but I have another arduino nano and I've heard of people building scopes with them, so I might try it.
Once again, thanks for the huge help!
I really wish that I had access to the donor car, but my dad bought the engine from a scrap yard and the old fart there just cut off all the wiring from the ECU and didn't even give him the immo box and key (hence the immo delete).
great, input.
yes the Arduino comes on many forms, and the 3.3v i/o version is no good. mostly, due to cars are 5v or 12v to15vdc. and not wanting to blow up Arduino.
I guess you are talking the Arduino i/0 outputs using totem pole drivers pins? (programmable I/O is what is inside)
the way to test the speedo cluster tachometer pin is use any pulse generator to test it SIG GEN, square wave 1000Hz or so range.
set it to same rate as say 3000 RPM , (4 pulses per 2 crank turns) for G16 cluster (one coil spark is what G16 uses here, with a real distributor. then)
to do so, generator output would need to be 12vdc square wave.
and see the tachometer work on a bench. test.
this test proves 2 things, tacho still good after 23 years and theory is correct. 12vdc square wave at (4 pulses per 2 crank turns (4cycle engine rules and one coil rule)
ok a COP that runs on 12vdc good, that is more easy, large signals but the bad side is EMF (100v?) will blow any Arduino to H3LL. so we use the BASE pin like E113(5) is safe.
IDK the base drive signals, say on E113 is it 5v or only 0.7vdc. IDK as scope answers that.
Arduino UNO (orig). with 40mA output limit on any output digital pin. is very limited , hardware wise. (a buffer cures that ) for sure to drive the tachometer.
Suzuki sport j18 has fire wall ignitors. as you can see blk/white is ganged 12vdc power, key on, and the 2 pins E112 and E113 are prime to usage.(1 example)
the E112 will nasty EMF , inductive kick backs on that pin, even 100v & no Arduino will survive this but E113 is safe, I also bet the ignitor drawing below is not accurate
in that the snubber clamps are missing and there may be base resistors here for example E113 , Suzuki loves to use simplified drawing making work like this very hard.
Solving this takes a scope or luck with any DMM.
one thing to do is use the DMM diode test on (red test lead to) pin 5 E113 to , pin 3 ground E113 set to diode test and the meter shows MV drop. This may show you if there are hidden resistors on the BASE pins, but real scope makes all this so much more easy. see the signal and knowing that how to scale it in to the Arduino correctly.
other unknowns here, do coil 1 and 4 fire at the same time,? as in
wasted spark mode, I have never tested for that. but is factor on all cars to consider
and this is not too important as all we care is just to use 1 coil input as the tach signal. (and does fire 1 time per 2 crank turns and not 2 time as in wasted spark mode)
lacking a scope LT/GREEN wires are same BASE drive,
here is a list of goals.
1: not blow the Arduino UNO to hell or worse the 3.3versions.(DUE or XERO) the brown pin 1 wire above sure will. (Q1 lets call coil 1 , transistor Q1 for easy refr.)
1b: not allow the mod we design and make, to cause Ignitor to fail ever. and engine die.
2: use MOSfet transistor buffer from Arduino output pin (40mA rule not violated) (vast exist, even 2n7000) to the TACHOMeter input pin, problem solved easy.
3: The Arduino needs a good but safe input from say E113(5) pin the BASE drive signal may be safe for the Arduino input pin;. only scope knows for sure.
4: Arduino INPUT needs below
0.3vdc to be a logical ZERO, and above
0.6vdc is a logical one. the above igniter will not work here. but is easy fix if too high-v. use a voltage divider resistors to lower the signal levels or again a buffer transistor to do the same. (ViH and ViL corrections)
the problem here is 2 fold, no scope sure, and no schematics exist on any ECU driver for pin 5 above and inside PCM(ECU)
We do not know the ECU drive single levels or currents to pin5. knowing this makes the mod easy, but we do not have that information.
I suspect that the drive signlal is a bipolar transistor(s)x4 and 1 series resistor to pin 5 (location of Resistor unknown but a scope tells you this !)
say 500ohms and 0/5v drive to that resistor giving only 0.7v drive to the pin 5. not 5vdc.
if say the scope shows a 0/5v signal swings, on pin 5 then then the igniter has its own 500 ohm (or so) resistor on that pin or the drawing is a lie (common in car worlds) and is a ignitor MOSFET that loves 5vdc inputs and 2v threshold too boot. SEE?
the key here is to know that many drawing on cars are super simplified,not accurate, making cars not easy to fix or work on. ever.
first the level in and out of Arduino must be good, not too large. (no damage allowed by us)
and the freq scale'r must be 1:4, example, 1000 rpm in is 4000 out. (4 coils are 4 times less pulses than one coil.)
we also do not know how the J18 cars ECU provided a tachometer on that car, at all.
my guess a dedicated pin and not documented at all. other than pin # /color wire.
most cars now are digital controlled, not analog at all. this path. (or sends serial data from ECU to cluster) all this evolved fast.
here is the very old suzuki 1 coil ignitor the books never tell the truth , this is what I found.
even my drawing is not very good, I was un willing to smash up this ignitor to find all parts inside, the DRAIN pin , I am sure has a snubber there to prevent Q1 from EMF coil kickback and destruction a clamp diode is there IBET. There is resistor inside, this is so if you remove the A12 pin side the coil does not turn on fully and burn up the ignition coil the 630ohms there prevents burn up, of coil. No coil allows 100% dutycycle, or burns up. the dotted resistor in read is test resistor.
The transistor is not BiPOLAR it is MOS (n-ch). there is never any BASE current in either polarity just 650 ohms.
91kick,TBI ,1 coil car: A4 pin on ECU on 16verion version. the below is how to test coil and ignitor as pair, for testing spark good or bad.(A12 unplugged)
I show this so you can imagine what might be in yours. IDK yours. mine yes.
top sig is COIL Minus. at transistor turns off, coil makes HUGE spark. my $50 scope. (rebuilt by me)with LED black lamps.
the spike there goes beyond 80volts, not sure how high, but dont care, it is way too high for many devices, for sure Any Arduino. cas= cmp cam sensor.
more HG = more vacuum (Hg= mercury column vac) spark advances on HG. changes.