S2000/f20c standard trigger solution

Testing and development of Megasquirt 3

Moderators: jsmcortina, muythaibxr

Post Reply
loser
Helpful MS/Extra'er
Posts: 38
Joined: Mon Oct 24, 2011 2:08 am
Location: stoke-on-trent

S2000/f20c standard trigger solution

Post by loser »

After a lot of head scratching I've managed to get a good sync on my Honda s2000 without making any changes to the trigger wheels and thought it might be worth sharing with anyone who might search for it in the future.

I had initally thought the honda RC51 code would run my car - knowing it had the same number of cam and crank teeth, but it turns out the RC51's cam wheel has 2 teeth 180 degrees apart then a third tooth roughly 30 degrees from one of the teeth, where as the s2000 engine the 3 teeth are all 90 degrees apart (then no tooth for 180 degrees)

So my solution was to intercept the cam singal between the ms3x card and ms3 card, invert that signal with a schmitt trigger, then feed that output of that to the reset pin of a 4 bit counter IC. (Other counter ic's use active low to reset them, the one i found on ebay needs active high, hence the need to invert the cam signal first)

Then feed the conditioned crank pulses (IE after the op-amp) to the clock pin of the counter IC, without interrupting it going to the ms3 card.

The idea is that with the s2000's 12 tooth crank wheel (so 24 teeth during a full rotation of the cam) and the cam resetting it the counter IC sees:

Crank,
Crank,
Crank,
Crank,
Crank,
Crank,
Reset,
Crank,
Crank,
Crank,
Crank,
Crank,
Crank,
Reset,
Crank,
Crank,
Crank,
Crank,
Crank,
Crank,
Reset,
Crank,
Crank,
Crank,
Crank,
Crank,
Crank,
Crank,
Crank,
Crank,
Crank,
Crank,
Crank,
Reset,

Then use the most significant bit to feed back to the ms3 card - the most significant bit first being used after it counts 8 crank pulses, which will only happen once - during the 180 degrees of cam rotation where there's no tooth.

Well it's given me a sync on my s2000 anyway, it hasn't started yet but i managed to pop the coil's fuse trying to work out ignition timing with my DIY timing light (an led torch with leads extended into the coil of cylinder #1... and then spent about 3 hours working that out and unflooding the engine several times... soon i hope :mrgreen: :mrgreen: :mrgreen:
loser
Helpful MS/Extra'er
Posts: 38
Joined: Mon Oct 24, 2011 2:08 am
Location: stoke-on-trent

Re: S2000/f20c standard trigger solution

Post by loser »

An update, I was getting sync loss using the above mentioned setup when the rpm increased above cranking rpm - my guess is the vr conditioning circuit was being charged more and taking longer to discharge.

So another method I've devised is using an arduino nano board, and similarly to the above use the crank and cam signals to count and reset until a given number of crank signals have happened without being reset, send another pin high for a moment then feed that back to the megasquirt as the cam pulse.

The difference is the arduino uses interrupts that can trigger from a rising or falling edge, rather than the pulse width of the inverter and counter ic's were using, so the increased discharge time of the vr conditioner has no effect on the timing.

Only tested to 5k rpm (by accident... It was supposed to be in flood clearing mode!) And I've not tuned anything yet but hey. First start :mrgreen:
Post Reply