MembersPage/MarteleurTim (2015-01-01 07:00:00)

I want to turbocharge my BMW 518i E28 M10 engine by using VEMS

I live in Belgium


Engine specs

Initial completely stock engine, in second stage-->(turbo, inj, intercooler...)


ITEMS TO BUY:


TPS issue

A true potentiometer type TPS is recommended for full use and control. A WOT switch is not much use, it can be used to raise boost target with BoostControl. In MegaTune you configure and calibrate the maximum and minimum TPS values (idle and WOT). You can also set the idle threshold value (1-2%).

Only in some cases do you really need to know the exact position of the throttle plate. You can use a resistor grid with the stock "on/off" TPS, to make three distinct positions/resistance values (idle, in between, WOT). It has worked really well on this car: MembersPage/MattiasSandgren/BmwSevenTwentyEight

The basic idea is to connect the TPS In (EC36-1) to a pullup resistor towards +5V (EC36-28) and a pulldown resistor towards GND. The pullup resistor is shorted by the WOT switch (raising TPS In to +5V) and the pulldown grounds the signal. To protect from a short (should never happen), connect a resistor between GND and the pullup resistor and Idle-switch so that there is a minium resistance to be met between +5V and GND at all times. Use 1K resistors, or similar size.

[A drawing of the circuit used with the stock TPS]

calibrating TPS

In MegaTune, go to the menu Tools -> Calibrate TPS and get the values for idle and WOT. Enter those in Settings -> Basic Settings window. You can use a narrower range of values to ensure that there is no movement due to a noisy signal (there should be no noise)


PS2 keyboard

The JP_PS1 headers is the one in this picture, to the left of the Atmel. Pin 1 is the one furthest from the EC connectors and also farthest up in the picture. Documentation on this is under reconstruction, I can't find the old page anymore. //Mattias

JP_PS1Mini DIN6Function
14Vcc
23Gnd
31Data
45Clock

[PS2header]


Coldstart

Q: How will I control coldstart issues?

I use the Auxiliary air valve, it does a good and reliable job and is activated as the "fast idle" valve, and shuts off at a specific temperature with th thermotimeswitch.

Q: When I use the Auxiliary air valve how will the electrical heating be ensured?

  • You can use the default EC36-pin3 (P259, 4) to ground a relay that in turn delivers power to an electrically controlled auxiliary air valve. It's a good idea to mount an external flyback diode (1n4007 or BY399 or even an SMB package surface mount diode) across the relay (or solenoid, if powered directly). Cathode (marked -) pin goes to the positive +12V switched supply pin, and the Anode pin goes to the ECM output channel.

SOLDERED THESE COMPONENTS ON V3.3

1. Flyback lead see pic: [flybacklead]

2. From Rescue kit1 the inductor marked 1R5 must be soldered Between A&B.

If a fused power supply is being used then a wire must connect 1&2, otherwise a fuse link must be used. see http://vems.hu/www.vems.co.uk/VEMS/ConnectingPower.htmlpowerconnections

3. EC18 + EC36 connector

4. 8 IGBT's + 8 FET drivers

5. MAPsensor

6. PS2header + connector

7. LCD Header + connector

8. Serial header + connector

9. D37 Transient supression diode [diode mounted]

10. solder JP2 & JP7

11. solder R30=2k7 pullup resistor


Trigger/ignition plan: MembersPage/MarteleurTim/Ignition


Power Up: MembersPage/MarteleurTim/Powerup


UPDATE 17/2/2006

JIHAAAAAAA!!!!!! the car is running. Started from the first attempt and I even drove it to work today with little tuning. Still needs some tuning.


UPDATE 18/05/2006

I have some tuning problems.

When I attempt to tune the lower kpa in neutral gear on 2500rpm I am not able to find the right VEvalue, it always reads lean (1.35), I have VE=230 at 23kpa with 2500rpm and lambda 1.35, and VE=160 at 50kpa with 2500rpm while driving with a good lambda of 1.05. Is this related to a fault in the config?

