VEMS

From 944wiki
Jump to navigationJump to search

VEMS is a standalone ECU popular in Europe. Since it natively supports dual VR sensors, it's able to control the 944 engine without any additional crank/cam sensor modifications. Support is flaky and very DIY, so this is largely a collection of notes. There's a plug-and-play kit available, which seems to be somewhat popular.

It requires:

  • A temperature sensor installed just before the throttle plate (a bung welded into the hard pipe is common)
  • A wideband O2 sensor installed after the turbo
  • A Turbo TPS

Options (requiring additional wiring) include:

  • Oil temp sensor
  • Wasted spark
  • Sequential injection


Triggers

Stock 951 (132 tooth + 1 tooth) trigger config

For 951: As delivered, VEMS is configured to use "auditrigger" with a divider of 11. This leads to 12 virtual teeth. It's unclear how the "first trigger tooth" setting interacts, but it appears to be used for sub-virtual-tooth-angle adjustments, and is set to 5. VEMS expects this to provide cam synchronization as well, but as the 951/944 don't have one this leads to a few oddities.


To work around this, the default config aliases cyls 1/3 and 2/4 where possible. The resulting ~50% chance at a weird idle is improved by swapping injectors 2 and 3.

Cam sync

sensor

The 944 doesn't come with any cam synchronization sensor, relying on the distributor instead. For VEMS, it's required that the cam pulse overlap the reference TDC pulse for design reasons, so many aftermarket sensors might not work! You will need to verify this.

VAG part 058905161B has been adapted, it requires a custom mount and machined rotor replacement (details?).

Bosch Motorsport HA-P (0 232 103 037) is found in many, many VAG/Mercedes vehicles (including early Boxsters), and may also be adapted.

It should also be possible to modify the rear cam cover to include a sensor (Porsche Motorsport mounted the distributor here), drilling and tapping the cam to include a magnet or bolt or other indicator for the pickup. This hasn't been publicly discussed, but is standard process for some 911 EFI conversions. Note that any modifications here will need to be oil-tight.

VEMS/electronics

It should be possible to add a cam sync sensor that works nearly out of the box (set pulses per rev to 24) by modifying VEMS in the following fashion. Resistors used are 0805 sized, 0603 will also fit.


  • Remove R59 (1k), R85 (2.7k)
  • Add a 2.7k (or similar) resistor to R48
  • Populate Q13 with some NPN BJT (BC817 is reference)
  • Maybe remove cap on D39? VEMS AAN docs suggest they leave 1nF here, probably to stretch the masking window. Possibly worth protection diode too.
  • Remove wire between JP20/JP5 (green in reference image)
  • If you want VR input on EC18 pin 12, connect JP11 pin 2 (there should be nothing currently present!) to JP20. You will need to move the reference sensor wire to EC18 pin 12 accordingly. Otherwise, pick your favorite and wire accordingly. Note: this leaves analog ch7 connected, but disabling that via SJ15 also disables a lot of the protection circuitry and requires directly wiring to EC18 pin 12 rather than JP11.
  • Smoke test!

The modifications can be see here: Front, rear.

Unmodified annotated VEMS trigg2 circuit


To troubleshoot: You should see (logic level) TDC pulses at SJ7. Disconnected the cam/hall sensor and pulling it to ground should allow all TDC crank pulses through, you can use this to observe relative timing of the masking signal and the reference signal to ensure there's sufficient overlap.


When configuring the cam sensor, you will probably want to align a positive pulse with TDC on cylinder 1. It's possible you may need to skip Q13 if you have an open-drain sensor that goes low with TDC #1.

Wheelspeed

This isn't a part of the plug-and-play harness since it requires tapping into the transmission speed sensor that only runs directly to the speedometer. You'll need to do that.

The late 944 transmission speed sensor can be wired directly into VEMS EC18 pin 8. For a late 944 turbo with stock tires/wheels (245/45/R16) the sensor produces 113 Hz at 100kph.

