VR Sensor Simulator For Ford EDIS Ignition Module

The Ford EDIS ignition module requires an input signal from a crank position sensor known as a VRS (Variable Reluctance Sensor). This is mounted on the engine and senses the passing teeth of a 36-1 trigger wheel. To test an EDIS system on the bench without a running engine, there are four options:
  1. Mount the 36-1 trigger wheel on a variable speed electric motor, and use the normal VR sensor to generate the signal.
  2. Build the Bowling and Grippo simulator using a MC68HC908QT4 microcontroller. Details can be found here.
  3. Use a PC sound card or CD player to produce Luca Lagonigro's 36-1 1150RPM test signal. Details can be found here.
  4. Use an old PC running VRSSIM as described below.
My 36-1 trigger wheel is part of the flywheel, and I didn't have an easy way of spinning it around at speeds of up to 7000 RPM. I also didn't have any means of programming a blank MC68HC908QT4 microcontroller. It occurred to me that there might be an easier way of generating the VRS signal using a PC. All that is required is some simple software to generate a signal with the correct timing on one of the PC's parallel port pins.

EDIS test bench, with VRSSIM, Megajolt Lite Jr. and oscilloscope.


The software is a very basic DOS program. To keep the timing of the signal accurate, it should only be run under 'real' DOS - i.e. not in a Windows DOS box. It is small enough to easily fit on a 3.5" floppy disk. This could be a bootable DOS disk if required.
The main VRSSIM screen is shown below. It has the facility to increase and decrease the RPM in steps of 50 or 500 RPM, or enter any integer RPM value between 100 and 10,000. Pressing the space bar will pause the program, stopping the EDIS generating sparks.

Main VRSSIM screen.

The VRS signal is output on the Data0 line of the parallel port. There is also an inverted signal on the Data1 line, and a TDC indication on Data4. The TDC indication goes high 90 degrees after the missing tooth (which is TDC for an EDIS 4), and stays high for 10 degrees. The TDC signal is useful as an oscilloscope sync signal.

The software is written in C using DJGPP (a free compiler for DOS). You can view the source code here. The program is based on a main loop that repeats every 5 degrees (as the signal needs to change at 5 degree intervals). The uclock() function is used for timing, and a switch statement generates the waveform and missing tooth.

Currently the speed of the PC used affects the highest RPM that can reliably be achieved. Minimum requirement is a 386 processor. I have tested VRSSIM on a 386SX running at 20MHz, and found results were not very good - especially over 2000 RPM. Would be ok to test if your EDIS is actually working and generating sparks though. To enable testing at higher RPM I used a Pentium running at 100MHz. This was much better and seems to work ok up to about 8000 RPM, though there is still a small amount of jitter on the signal. I am looking at writing a new version of the software (probably interrupt based) to provide better signal timing with lower jitter.

You can download the VRSSIM software here :           vrssim_v1.2.zip (72kB).

Simply unzip into the directory where you will run VRSSIM. Note that CWSDPMI.EXE must be in the same directory as VRSSIM.EXE for the program to run. Parallel ports at the common addresses of 0x378, 0x278 and 0x3BC are supported.
The VRSSIM software is covered by the GNU General Public License.


The Bowling and Grippo VRS simulator web page has a good description of how a digital output can be used to simulate the VRS signal. When using a PC to generate the signal, a floating power supply is not possible as the PC is connected to mains earth. Capacitive coupling is therefore used to convert the 0V/5V output from the PC into a +/-2.5V signal. This is superimposed on the 1.5V reference voltage present on the EDIS VRS input. The capacitive coupling circuit is shown in the diagram below. The resistor and zener diode provide some protection for the PC parallel port.

Use this circuit between the PC and the EDIS.

Circuit assembled on stripboard.

The circuit above is connected between the PC and EDIS as shown below. The output signal from the PC is on pin 2 of the 25 way D connector (pins 18-25 are gnd). The signal is fed in to the EDIS VRS+ input. The VRS- pin is left unconnected.

Connection between PC and EDIS.

The photo below shows the VRSSIM output signals on an oscilloscope. The top trace is the TDC signal (used for sync). The bottom trace is the VRS signal that is fed in to the EDIS. You can clearly see the missing tooth at 90 degrees BTDC.

VRSSIM waveforms on oscilloscope.

EDIS module, coil pack and plugs.

Comments and Questions

You can email your comments, suggestions, questions, etc. to vrssim@heggs.co.uk.

Warning and Disclaimer

VRSSIM Copyright (C) 2006 Ben Heggs.

The VRSSIM software is covered by the GNU General Public License.

All the information on this site is provided in the hope that it will be useful, but I make NO GUARANTEES of it's accuracy. Any use of this information, and the VRSSIM software, is ENTIRELY AT YOUR OWN RISK. I accept NO RESPONSIBILITY for ANY consequences.


EDIS and Megajolt information:

Last Updated: 24 March 2007
Email : vrssim@heggs.co.uk