The results is a bit strange but your req_fuel=50 should be MUCH too small for those injectors. Strange things might happen when you are that much off. 23kPa is also a VERY low pressure, did you check the MAP calibration?

A. OK the map calibration was not correct!

Q. Now following problem occurs: when I push the pedal the lambdavalues increase for a very short moment to very lean conditions such as 1.35 and then go back to normal as expected with those VE values? Do I need to adjust this with the acceleration enrichement or can this be due to other parameters. I will update my config later.

primep=00

primep_temp_scaling=80

cwl=B4

cwh=46

cranking_thres=03

awev=1B

awev_temp_scaling=98

awc=C8

warmup_clt_range[0]=00

warmup_clt_range[1]=00

warmup_clt_range[2]=00

warmup_clt_range[3]=0D

warmup_clt_range[4]=50

warmup_clt_range[5]=64

warmup_clt_range[6]=78

warmup_clt_range[7]=8C

warmup_clt_range[8]=AA

warmup_clt_range[9]=C8

warmup_clt[0]=AA

warmup_clt[1]=A2

warmup_clt[2]=9B

warmup_clt[3]=96

warmup_clt[4]=91

warmup_clt[5]=87

warmup_clt[6]=82

warmup_clt[7]=79

warmup_clt[8]=6C

warmup_clt[9]=64

warmup_rpm_scale=FF

req_fuel=50

divider=01

alternate=03

injopen=1F

battfac=10

kpafac=7D

kpaoffs=3C

injocfuel=15 # this value is likely too low (try 1200 usec or so) and results in high VE values at low-kPa

injrampup_battfac=FF

injpwm=00

injpwmt=FF

injpwm6=00

rpmk[0]=0B

rpmk[1]=B8

tpsdot_kpadot_conf=01

tpsdotrate[0]=05

tpsdotrate[1]=0E

tpsdotrate[2]=20

tpsdotrate[3]=40

tpsaq[0]=00

tpsaq[1]=00

tpsaq[2]=00

tpsaq[3]=00

tps_thresh=05

tpsasync=02

acmult=64

tpsacold=0A

tpsdq=64

decel_fuelcut_thres=FF

overrun_fuelcut=10

overrun_fuelresume=0F

rev_limit=40

airden_ignore=62

config11=30

config12=30

config13=02

batt_cal=A5 is the battery voltage calibrated ? (see LCD after mlp06, or MegaTune)

fastidle=80

baro=64

dbaro=0C

tps_low=93

tps_high=FF

fan_temp=55

fan_hyst=09

fan_channel=FF

iac_step_seq=C9

iac_conf=7E

iac_max_steps=E8

iac_tps_thres=05

iac_cold_idle_temp=A0

iac_warm_idle_temp=CF

iac_cold_rpm=65

iac_warm_rpm=4F

iac_cold_start_pos=FF

iac_warm_start_pos=FF

iac_afterstart_rpm=0C

iac_afterstart_duration=FF

iac_speed=FF

iac_kp=25

iac_ki=10

iac_kd=30

iac_integral_speed=C0

iac_integral_limit_dec=33

iac_integral_limit_inc=E4

iac_integral_deadband=0A

iac_deadband=05

iac_pid_conf=01

iac_overclose_interval=FF

iac_ref_pos[0]=61

iac_ref_pos[1]=5C

iac_ref_pos[2]=57

iac_ref_pos[3]=4F

iac_ref_pos[4]=4D

iac_ref_pos[5]=47

iac_ref_pos[6]=38

iac_ref_pos[7]=30

iac_ref_pos[8]=2E

iac_ref_pos[9]=2E

iac_sol_channel=FF

iac_ign_advance_change=10

iac_ign_retard_change=10

iac_ign_advance_limit=10

iac_ign_retard_limit=18

iac_ign_threshold=08

ego_conf=06

ego_lag=01

ego_coolant=B4

ego_maxtps=FF

ego_maxmap=6E

ego_minrpm=0F

ego_maxrpm=3C

ego_warmup=3C

ego_lean_limit=12

ego_rich_limit=0A

ego_pid_kp=25

mt_unused=00

ego_delta=05

