OSE12P Spark Cut (Dwell limiter) proof of concept

Disassembly, Reassembly, Tools and devleopment. Going deep with Hardware and Software.
Post Reply
BennVenn
Posts: 475
Joined: Fri Mar 04, 2016 10:35 am
cars: R33 GTST, '60 Vw Bug, Express (4G63T), GW X200
Location: Windellama, NSW
Contact:

OSE12P Spark Cut (Dwell limiter) proof of concept

Post by BennVenn »

I've been playing around with the EST code in 12P the last couple of days (mostly to increase dwell to drive stock N13 coils a bit harder) and have produced a working proof of concept that a form of spark cut is possible on the 808. It's been talked about here over the years but I'm not too sure how much progress was made.

I've got the dwell down to around 0.3mS which is enough to misfire the coils. It can go lower with closer attention to code paths as any changes in this routine adds timing penalties that you need to correct to maintain accurate spark timing. Having access to the source would be helpful here.

The RPM checking code is already in 12P and I'm planning on using the hard fuel cut flag to 'dwell cut'

This code isn't too resource intensive only requiring two bytes of RAM to implement and an extra 6 bytes of code space in the EST function and around 12 bytes in the rev limit checking function. The code seems to work fine with timing + and - the reference angle

What I don't know is what timing penalties would be added to the main interrupt routine (which could theoretically limit max RPM) and what affect this has at higher RPM (not sure how dwell is coded for higher RPM, it looks like static values for defined RPM regions but without the source it would take a fair bit of time to reverse engineer). At this point, the dwell time counts are coded for a specific RPM rev-limit only, a lookup table would be needed to interpolate a value over a wide region which takes up time in already tight loop. No reason tunerpro couldn't create the value for you though.
proofOfConcept.png
BennVenn
Posts: 475
Joined: Fri Mar 04, 2016 10:35 am
cars: R33 GTST, '60 Vw Bug, Express (4G63T), GW X200
Location: Windellama, NSW
Contact:

Re: OSE12P Spark Cut (Dwell limiter) proof of concept

Post by BennVenn »

Probably more useful is the fact/discovery? that the 808 timer IC does support hardware spark cut!

Bit 1 at $3FFC is the master timer enable disable bit. Setting the bit high will not output an EST pulse.

It looks like 12p code is checking the ESTLOOP timer and if it doesn't see the pulse it triggers EST bypass mode. The code below flips the bit every other reference pulse to keep 12P from forcing bypass mode. We can see we're skipping an EST pulse in the trace.

If we modify the ESTLOOP timer code to ignore an overflow while spark cut is enabled, the ECU shouldn't go into EST bypass and instead do a real spark cut for as long as we ask it. It wouldn't need to live in the EST code loop either, in one of the timeloops or beside the current fuel cut code would be more than good enough.
HWcut.JPG
User avatar
charlay86
Posts: 584
Joined: Thu Sep 17, 2009 2:00 pm
cars: VT S1 SS (L67)
Location: Perth, WA

Re: OSE12P Spark Cut (Dwell limiter) proof of concept

Post by charlay86 »

I'm sure there are several ways to force the hardware into not firing the est pulse, the trick is ensuring that it behaves reliably without any side effects.
User avatar
vlad01
Posts: 7780
Joined: Mon Oct 08, 2012 6:41 pm
cars: VP I S
VP I executive
VP II executive
VP II executive #2
VR II executive
Location: Kyneton, Vic

Re: OSE12P Spark Cut (Dwell limiter) proof of concept

Post by vlad01 »

11P has spark cut via dwell tuning. I think it was 202 that did it and got it working?

But 424 has different ignition control IC than the 808 with more functionally iirc.
I'm the director of VSH (Vlad's Spec Holden), because HSV were doing it ass about.
User avatar
antus
Site Admin
Posts: 8237
Joined: Sat Feb 28, 2009 8:34 pm
cars: TX Gemini 2L Twincam
TX Gemini SR20 18psi
Datsun 1200 Ute
Subaru Blitzen '06 EZ30 4th gen, 3.0R Spec B
Contact:

Re: OSE12P Spark Cut (Dwell limiter) proof of concept

Post by antus »

thats correct, I recall VL400 saying the functionality was moved from discrete hardware in to CPU between 12P and 11P, that was why it supposedly couldnt be done in 12P. So while it might not be possible to program 0ms in 12P it seen bennvenn has found the main switch to turn off spark, and that does work.
Have you read the FAQ? For lots of information and links to significant threads see here: http://pcmhacking.net/forums/viewtopic.php?f=7&t=1396
Post Reply