Custom stimulator with VVT!
Thread Starter
Joined: Jun 2006
Posts: 6,019
Total Cats: 368
From: Athens, Greece
I asked Jean of jbperf.com fame some time ago, if he could implement a VVT emulation function in the JimStim cpu. Specifically, I wanted to be able to change the phase between the cam and crank signals by using the spare pot on the stim. He said that it is not possible right now because the spare pot is not brought over to the cpu, but he would put it on his to-do list. Well, now that I have my MS2 running on the stock sensors rather than on the NA CAS back when I had the MS1, its time to do closed loop VVT control. Being a microcontroller guy, I like to do things because a) its fun and b) because I can.
Recently, my JimStim died on me, so I needed to build one from scratch. I took the liberty of building one with features not found on the JimStim:
1) proper CKP/CMP signals for my 2002 Miata w/VVT
2) VVT phasing
3) Coolant fan LED
4) A/C request w/LED
5) A/C relay and A/C fan LED
6) clutch & neutral switch emulation and LED
7) power steering switch emulation and LED
8) VREF check (red/green LED)
9) VSS emulation
10) CEL led
11) battery light LED
12) alternator field control LED
13) tachometer LED
14) system voltage potentiometer.
On the bench:
VVT phasing as seen on the scope:
Dimitris
Recently, my JimStim died on me, so I needed to build one from scratch. I took the liberty of building one with features not found on the JimStim:
1) proper CKP/CMP signals for my 2002 Miata w/VVT
2) VVT phasing
3) Coolant fan LED
4) A/C request w/LED
5) A/C relay and A/C fan LED
6) clutch & neutral switch emulation and LED
7) power steering switch emulation and LED
8) VREF check (red/green LED)
9) VSS emulation
10) CEL led
11) battery light LED
12) alternator field control LED
13) tachometer LED
14) system voltage potentiometer.
On the bench:
VVT phasing as seen on the scope:
Dimitris
Last edited by y8s; Aug 24, 2010 at 10:15 PM. Reason: only the stuff after "=" goes in the youtube tags.
I'd be able to test before putting it on a car.
Ken
J_Man wrote a program that runs on a Windoze PC. (Just the cam and crank signals, with any pattern you like, and a means of changing the VVT phase). It outputs on the parallel port. I tried it, it works.
I had one in an ancient PC running under DOS (minus VVT), for the NB sensors.
I suggest also coding for a 12+1 crank trigger wheel (a la Honda K20 / RSX) for increased crank angle resolution / accuracy.
I had one in an ancient PC running under DOS (minus VVT), for the NB sensors.
I suggest also coding for a 12+1 crank trigger wheel (a la Honda K20 / RSX) for increased crank angle resolution / accuracy.
Thread Starter
Joined: Jun 2006
Posts: 6,019
Total Cats: 368
From: Athens, Greece
There is absolutely no reason at all to go for a 12+1 crank trigger wheel when you can go for a 36-1 or a 60-2, if accuracy is what you want.
Last edited by Reverant; Aug 25, 2010 at 08:43 PM.
That would be great.. I'd love to see the MS be able to support the K20 VTC also. I'm doing a ton of K-Pro tuning and it would be great to use the MS on the Honda stuff.
As long as all the sensors work and the crank/cam signals and phasing are exactly like the stock miata, I'll use that stim and get it working.
One thing that would be nice is if the stim had some way of telling me what cam angle it thinks its commanding WRT its base position so I can compare that to what my code thinks the angle is.
I can calculate that looking at the signals on the scope, but if your code is already calculating it, having some way of seeing it would be cool. If it takes too much coding to make that possible though then forget it.
This is going to be an ms3 1.1 feature which means we'll probably start doing alpha releases in the next month or so as we start working on the features that are going in that release.
Ken
One thing that would be nice is if the stim had some way of telling me what cam angle it thinks its commanding WRT its base position so I can compare that to what my code thinks the angle is.
I can calculate that looking at the signals on the scope, but if your code is already calculating it, having some way of seeing it would be cool. If it takes too much coding to make that possible though then forget it.
This is going to be an ms3 1.1 feature which means we'll probably start doing alpha releases in the next month or so as we start working on the features that are going in that release.
Ken
So for really fast accelerating turbo engines, 36-1 is good, 60-2 is great, but for an NA 1.6-2.0L engine, it's not really going to acclerate fast enough to cause major accuracy problems, so you can safely go with 12+1, and save some time on the ms2/ms3 CPU for doing other things.
12+1 at 8000 rpm is 1600 interrupts per second, 36-1 is 4800 interrupts per second, 60-2 is 8000 interrupts per second. Every time the CPU has to process an interrupt, it's not calculating a new pulse width or looking up a new ignition timing, etc... We can handle those numbers of teeth, but like I said, I'd go with only as much as you need.
Ken
So I need to get my car working within the next month so I can start trying to blow it up. I am game.
Well, 1.1 alphas should start in a month. I have no idea if I'll have VVT done by then :P
I'd say when I'm ready to start working on it, I'll post here, and then Reverant can send me one of those nice custom stimulators for me to use to write the code.
Ken
I'd say when I'm ready to start working on it, I'll post here, and then Reverant can send me one of those nice custom stimulators for me to use to write the code.
Ken







