My basic plan is to convert a mechanical injection/timing IDI Jetta in to an electronic IDI, using possibly v3.3.

NOTE: I am very, very new to this, so please explain all tech. comments well. I am a quick learner though. Work in IT, programmer etc.

Also I am not looking for people to hand feed me, if you can point me in the direction to read something I am all for it, and I will be reading the wiki lots so I may answer some of my own questions.

VW Jetta 90 1.6l IDI (Indirect injection)

The project will need very accurate crank position information for fuel injection.

- I am usually thinking in degrees, not usec, I would have to think about it though, as I would like to turn the motor at 7000rpm, with possible pizo injectors 3x/cycle

Also no spark plugs, coils, or throttle bodies are needed.

What I will need is:

  1. Hall/VR crank pos. setup
  2. Throttle pos. sensor
  3. 3 BAR MAP
  4. EGT (already have sensor)
  5. Boost controller for Variable Vain Turbo
  6. Looking to replace dash with the LCD unit to display all engine stats, if possible – more reading needed

Questions I have:

Is this Feasible?

Can VEMS handle dynamic advange? (Sounds like it can).

- I will try to get something together, might be a simple VB app but will be more visual then just looking at lines of code...

Due to the fact that I will not be useing cycles for Spark Charging/timeing only injector timeing, can I use a more advanced timing setup?

Can the VEMS handle a higher resolution on the crank? i.e. 2 deg. count for injection timing

  • 2 degrees should be possible
- This is very important as DI diesels LOVE advance, and I am looking to try to get the advance very tight

If I created a board that produced a hex number, could this be read by VEMS? (

- Not sure on this as I am not an Electronic Eng. though I have a friend who is that could help with this, but if you are saying that we can get 2deg, then I am thinking that we will be ok.

I have read quite a bit now in the Wiki, and still have found very little on how the crank trigger actually works, at least any "clear" documentation. From my understanding, the missing tooth triggers an event that causes the ECU to send fuel then spark to cylinder X. Can some one clear this up?

Firing order, 1-3-2-4.

On a side note, does any one have any good resources on sequential injection that I can read?


Timing question. How are you guys doing this? Is it with the tooth pulses? Or are you doing a count (usec)?

If a count (usec) how are you accommodating for variation in engine load/throttle blip? (if I understand the question...)

We let the user use 60-2 wheel so timing error due to sudden RPM change becomes absolutely insignificant. It is negligible for a 12 tooth wheel (or timing from 30-40 degrees) anyway.

By using tooth pulse count, and calculation with up to 3 timing inputs we can get timing down to degrees and possibly with good algorithms account for sudden engine load variation/throttle blip.

Unfortunately I haven’t had time to create a simulation…lack of internet at home :’( I will get my butt in gear here to get something posted on it though.

On Common Rails

  1. Need an output for the pressure control solenoid, along with the fuel shut off solenoid (ignition/Drag safety feature, button). Output should not be a problem. I guess it also requires an analog (mcp3208) input for feedback.
  2. Also something already identified, and something I mention here, timing, timing and timing. Diesels are very dependent on timing, unlike a gasser.

Thanks Brad