BMW 6cyl firmware upgrade from 1.0.46. to 1.1.18
note: It might be a good idea to avoid accented characters in page titles
- 6 cylinder
- firing sequence, 1,.....
- primary trigger: 60-2, VR
- secondary trigger: not used
- ignition: 3 power-output channels, wasted spark
Ignition output channels. PLEASE SORT TO FIRING SEQUENCE, and WRITE CYLINDER NUMBER TO EACH!
- EC36 Pin10 ignch7
- EC36 Pin34 ignch2
- EC36 Pin36 ignch3
Please verify that the chosen channels are power-outputs. Measure (with ignition ON, but engine NOT running) that voltage between +12V and the ign outputs is 0 (a logiclevel output pulls down to 0V when inactive, so that would measure 12V !)
1.0.46 firmware works great with
- ignchmax=02
- h[2]=07 03 02 07 03 02 .. ..
1.1.18 firmware plan:
- ignchmax=05
- h[2]=70 30 20 70 30 20 .. ..
- h[1]=28 14 00 28 14 00 .. ..
- important: you might need to rotate either h[1] or h[2] to get the spark to the right cylinder(-pair). Document the wiring above (write cylinder-numbers) so we can give better hints
Engine does not start, shows wheel-error.
Trigger hints:
- normal tooth width: 24 (=0x18, since 6 degrees)
- missing tooth width: 72 (=0x48, since 18 degrees)
- engine phase when to reset: 160 (reset_engphase_after=A0), though this should not cause no-start
Analog input
- MCP3208 ch6 connected to EC18pin ..
- ALS or launch works well with this (if channel 6 is selected)
- TODO: verify that it measures +5V when not pulled down externally
- measures ... V when pulled down externally with 1kOhm (you can use other resistor from 100 Ohm .. 10k, just document)
- MCP3208 ch7 connected to EC18pin ..
- TODO: verify that it measures +5V when not pulled down externally
- measures ... V when pulled down externally with 1kOhm (you can use other resistor from 100 Ohm .. 10k, just document)
- neither ALS nor launch works if channel 7 is selected. What can be the problem ?
- maybe input was killed ? The mcp3208 inputs are very sensitive, connecting to +12V or electrostatic discharge can damageit.
You can upload the dump and logs via FileArea
NOS thoughts
- NOS output control
- and RPM and MAP (TPS?) ranges
BMW M20 B25 (6cyl, appr 2.5L) modified bore ( 81 mm ) now competing in 200m and 400m dragrace (earlier it was a rally car with restriction before a smaller turbo)
- high-grade forged pistons
- fire-ring-headgasketseal
- injectors 650 ccm
- factory IX drivetrain
- final drive 3.91
- whwel diameter 650 mm
- Turbo: schwitzer S2B
- external wastegate ( 35mm )
Would NOS be useful to kick in for a short time after launch ?
During launch, engine RPM drops so low that turbo doesn't work well for a short time.
When the turbo spools up and boosts, NOS could be switched off.
Would this be useful ?
Not sure why he does not use higher launch RPM (maybe he fears the clutch would explode?)
´
Be careful with nitrous oxide if the engine bogs down on launch, even a small nitrous shot will give a very large boost in torque at a low rpm. The cylinder pressures could get very high and detonation can easlily occur. -Jörgen
Choose output for N2O - see GenBoard/Manual/DigitalOut/Table
The guy who installed did not document the wiring.
We reverse engineer from the mcd/mct dump.
This is a 6 cyl engine. The 0F in h[0] looks like it came from a 4 cyl engine. (Roland has a strong 1.8L 4 cyl BMW turbo)
h[0]=0F 00 00 00 20 80 10 00
- injectors A-B-C-D are apparently fired in batch (all 4 at once)
- how are injectors connected ? Why are 4 injoutputs fired at the same time ? Why not 3 or 6 ?
- act_rpm_channel=50 mask 0x80 (128) = EC36 pin 17 Inj H
- als_tks_channel=60 mask 0x10 (16) = EC36 pin 9 Inj E
N2O enable
- mask 0x20 (32) EC36 pin 18 Inj F
- choose miscoutput channel=INJ/4 (as 20 is already in the h[2] at place 4 - remember it's numbered 0..7)
unused:
- mask 0x40 (64) EC36 pin 6 Inj G
Terminal log file
Date: 2007.10.26. - 17:36:43
primep=00
primep_temp_scaling=00
cwl=5A
cwh=14
cranking_thres=02
awev=14
awev_temp_scaling=26
awec=02
warmup_clt_range[0]=00
warmup_clt_range[1]=00
warmup_clt_range[2]=00
warmup_clt_range[3]=10
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]=BE
warmup_clt[1]=B4
warmup_clt[2]=AA
warmup_clt[3]=A0
warmup_clt[4]=96
warmup_clt[5]=8C
warmup_clt[6]=82
warmup_clt[7]=78
warmup_clt[8]=6E
warmup_clt[9]=64
warmup_rpm_scale=33
req_fuel=37
divider=06
alternate=10
injopen=00
battfac=1C
kpafac=C6
kpaoffs=9C
injocfuel=2A
injrampup_battfac=FF
injpwm=FF
injpwmt=FF
als_launch_input=67
rpmk[0]=07
rpmk[1]=D0
tpsdot_kpadot_conf=00
tpsdotrate[0]=05
tpsdotrate[1]=14
tpsdotrate[2]=28
tpsdotrate[3]=4D
tpsaq[0]=10
tpsaq[1]=16
tpsaq[2]=19
tpsaq[3]=1E
als_cut_mintps=4D
tpsasync=04
acmult=A0
tpsacold=14
launch_enrich=0D
launch_retard=3C
overrun_fuelcut=1E
overrun_fuelresume=1D
rev_limit=44
airden_ignore=62
config11=50
config12=30
config13=0A
batt_cal=C0
fastidle=80
als_max_cut=04
dbaro=08
tps_low=25
tps_high=AF
fan_temp=5A
fan_hyst=02
fan_channel=6F
iac_step_seq=C9
iac_conf=78
iac_max_steps=C8
iac_tps_thres=05
iac_cold_idle_temp=90
iac_warm_idle_temp=A2
iac_cold_rpm=78
iac_warm_rpm=64
iac_cold_start_pos=B3
iac_warm_start_pos=73
iac_afterstart_rpm=0A
iac_afterstart_duration=0A
iac_speed=06
iac_kp=30
iac_ki=0F
iac_kd=23
launch_rpm=26
iac_integral_limit_dec=5A
iac_integral_limit_inc=F0
iac_integral_deadband=0A
iac_deadband=05
als_cut_maxtps=59
iac_overclose_interval=B8
iac_ref_pos[0]=85
iac_ref_pos[1]=82
iac_ref_pos[2]=80
iac_ref_pos[3]=7D
iac_ref_pos[4]=7A
iac_ref_pos[5]=7A
iac_ref_pos[6]=78
iac_ref_pos[7]=75
iac_ref_pos[8]=73
iac_ref_pos[9]=70
iac_sol_channel=5F
iac_ign_slope=28
softrpm_range=00
iac_ign_advance_limit=10
iac_ign_retard_limit=24
iac_ign_threshold=08
ego_conf=06
ego_lag=0A
ego_coolant=87
ego_maxtps=FF
ego_maxmap=96
ego_minrpm=05
ego_maxrpm=64
ego_warmup=1E
ego_lean_limit=26
ego_rich_limit=26
ego_pid_kp=40
als_enrich=00
ego_delta=0A
ego_target=19
ego_pid_window=FF
wbo2_warmup_ramp=A0
als_react_tps=B3
wbo2_abs_limit=E4
wbo2_limit_maxt=A0
wbo2_fallback=60
wbo2_retry_t=06
als_retard_rpm1=0E
als_retard_rpm2=15
wbo2_ri_target=96
wbo2_nernstdc_target=8D
wbo2_pump_pw_zero=64
wbo2_calibration=BE
wbo2_heater_pid_kp=46
wbo2_heater_pid_ki=10
wbo2_heater_pid_kd=1A
wbo2_heater_pid_ilimit=80
wbo2_pump_pid_kp=40
wbo2_pump_pid_ki=2E
wbo2_pump_pid_kd=08
wbo2_pump_pid_ilimit=84
wbo2_ri_confidence_scale=80
knock_chan=01
knock_sampling_window=F2
knock1_frequency=29
knock1_gain=00
knock1_integrator=14
knock2_frequency=22
knock2_gain=05
knock2_integrator=00
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=00
knock_advance_delay=3A
knock_minrpm=46
knock_maxrpm=FF
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=00
lcd_c0=FE
lcd_delay=FF
lcd_backlight=FF
kpa_conf=22
als_igncut_rpm2=48
als_retard_mintps=66
als_retard_maxtps=99
lcd_default_view=00
primary_trigger=00
secondary_trigger=02
tooth_wheel=3A
trigger_tooth=00
another_trigger_tooth=14
crank_minper=50
tooth_wheel_twidth1=18
tooth_wheel_twidth2=48
cam_sync_r_edge_phase=FF
cam_sync_f_edge_phase=FF
reset_engphase_after=06
ign_tdcdelay=B4
ign_dwell14=2F
ign_dwell6=5D
ign_crank_advance=08
ign_out=70
ignchmax=02
engine_off_delay=04
pump_on_mintime=04
fuelpump_channel=5F
inj_stage2_rate=FF
inj_stage2_start_tps=00
inj_stage2_start_map=FF
als_igncut_rpm1=46
als_deact_time=46
als_deact_egt=7D
als_retard=50
als_rev_limit=50
misc1out_minrpm=FF
misc1out_maxrpm=FF
misc1out_mintps=FF
misc1out_maxtps=FF
misc1out_minmap=FF
misc1out_maxmap=FF
misc1out_channel=FF
misc2out_minrpm=2E
misc2out_maxrpm=66
misc2out_mintps=99
misc2out_maxtps=59
misc2out_minmap=73
misc2out_maxmap=A6
misc2out_channel=FF
act_wot_rpm=FF
act_wot_channel=FF
act_rpm_rpm=32
act_rpm_channel=50
egt1_cal=40
als_tks_channel=60
boost_conf=59
boost_targetoffs=00
boost_minpressure=35
boost_pid_kp=C8
boost_pid_ki=00
boost_pid_kd=00
boost_pid_ilimit=00
boost_channel=40
water_pump_temp=00
hybrid_rpm_a=00
hybrid_rpm_m=00
water_pump_hyst=00
water_pump_channel=FF
toothrel_normal=79
toothrel_missing=00
fuelcut_min_kpa=00
fuelcut_max_kpa=78
tach_channel=7F
tach_div=17
shiftcut_conf=02
shiftcut_channel=FF
shiftcut_time=01
softrpm_rpm=43
j[0]=3B80 3B80 4680 4480 4080 3E80 3D80 3C80 3D80 3E80 4180 4980
j[1]=3E80 4280 5180 5680 5780 5580 5480 5580 5780 5A80 5C80 5A80
j[2]=4280 4680 5D80 6180 6280 6380 6280 6480 6780 6980 6A80 6980
j[3]=4680 4B80 6480 6980 6B80 6C80 6E80 7180 7480 7780 7580 7380
j[4]=5580 5C80 6B80 7080 7280 7380 7380 7780 7B80 7E80 7F80 7E80
j[5]=6380 6980 6F80 7280 7480 7680 7980 7B80 7E80 8280 8480 8780
j[6]=6A80 6E80 7280 7380 7580 7780 7A80 7E80 8080 8580 8880 8B80
j[7]=6F80 7280 7580 7480 7580 7680 7B80 7E80 8280 8780 8A80 8F80
j[8]=6F80 7580 7680 7580 7580 7880 7A80 7E80 8280 8680 8B80 8F80
j[9]=6F80 7580 7980 7780 7780 7880 7B80 7F80 8180 8580 8980 8E80
j[A]=6F80 7680 7880 7980 7B80 7C80 7C80 7F80 8280 8480 8880 8D80
j[B]=6F80 7780 7D80 7D80 7E80 7F80 7E80 8080 8280 8580 8880 8D80
l[0]=3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D
l[1]=3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D
l[2]=3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D 3D
l[3]=43 43 43 43 43 43 43 43 43 43 43 43
l[4]=47 47 47 47 47 47 47 47 47 47 47 47
l[5]=4F 4F 4F 4F 4F 4F 4F 4F 4F 4F 4F 4F
l[6]=5E 5E 63 63 63 63 63 63 63 63 63 63
l[7]=6B 6B 6B 6B 6B 6B 6B 6B 6B 6B 6D 70
l[8]=6D 6D 6D 6D 6D 70 70 70 70 70 70 70
l[9]=70 70 70 70 75 75 75 75 75 75 75 75
l[A]=70 75 75 75 75 75 78 78 78 78 78 78
l[B]=78 78 78 78 78 78 7E 7E 7E 7E 7E 7E
n[0]=37 37 5E 8D 9A 9D 9D 9D 9C 9B 99 95
n[1]=37 37 5E 8D 99 9D 9D 9C 9C 9A 99 94
n[2]=37 37 5D 8C 98 9C 9B 9B 9B 99 97 92
n[3]=37 37 5C 8A 96 99 9A 9A 99 97 95 90
n[4]=35 35 59 87 93 96 97 98 97 94 92 8E
n[5]=33 33 55 7F 89 8D 8F 8F 8F 8E 8E 89
n[6]=2E 30 50 70 7A 80 82 84 85 84 84 81
n[7]=2E 2E 48 66 6F 75 78 78 77 76 76 74
n[8]=2E 2E 40 5A 66 6C 6F 6F 70 6E 6E 69
n[9]=2E 2E 37 51 5E 62 66 68 69 67 65 60
n[A]=2E 2E 31 47 53 58 5C 5E 5F 5F 5D 57
n[B]=2E 2E 2F 3A 44 4B 4F 52 54 54 53 4C
k[0]=0B 12 19 21 28 32 3F 4B 58 64 71 7D
r[0]=07 0C 11 16 1C 21 27 2C 31 37 3C 45
h[0]=0F 00 00 00 20 80 10 00
h[1]=28 14 00 FF FF FF FF FF
h[2]=00 30 20 00 00 00 00 00
y[0]=FF FF FF FF FF FF FF FF FF FF FF FF
y[1]=FF FF FF FF FF FF FF FF FF FF FF FF
y[2]=FF FF FF FF FF FF FF FF FF FF FF FF
y[3]=FF FF FF FF FF FF FF FF FF FF FF FF
y[4]=FF FF FF FF FF FF FF FF FF FF FF FF
y[5]=FF FF FF FF FF FF FF FF FF FF FF FF
y[6]=FF FF FF FF FF FF FF FF FF FF FF FF
y[7]=FF FF FF FF FF FF FF FF FF FF FF FF
y[8]=FF FF FF FF FF FF FF FF FF FF FF FF
y[9]=FF FF FF FF FF FF FF FF FF FF FF FF
y[A]=FF FF FF FF FF FF FF FF FF FF FF FF
y[B]=FF FF FF FF FF FF FF FF FF FF FF FF
Date: 2007.10.26. - 17:37:08
End log file