ego_target=19

ego_pid_window=FF

wbo2_warmup_ramp=FF

wbo2_warmup_target=FF

wbo2_abs_limit=E4

wbo2_limit_maxt=A0

wbo2_fallback=60

wbo2_retry_t=06

wbo2_edgetime_corr=BA

wbo2_edgetime_min=50

wbo2_ri_target=96

wbo2_nernstdc_target=9C oops... 0x89 is the right value (don't forget to save, reboot and check this value after reboot to be sure) if you have the AREF(=256) , see BuildProcedures/SectionThree

wbo2_pump_pw_zero=64

wbo2_calibration=DA

wbo2_heater_pid_kp=45

wbo2_heater_pid_ki=11

wbo2_heater_pid_kd=1A

wbo2_heater_pid_ilimit=81

wbo2_pump_pid_kp=15

wbo2_pump_pid_ki=4E

wbo2_pump_pid_kd=00

wbo2_pump_pid_ilimit=FF

wbo2_ri_confidence_scale=80

knock_conf=00

knock_sampling_window=F2

knock1_frequency=29

knock1_gain=00

knock1_integrator=14

knock2_frequency=29

knock2_gain=00

knock2_integrator=14

knock_threshold=FF

knock_noise_scale=D8

knock_max_retard=00

knock_default_retard=00

knock_retard_step=00

knock_retard_delay=FF

knock_advance_step=FF

knock_advance_delay=50

knock_minrpm=FF

knock_maxrpm=05

ve_learn_coolant=D8

ve_learn_max_power=FF

ve_learn_rpm_scale=1E

ve_learn_kpa_scale=1E

ve_learn_ego_scale=43

ve_learn_min_weight=4D

ve_learn_speed=FF

ve_learn_limit=FF

ve_learn_conf=01

lcd_c0=FF

lcd_delay=FF

lcd_backlight=FF

lcd_offs[0]=FF

lcd_offs[1]=FF

lcd_offs[2]=FF

lcd_offs[3]=FF

lcd_default_view=00

primary_trigger=03

secondary_trigger=02

tooth_wheel=02

trigger_tooth=10

another_trigger_tooth=1E

crank_minper=4B

tooth_wheel_twidth1=00

tooth_wheel_twidth2=00

cam_sync_r_edge_phase=FF

cam_sync_f_edge_phase=FF

reset_engphase_after=FF

ign_tdcdelay=7A

ign_dwell14=2F

ign_dwell6=44

ign_crank_advance=28

ign_out=70

ignchmax=03

engine_off_delay=08

pump_on_mintime=10

fuelpump_channel=57

inj_stage2_rate=FF

inj_stage2_start_tps=FF

inj_stage2_start_map=FF

als_deact_rpm=FF

als_deact_time=FF

als_deact_egt=00

als_retard=FF

als_rev_limit=40

misc1out_minrpm=0A

misc1out_maxrpm=1E

misc1out_mintps=40

misc1out_maxtps=FF

misc1out_minmap=50

misc1out_maxmap=FF

misc1out_channel=0F

misc2out_minrpm=FF

misc2out_maxrpm=FF

misc2out_mintps=FF

misc2out_maxtps=FF

misc2out_minmap=FF

misc2out_maxmap=FF

misc2out_channel=0F

act_wot_rpm=FF

act_wot_channel=2E

act_rpm_rpm=FF

act_rpm_channel=FF

egt1_cal=40

egt1_offs=00

boost_conf=00

boost_targetoffs=00

boost_minpressure=FF

boost_pid_kp=20

boost_pid_ki=80

boost_pid_kd=01

boost_pid_ilimit=FF

boost_channel=FF

water_pump_temp=00

hybrid_rpm_a=00

hybrid_rpm_m=00

water_pump_hyst=00

water_pump_channel=FF

toothrel_normal=76

toothrel_missing=B5

fuelcut_min_kpa=0A

fuelcut_max_kpa=FF

tach_channel=FF

tach_divider=FF

shiftcut_conf=FF

shiftcut_channel=FF

shiftcut_time=FF