|\ /| | ) ( | | | _ | | | |( )| | | || || | | () () | (_______)
#### ## ##### ## ## #####
#### ## ## ## ## ## ####
### ## ## ## ## ## ####
_ _ | | | | | |_| | | _ | |_| |_|
IMPORTANT: enter the case-INsensitive alphabetic (no numbers) code AND WRITE SOME SHORT summary of changes (below) if you are saving changes. (not required for previewing changes). Wiki-spamming is not tolerated, will be removed, so it does NOT even show up in history. Spammers go away now. Visit Preferences to set your user name Summary of change: GenBoard/VerThree Firmware currently 1.0.14_rc1 * version v3.3 * serialnr 312 * config.pump_pw_zero=0x64 (offset current: +3.4mV/340 Ohm) Initial distributor config similar to MembersPage/Fero old config (he recently moved to camsync). * config.primary_trigger=FE (coil-type falling edge) or config.primary_trigger=FF (coil-type rising edge) * config.secondary_trigger=02 (disabled) ---- MembersPage/MattiasSandgren/VolvoPV is the engine that was tuned with 1600cc/min low-z injectors (1 for each 550cc cylinders) and aggressive turbo cams (100 hp/litre). 550cc/min injectors are no problem as long as the injectors behave identical even for short pulsewidth and you find the injector characteristics. ---- '''config''' - injector opening related seemed to be of critical importance in this setup http://www.vems.hu/files/NanassyPeter/megasquirt200508011920.msq Marcell saved the mcd output as mcd.txt, and ran ''perl bin/make_conf.pl global.h etc/config.txt etc/config.mtt'' : this compared the mcd.txt with the initial config.txt, and found some changes. Some were harmless, or good (cwl, cwh, ...). Other '''changes, especially the injopen-related variables, that effect operation (for the bad) that explains the untunability at low load'''. * http://www.vems.hu/files/MembersPage/NanassyPeter/mcd-notes.txt notes with recommended values (in config.txt format). * http://www.vems.hu/files/MembersPage/NanassyPeter/mcd-notes.mtt mtt file (made with the known firmware version's global.h) that can be uploaded from terminal. Just to be sure, verify with mcd afterwards that the right settings were altered. Naturally, low-MAP VE must be adjusted (increased) somewhat after these changes, but at least it should be tunable. Ezeket próbáltam: * (injopen) Inj open time at 13.2 :0 (Fero) "13.2 : 0" sounds meaningless. It might be 13 * 16 usec ? Or a range 0 .. 13 * 16 usec ? 0 usec seems best * (injocfuel) Inj eff rampup:0-4000 olyan 2800 körul az opt. (stay in 1000..2500usec range) * (injrampup_battfac) Inj rampup battfac :300-600 * battfac:300-1000 (1000 sounds too high for sure. Stick with 200..300usec) * (injpwm) DC:20-40 (28..35% should be fine) * (injpwm6) added DC:4-15 * (injpwmt) peak time:0.8-1.3 If the engine runs rich even with VE=0, some or all of the following variables is too high: * injopen * battfac * injocfuel * injpwmt ---- '''It was confirmed that something between cylinders differs'''. possible causes '''If the misbehaving cyl moves around after each ECM reboot''' * a bogus element in h[0] table. One cylinder will not fire at all. This would be a different cyl after ECM reboot. * the cylinder firing sequence in h[0] (reverse order) does not match reality. This shouldn't cause any noticable issues, especially since the cams are not too agressive '''If the misbehaving cyl stays even after ECM reboots.''' Remember, this is a distributor-setup, currently without camsync. Therefore if misbehaving cyl stays, it is very-very unlikely to be caused by ECM or ECM configuration problem. * injectors open / close differently because of sloppy manufacturing tolerances or dirt or earlier heat stress. This is somewhat likely. Even though this is not caused by the ECM, higher injector flyback voltage can mask the issue somewhat, resulting in better perceived behavior (cost is somewhat more heat dissipated in the flyback). Obviously, the injector closing happens relatively slowly in the original low-voltage flyback configuration (and if one injector needs 1500usec, while the other injector needs only 1400 usec, that can be significant at some pulsewidths). * some FETs are damaged (well, if this is the case, this is actually an ECM-problem. Maybe because of bad flyback conn in the past, eg. during current measurements when the fuse was out). Unlikely. Test: swap a good and a misbehaving inj JPT2 connection physically and in h[0] and see if the problem moves to another cyl. Alternatively drive 25..60W lightbulb from the injector connector (using mdh80/mdh00 , mdh90/mdh10 ... etc...) to verify operation. * HV problem from distributor to sparkplug 0. unlikely * problem inside distributor HV side * problem inside distributor, cam-trigger side. Eg. if the windows are different lengths for the 5 cyl, and the wrong edge is selected. Unlikely. * injector fuel-rail problem. Although the fuel-rail is relatively small for the engine potential, and the fuel-rail has only 1 feed for 5 cyl (regulator at one end). This is very unlikely to be the cause of a problem that appears at low load and RPM (very short pulsewidths). However it can easily be an issue above 250Hp. ---- As an experiment, '''flyback voltage was increased by a few diodes in the common branch, currently installed outside the ECM in the flyback wire''' Will be moved inside ECM if it's justified (when a new ECM is probably made soon with 4bar MAP, since this was ordered with 2.5bar MAP) * 3 x 6A slow (2 usec) diodes in series (cathode is at injector common, anode is at EC36pin23 flyback rail.) * 4 x 3A fast BY399 diodes in series (parallel with the above diodes, These switch on first, but than most load is transferred to above slower diodes as they catch on). This means '''raising flyback rail by appr Uflyraise=3 * 0.7V=2.1V''' (more like 3V at peak, though only 1.5V measured with the low current of DVM diode mode). effective Uflyback = 1.4V (onboard, per channel) + Uflyraise (in the common branch) Note: there is an onboard protection of D100=18V SMB transient suppression diode referenced to GND5. This is made for the sloppy guys who forget flyback: would work forever without PWM-ing (even this is not an excuse for forgetting flyback connection), but D100 probably gets overloaded at high pulsewidths with PWMing, and shorts to GND5 (injectors stay open, but FETs survive). This 18V diode limits (Uflyraise + VBatt) < 18V, which means Uflyraise < 3.5V must be maintained for VBatt=14.5V Translate to config values (newer above): req_fuel=11 injopen=0A injocfuel=19 injpwm=3C injpwmt=08 injpwm6=20 Ãœdv,Péter Sajnos még nem volt idom letesztelni a diodas setupot (beindul és alapjár,persze csak az én "rossz" adataimmal). Don't apply the MegaManual's 75% "PWM Current Limit %" recommendation. Yes, this is the "PWM DC %. However, it is made for a remarkably bad flyback design (with flyback return 30V referenced to GND5), that dissipates extreme heat with PWM-ing and induces high voltages, should the injector fuse break. The circuit breaks regularly because of overheating (usually the clamping PNP breaks, sometimes the FETs). The theoretical calculation for PWM DC% (dcpercentage): Iinj * Rinj = VBatt * dcpercentage/100 - Uflyback * (1-dcpercentage/100) From this, with some primary-shool math: * 3V = 14.5V * x - 3.5V '''*''' (1-x) * 3V = '''14.5V * x''' - 3.5V '''+ 3.5V * x''' * '''3V''' = 18V * x '''- 3.5V''' * '''6.5V''' = '''18V''' * x * x = 0.36 (which is for dcpercentage=36) Verification: at Uflyback = 3.5V and PWM DC=36% you get 1A: 1A * 3 Ohm = 3V = 14.5V * 0.36 - 3.5V * (1-0.36) 1A must be enough, since you confirmed that (with 1.4V low voltage flyback) even 20% (extremely low percentage) keeps the injectors open after they opened. 14.5V * 0.2 - 1.4V * 0.8 = 1.78V = 0.59A * 3 Ohm ---- '''Flyback mod''' Adjusting the injector-opening config and '''5 (6A) diodes in the flyback rail''' (and 6 smaller but faster 3A diodes in parallel) '''worked'''. Even 16:1 AFR idle is possible now. '''issues / questions''' *still very rich during afterstart * battfac was changed 300=>350usec (yes, this is the required change of direction), because with 300usec mixture got lean when the fan turned on and VBATT dropped. * VE: with reqfuel=2.3 ms the max VE<200 (appr. 175 => so reqfuel could be decreased, which would slightly increase VE resolution by higher values everywhere - but it does not worth the effort since it's mappable everywhere ) * MAT is considered using the new inc/airdenfactor.inc and etc/airdenfactor.c, it does not lean to 78% but stops at 89% (at appr. 60C) and goes back to 93% as MAT increases further (to and beyond 100C) Note that IAC and boostcontrol is not tuned yet (actually, not even connected). <code> primep=00 primep_temp_scaling=00 cwl=37 cwh=0D cranking_thres=03 awev=3C awev_temp_scaling=A0 awc=FF warmup_clt_range[0]=00 warmup_clt_range[1]=14 warmup_clt_range[2]=28 warmup_clt_range[3]=3C 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]=96 warmup_clt[1]=91 warmup_clt[2]=8C warmup_clt[3]=87 warmup_clt[4]=82 warmup_clt[5]=7D warmup_clt[6]=73 warmup_clt[7]=6E warmup_clt[8]=67 warmup_clt[9]=64 warmup_rpm_scale=99 req_fuel=17 divider=01 alternate=14 injopen=00 battfac=16 kpafac=78 kpaoffs=8D injocfuel=32 injrampup_battfac=FF injpwm=73 injpwmt=0A injpwm6=0A rpmk[0]=09 rpmk[1]=60 tpsdot_kpadot_conf=00 tpsdotrate[0]=05 tpsdotrate[1]=0F tpsdotrate[2]=1A tpsdotrate[3]=29 tpsaq[0]=02 tpsaq[1]=05 tpsaq[2]=0A tpsaq[3]=0F tps_thresh=04 tpsasync=05 acmult=78 tpsacold=14 tpsdq=63 decel_fuelcut_thres=1E overrun_fuelcut=14 overrun_fuelresume=13 rev_limit=49 airden_ignore=61 config11=41 config12=40 config13=02 batt_cal=A3 fastidle=C6 baro=64 dbaro=0C tps_low=23 tps_high=F3 fan_temp=5F fan_hyst=05 fan_channel=FF iac_step_seq=C9 iac_conf=6C iac_max_steps=E0 iac_tps_thres=00 iac_cold_idle_temp=80 iac_warm_idle_temp=D0 iac_cold_rpm=74 iac_warm_rpm=5C iac_cold_start_pos=E2 iac_warm_start_pos=B0 iac_afterstart_rpm=1F iac_afterstart_duration=20 iac_afterstart_steps=00 iac_kp=14 iac_ki=0F iac_kd=14 iac_integral_speed=C0 iac_integral_limit_dec=05 iac_integral_limit_inc=78 iac_integral_deadband=0A iac_deadband=05 iac_pid_conf=00 iac_overclose_interval=FF iac_ref_pos[0]=35 iac_ref_pos[1]=34 iac_ref_pos[2]=33 iac_ref_pos[3]=32 iac_ref_pos[4]=31 iac_ref_pos[5]=30 iac_ref_pos[6]=2F iac_ref_pos[7]=2E iac_ref_pos[8]=2D iac_ref_pos[9]=2C iac_sol_channel=FF iac_ign_advance_change=20 iac_ign_retard_change=20 iac_ign_advance_limit=08 iac_ign_retard_limit=08 iac_ign_threshold=08 ego_conf=06 ego_lag=01 ego_coolant=00 ego_maxtps=FF ego_maxmap=FF ego_minrpm=08 ego_maxrpm=4B ego_warmup=1E ego_lean_limit=00 ego_rich_limit=00 ego_pid_kp=20 mt_unused=FF ego_delta=01 ego_target=19 ego_pid_window=FF wbo2_warmup_ramp=C0 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=9A wbo2_nernstdc_target=9D wbo2_pump_pw_zero=64 wbo2_calibration=B4 wbo2_heater_pid_kp=46 wbo2_heater_pid_ki=10 wbo2_heater_pid_kd=1A wbo2_heater_pid_ilimit=80 wbo2_pump_pid_kp=15 wbo2_pump_pid_ki=37 wbo2_pump_pid_kd=00 wbo2_pump_pid_ilimit=FF wbo2_ri_confidence_scale=80 knock_conf=01 knock_sampling_window=FF knock1_frequency=29 knock1_gain=FF knock1_integrator=FF knock2_frequency=29 knock2_gain=FF knock2_integrator=FF knock_threshold=FF knock_noise_scale=FF knock_max_retard=00 knock_default_retard=00 knock_retard_step=00 knock_retard_delay=00 knock_advance_step=00 knock_advance_delay=00 knock_minrpm=FF 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 lcd_offs[0]=FF lcd_offs[1]=FF lcd_offs[2]=FF lcd_offs[3]=FF lcd_default_view=00 primary_trigger=FE secondary_trigger=02 tooth_wheel=05 trigger_tooth=00 another_trigger_tooth=1E crank_minper=60 tooth_wheel_twidth1=00 tooth_wheel_twidth2=00 cam_sync_r_edge_phase=01 cam_sync_f_edge_phase=02 reset_engphase_after=F0 ign_tdcdelay=5A ign_dwell14=3F ign_dwell6=38 ign_crank_advance=20 ign_out=70 ignchmax=04 engine_off_delay=13 pump_on_mintime=08 fuelpump_channel=67 inj_stage2_rate=FF inj_stage2_start_tps=FF inj_stage2_start_map=FF als_lowrpm=FF als_maxtps=FF als_ignretard=FF als_rich=FF als_rev_limit=FF misc1out_minrpm=01 misc1out_maxrpm=FF misc1out_mintps=FF misc1out_maxtps=FF misc1out_minmap=FF misc1out_maxmap=FF misc1out_channel=FF misc2out_minrpm=FF misc2out_maxrpm=FF misc2out_mintps=FF misc2out_maxtps=FF misc2out_minmap=FF misc2out_maxmap=FF misc2out_channel=FF act_wot_rpm=FF act_wot_channel=FF act_rpm_rpm=FF act_rpm_channel=FF egt1_cal=47 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=66 toothrel_missing=7F fuelcut_kpa=12 j[0]=1980 1980 2780 2A80 2A80 2880 2880 2080 2080 2080 2080 1F80 j[1]=2080 2180 3D80 4480 4180 3E80 3A80 3880 3880 3480 3380 2C80 j[2]=4E80 5680 5880 5A80 5980 5380 5380 5180 5280 4B80 4380 3580 j[3]=5C80 6280 6480 6680 6480 6080 6180 5B80 5A80 5780 4E80 4580 j[4]=6780 6A80 6E80 6E80 6E80 6D80 6A80 6480 6280 6380 5C80 5180 j[5]=7080 7480 7780 7880 7680 7680 7680 7180 6E80 6E80 6480 5D80 j[6]=7880 7A80 7B80 8080 7E80 7D80 7B80 7A80 7880 7780 7680 6E80 j[7]=8180 8180 8380 8280 8280 8380 8280 8280 8380 8480 7E80 7B80 j[8]=8A80 8A80 8A80 8C80 8B80 8980 8880 8880 8880 8980 8980 8680 j[9]=9780 9780 9780 9580 9680 9680 9680 9680 9580 9380 9480 9380 j[A]=A180 A080 9F80 9F80 9F80 9F80 9E80 9B80 9D80 9C80 9D80 9E80 j[B]=B180 B280 B080 B180 AF80 AF80 AE80 AF80 AF80 AF80 AE80 B080 l[0]=37 37 37 37 37 37 37 37 37 37 37 37 l[1]=37 37 37 37 37 37 37 37 37 37 37 37 l[2]=37 37 37 37 37 37 37 37 37 37 37 37 l[3]=37 37 37 37 37 37 37 37 37 37 37 37 l[4]=37 37 37 3D 3D 3D 3D 3D 3D 3D 3D 3D l[5]=47 44 44 44 44 44 44 44 44 44 44 44 l[6]=48 48 48 48 48 48 48 48 48 48 48 48 l[7]=4F 4F 4F 4F 4F 4F 4F 4F 4F 4F 4F 4F l[8]=55 55 55 55 55 55 55 55 55 55 55 55 l[9]=5C 5C 5C 5C 5C 5C 5C 5C 5C 5C 5C 5C l[A]=6D 6D 6D 6D 6D 6D 6D 6D 6D 6D 6D 6D l[B]=78 78 78 78 78 78 78 78 78 78 78 78 n[0]=22 22 2C 68 82 8C 94 9C 9E 9E A0 94 n[1]=23 23 2F 6B 83 8C 94 9C 9E 9E A0 94 n[2]=23 22 2D 69 7D 88 90 98 98 98 9C 94 n[3]=25 24 2F 65 7C 84 8C 94 94 96 98 94 n[4]=18 24 2B 60 75 7C 82 8B 8D 90 91 91 n[5]=18 21 25 5B 70 77 80 84 88 88 8C 8C n[6]=0C 14 1E 53 67 70 78 80 82 84 88 88 n[7]=04 04 15 4C 60 68 6C 6C 74 76 78 78 n[8]=04 04 0F 43 50 54 5C 60 64 68 6C 6D n[9]=04 04 0C 38 47 4B 54 5A 5D 63 68 6B n[A]=02 04 0A 28 39 42 4A 4D 50 52 52 57 n[B]=04 04 0B 14 20 24 2C 34 34 36 38 3C k[0]=1E 32 3C 50 64 78 8C A0 B4 C8 E1 FF r[0]=07 0C 12 19 1E 25 2B 32 37 3C 43 4A h[0]=04 10 08 02 01 00 00 00 h[1]=00 00 00 00 00 00 00 00 h[2]=00 00 00 00 00 00 00 00 b[0]=FF 00 00 00 1E 20 12 12 12 12 12 12 t[0]=1A 0E 06 04 02 00 00 00 </code> ---- Awesome work Marcell,thanks for the outstanding support! Words cannot describe that GREAT work you did. LOWMAP fuelcut works,highmap no100kpa also YES THAT WAS THE PROBLEM!!!Had no chance to test MATrich,but i know it will work.Im really happy that i can work with YOU! Sajna nem tudom mit szeretnél "junkolni",ezt rád bÃznám.... Here some Q: *cranks and starts, but dies right after that.Which parameter needs care here? *REALLY stupid under accelereation,especially at fast accel. increase the ms there? *szeretnék néhány műszert kiváltani az LCD vel,lehetséges lenne az OILTEMP és a VOLTS megjelenÃtése?Esetleg hibaüzenet!! egy bizonyos érték túllépésekor (pl CLT 115,oiltemp 170 stb) egy piros led felgyújtása plusz a hibaüzenet a LCDn?! amolyan www.stack.co.uk szerüen. Optional: Add document to category: Wiki formatting: * is Bullet list ** Bullet list subentry ... '''Bold''', ---- is horizontal ruler, <code> preformatted text... </code> See wiki editing HELP for tables and other formatting tips and tricks.