AOR with 245/45/16R tires

This modification grants you gear detection (thus boost-by-gear) and launch control.

There's a handy spreadsheet floating around the internet that makes all of these calculations a breeze:

Find it here.

Knock

VEMS has a Renesas HIP9011 knock chip. This seems to work well, but frequently needs configuration (many default configurations retard ignition unnecessarily). In the author's plug-and-play harness, knock sensor ground and shield were floating and had to be connected.

Without proper cam sync, it should be noted that VEMS cannot tell the difference between cyls 1/3 and 2/4 between reboots. This isn't a problem for per-cylinder retard, but it is a problem if you'd like different gains on 1/3 or 2/4.

Flex Fuel

Ethanol sensors require a frequency input, VEMS has two. VEMS doesn't appear to support the fuel temperature measurement however (pulse width).


If you've not already used wheelspeed1 (EC18-8), use that. Otherwise you'll need to route an EC pin to the internal SCL pad (it already has protection circuitry in the VEMS 3.8 referenced). If you want a flex fuel/ethanol sensor input on EC18-18 (WBO2 header or ground), remove SJ13 if present. Run a jumper wire from either EC18-18 or the WBO2 heater FET gate pad to JP13 pin 1 (leftmost).


(Pics pending)


Configure anytrim to apply a fuel correction curve based on your chosen wheelspeed input. You can also apply a flat ignition trim as well, but VEMS does not support blend tables for more complex ignition corrections.


(anytrim curve example here)

Idle

todo...stock PID settings were not correct.

Uneven idle

Some people have reported noticing (the writer included) a "hitch" in the idle 50% of starts. This is due to the fact that the injectors are ganged 1+2 and 3+4 in the stock harness and that the PnP kit is configured to fire both 1 and 2 at #1 TDC, and 3 and 4 at #3 TDC.

I'm not sure exactly why the hitch occurs, but it obviously has to do with the fact that the PnP configuration can sync to the engine with either cyl 1 or cyl 4 at TDC. VEMS by default finishes the injection at TDC for the cylinder in question. This means that it's injecting into a open valve for cyl 1 or 3 and a closed valve for 2 or 4 - maybe this unevenness contributes, maybe not.

By swapping injectors 2 and 3 (so that the pairs are 1+3 and 2+4), we can at least guarantee that at idle/low engine speeds the injection occurs against a closed valve for both cylinders. You'll probably need to remove the plastic fuel rail cover to accomplish this with the stock harness, but it is possible.

VEMS also needs to be configured to inject against closed valves: set "Injector angle curve" under Base Setup to increase from 480 around 1800 RPM to 720 at higher speeds (3-5k?). Some tinkering necessary, note that 50% of the time the cam will be syncing 180 degrees off (#4 TDC instead of #1). If the injector duty cycle is high enough you'll inject against a partially open valve, but since this is largely to solve an idle hiccup, duty cycles should be low. Note also that even if you set the injection end angle too early, and do not leave enough room between spark event and end injection angle for the desired duty cycle, VEMS will extend the injection end angle to ensure the proper amount of fuel is delivered.


If you have cam sync working, this should be a non-issue.

anytrim

'anytrim' is a handy VEMS feature that allows you to create very flexible (not arbitrary) maps between a selection of inputs and other maps. Useful for boost/fuel scaling with E85, etc.

It may be wise to use two anytrims to lower the redline and boost below/above safe coolant ("CLT") ranges.


Resources

These are useful for determining hardware config, etc. Note that the schematic is quite bad, and things like net names aren't always labeled. Refdes are frequently not present, etc. Use the layout files to help follow along. It would be nice to one day have the source files...

It is HIGHLY recommended to check these against your own hardware before adding additional inputs, as EC18/EC36 pin configuration can vary per VEMS depending on solder jumpers, etc.


VEMS 3.8 schematic

VEMS 3.8 top layout

VEMS 3.8 bottom layout