Overview
Trying to get VEMS to run in a plug and play fashion on a 1997 Seat Cordoba SX, with a 2.0-16V engine (engine code ABF). The current engine hardware:
- 60 trim T3 Garrett with 0.63 AR turbine
- Audi external wastegate
- Stacked headgaskets
- 440cc/min highZ injectors, with 750cc/min lowZ planned for later
- Just over 1 bar boost
- Mapped water injection with aquamist HSV solenoid
Sensors
- Hall-effect type crank sensor on a 60-2 trigger wheel (15th tooth at TDC; counting convention used is missing tooth#1 is 0th tooth and missing tooth#2 is 1st tooth)
- Hall-effect sensor on camshaft for camsync (1-window trigger wheel)
- Bosch coolant temperature sensor
- GM open element air intake temperature sensor
- Two stock Bosch 3-wire knock sensors
Standard actuators
- Single Bosch coil triggered by Bosch ignition module located just under the coil. Original ECU controlled the dwell. Now swapping to waste-spark using VAG coil from 2000 Golf 2.0-8V
- 2-wire 4-ohm Bosch idle control valve, operating at around 140Hz
- Currently 440cc highZ injectors, but hopefully the VEMS will be able to idle the new lowZ 750cc injectors without problems
- RPM signal from ECU to instrument cluster to drive tachometer
Extra actuators
- High current PWM driver for aquamist water injection high speed valve (HSV)
- 2 stage shiftlight using 2 large LED's
- Intake air temperature based output to drive intercooler spray solenoid
- Boost control using Cosworth or Saab boost solenoid
- one EGT using k-type thermocouple in exhaust manifold
- Noritake VFD 4x20 LCD-pin-compatible display to replace the blue LCD ordered from webshop
- One wideband bosch LSU4 sensor
Wiring
Proposed wiring for ABF to VEMS plug and play loom:
Description | ABF ECU pinout | VEMS Econoseal pinout | VEMS channel |
Main grounds | T68/1 | EC36-5,21,32,22 | |
Sensor grounds | T68/33 | EC36-26 | |
Air temp sensor | T68/36 | EC36-2 | |
Coolant sensor | T68/14 | EC36-14 | |
TPS signal | T68/40 | EC36-1 | |
Crank sensor power | T68/68 | EC36-28 (for 5V) or T68/38-EC36-25 (for 12V) | |
Crank sensor signal | T68/67 | EC36-27 | |
Camshaft sensor power | T68/46 | EC36-28 (for 5V) or T68/38-EC36-25 (for 12V) | |
Camshaft sensor signal | T68/44 | EC36-13 | |
Switched 12v power | T68/38 | EC36-25 | |
TPS reference voltage | T68/41 | EC36-29 | |
Ignition coil output 1 | T68/8 | EC36-35 | I259_0 |
Ignition coil output 2 | External wiring | EC36-33 | I259_1 |
Idle control valve | T68/27 | EC36-18 | INJFET_7 |
Injector 1 | T68/24 | EC36-7 | INJFET_0 |
Injector 2 | T68/25 | EC36-19 | INJFET_1 |
Injector 3 | T68/26 | EC36-8 | INJFET_2 |
Injector 4 | T68/2 | EC36-20 | INJFET_3 |
Injector 12V common | External wiring | EC36-23 | |
Fuel pump relay | T68/6 | EC36-15 | P259_5 |
Tachometer signal to cluster | T68/22 | EC36-10 | I259_7 |
Knock sensor 1 signal | T68/34 | EC18-3 | |
Knock sensor 1 ground | T68/32,10 | EC18-2 | |
Knock sensor 2 signal | T68/57 | EC18-3 | |
Knock sensor 2 ground | T68/55,56 | EC18-2 | |
Boost control | T68/31 (Charcoal canister) | EC36-6 | INJFET_6 |
Shift light 1 | External wiring (350mA) | EC36-4 | P259_0 |
Shift light 2 | External wiring (350mA) | EC36-16 | P259_1 |
Coolant fan | External wiring (350mA) | EC36-31 | P259_6 |
ALS kicker solenoid | External wiring (Needs external flyback diode) | EC18-12 | SPECFET_0 |
Water injection HSV solenoid (PWM) | External wiring | EC36-24 | I259_6 |
Intecooler water spray solenoid (on-off) | External wiring (350mA + 5 pole relay for override) | EC36-30 | P259_7 |
Unused outputs:
- SPECFET_1
- WOT actuator
- RPM actuator
- WB heater#2
- INJFET_4
- INJFET_5
- I259_2
- I259_3
- I259_4
- I259_5
- Stepper S259_3, S259_4, S259_5, S259_6
- Idle solenoid P259_4
Input trigger
Proposed Primary trigger settings:
- Edge: Rising
- Type: Multitooth
- Filtering: Disabled
- Advanced filtering: Disabled (NOT SURE WHAT THE FUNCTION OF THIS FILTER IS YET; waiting for EricN's page to update?)
- Special N-1: Disabled
- Fiat Stilo: Disabled
- TDC after trigger: 60
- Number of teeth on wheel: 58
- Trigger tooth: 3
- Next trigger tooth: 30
- Crank min period: 3750 usec
- Angular width of tooth: 2
- Tooth relation Normal: 122 (irrelevant with multitooth advanced filter disabled)
- Tooth relation Missing: 181 (irrelevant with multitooth advanced filter disabled)
- Angular width of missing teeth: 6
- Engine phase: 240
Proposed secondary trigger settings (not very well documented in the manual, but I might not end up using this trigger):
- Active: Enabled?
- Edge: Rising?
- Edge while cranking: single?
- Filtering: disabled?
- Type: coil type?
- Use: Alien advance?
- Rising edge phase: ?
- Falling edge phase: ?
Fueling
Req fuel = 6.49 * (D / N / I) = 6.49 * (1998/4/506) = 6.4ms (42lb injectors)
Req fuel = 6.49 * (D / N / I) = 6.49 * (1998/4/862) = 3.8ms (72lb injectors)
It's recommended to halve this req-fuel, so the max VE entries will be (instead of 100) around 200 (or even up to 255) for better precision. Thanks for this suggestion, hence new req_fuel will be 3.2ms and 1.9ms for the two injector sizes respectively.
Ignition
Coil output settings etc...
Idle valve settings
ISV details...
Boost control
Boost control settings...
ALS
Still figuring out (i.e combing wiki) how to wire up a switch to turn this function on, along with launch control.
Mapped water injection
Looking for the best hardware solution to (PWM) drive the water injection solenoid according to a 3D map, or at least in scaled proportion to the fuel injectors' pulsewidth (i.e. VE map).