As my Genboard v3.3 seems to be installed (see MembersPage/JoelZernask), I will now try to dig through the configration.
I have studied MembersPage/BenNesbitt, who also has a V8 Audi, but he has coil-on-plug ignition, so not entirely applicable to my project.
Here are the specs of my engine:
- 1989 Audi PT 3,6 liter 32valve V8
- trigger: Primary-VR (4 trigger pins on the flywheel), Secondary-HALL
- firing order: 1-5-4-8-6-3-7-2
- ignition type: wasted spark
- coils: two 2*2 coil packs (Bosch 0 221 503 407)
Ignition.
Cylinders firing together are:
1 5 4 8
6 3 7 2
The coil packs are connected as follows:
EC36-pin35 to Coil 1
EC36-pin33 to Coil 2
EC36-pin34 to Coil 3
EC36-pin36 to Coil 4
Therefore cylinders are wired as follows (see GenBoard/Manual/DigitalOut/Table for driver channel numbers):
Cylinders 1 & 6 to Coil 1 to EC36-pin35 drive00
Cylinders 5 & 3 to Coil 2 to EC36-pin33 drive01
Cylinders 4 & 7 to Coil 3 to EC36-pin34 drive02
Cylinders 8 & 2 to Coil 4 to EC36-pin36 drive03
- ignchmax=03 (03..00)
- IGNITION OUTPUTS TABLE: h[2]=03 02 01 00 03 02 01 00
- going from index config.ignchmax downto 0, the drive00, drive01, drive02 and drive03 will be fired, in this order.
This spark table can be used, right?
Be sure to get the base timing (trigger_tooth and igntdcdelay) right.
Fuel.
Again refeering to Ben Nesbitt's information, adjusted for my specs:
sequential fuel delivery for Audi 3,6 V8 PT engine
firing order: 1-5-4-8-6-3-7-2
Bosch injectors 173cc
Fuel map:
Below is Ben's Manmcd code that I have modified for wasted spark ignition and 4 trigger pins + cam sync trigger setup instead of a 60-2 trigger wheel.\n
RPM:0000 T 17 P042 La:??.? egoC:-00 clt: 26C tps:00% 0819 egt:0000 113 primep=00 primep_temp_scaling=80 cwl=64 cwh=32 cranking_thres=03 awev=41 awev_temp_scaling=98 awc=FF warmup_clt_range[0]=00 warmup_clt_range[1]=15 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]=A6 warmup_clt[1]=A2 warmup_clt[2]=97 warmup_clt[3]=88 warmup_clt[4]=7B warmup_clt[5]=75 warmup_clt[6]=73 warmup_clt[7]=71 warmup_clt[8]=6E warmup_clt[9]=64 warmup_rpm_scale=FF req_fuel= double values in j[] (VE table), max around 200 (the max enterable is 255). divider=01 alternate=07 injopen=00 battfac=0D kpafac=125 # (=decimal 52 for 104 kPa MAP sensor ?) # I have 250 kPa onboard MAP, so is 125 correct? kpaoffs=80 injocfuel=28 injrampup_battfac=FF injpwm=FF injpwmt=FF injpwm6=00 rpmk[0]=0B # ... rpmk = 0BB8 (=decimal 3000 is for 4 cyl, since 12000/4=3000) # So is 0BB8 the correct value here? rpmk[1]=B8 tpsdot_kpadot_conf=00 tpsdotrate[0]=05 tpsdotrate[1]=0E tpsdotrate[2]=20 tpsdotrate[3]=40 tpsaq[0]=08 tpsaq[1]=12 tpsaq[2]=17 tpsaq[3]=1B tps_thresh=05 tpsasync=02 acmult=64 tpsacold=05 tpsdq=64 decel_fuelcut_thres=64 overrun_fuelcut=16 overrun_fuelresume=10 rev_limit=40 airden_ignore=62 config11=70 config12=30 config13=02 batt_cal=A4 fastidle=80 baro=64 dbaro=0C tps_low=20 tps_high=F0 fan_temp=55 fan_hyst=09 fan_channel=FF # I don't have a fan connected yet. I could use channel 06 for the fan. iac_step_seq=C9 iac_conf=7A iac_max_steps=E8 iac_tps_thres=05 iac_cold_idle_temp=A0 iac_warm_idle_temp=D0 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_afterstart_steps=00 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]=60 iac_ref_pos[1]=5C iac_ref_pos[2]=58 iac_ref_pos[3]=50 iac_ref_pos[4]=4C iac_ref_pos[5]=48 iac_ref_pos[6]=38 iac_ref_pos[7]=31 iac_ref_pos[8]=2F iac_ref_pos[9]=2E iac_sol_channel=21 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=00 ego_maxtps=FF ego_maxmap=FF ego_minrpm=07 ego_maxrpm=FF ego_warmup=01 ego_lean_limit=22 ego_rich_limit=03 ego_pid_kp=25 mt_unused=00 ego_delta=01 ego_target=19 ego_pid_window=FF wbo2_warmup_ramp=9C 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 wbo2_pump_pw_zero=65 wbo2_calibration=B8 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 # good for no knock knock_sampling_window=F2 knock1_frequency=29 knock1_gain=40 knock1_integrator=14 knock2_frequency=29 knock2_gain=40 knock2_integrator=14 knock_threshold=FF knock_noise_scale=D8 knock_max_retard=28 knock_default_retard=04 knock_retard_step=08 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=00 lcd_c0=FF # even without LCD this won't cause problem 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=01 secondary_trigger=02 tooth_wheel=3A # 60-2 wheel # I have 4 pins on the flywheel + cam sync setup. What should I insert here and the following rows(my #1 pin is 62 degrees before #1 cylinder TDC)? trigger_tooth=02 another_trigger_tooth=0F crank_minper= 2 msec or something like that tooth_wheel_twidth1=02 tooth_wheel_twidth2=06 cam_sync_r_edge_phase=FF cam_sync_f_edge_phase=FF reset_engphase_after=F0 ign_tdcdelay=64 ign_dwell14=1E ign_dwell6=44 ign_crank_advance=30 ign_out=70 ignchmax=07 # I have wasted spark ignition, is "07" correct here? engine_off_delay=08 pump_on_mintime=13 fuelpump_channel=57 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=40 misc1out_minrpm=0A misc1out_maxrpm=1E misc1out_mintps=40 misc1out_maxtps=FF misc1out_minmap=50 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=26 act_rpm_rpm=FF act_rpm_channel=40 egt1_cal=49 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=FD hybrid_rpm_a=00 hybrid_rpm_m=00 water_pump_hyst=00 water_pump_channel=FF toothrel_normal=76 toothrel_missing=DC fuelcut_min_kpa=09 fuelcut_max_kpa=FF tach_channel=FF I have a tach of a 4 cylinder Audi. Channels 6 and 7 are unused, so I could connect the tach trough the VEMS. tach_divider=FF If I connected this tach through the v3.3, should I use the value "02" here? 02 seems right for the 4 cyl tach (but this config element will soon change to allow fine-tuning or deviant setup like 6cyl tach gauge on 5 cyl engine)
For VAG sensors, no firmware upgrade needed.
Q
If I replace the code in MegaTune r028 config.txt with this code above, how can I send this code to the ECU? Will these new values appear in the graphic tables of MegaTune and simply "Send to ECU" command works?
(As far as i know,vems cant handle raw txt files (config and tables) but you can make mtt files with some programming experiance (i dont have it,so i cant do it),and then you can use the "Send File" feature of the Terminal program.)
Communication problems
- by default (yours too, since you didn't require otherwise!) assembled v3.3 is shipped with RS232 on EC18pin14 and EC18pin15, see GenBoard/Manual/CommHardware (webshop text says same!)
After repositioning of the wires (getting it bad first?) we managed to get the only "Success!" message from the MegaTune.
- assembled and clamped v3.3 is preprogrammed. Used for testing (although the firmware could drive an engine, upgrade is recommended)
- 2. But there was still no communication between the ECU and my PC. I have downloaded and unzipped firmware 1.0.23 and MegaTune r028. Follow the instructions in the zip to upgrade firmware
3. We installed the Bray Terminal to see whether the ECU is alive. (exited from MegaTune for that time of course!). The <0>'s kept flowing and flowing endlessly.
- first, check your GND and GND5 connections !!! If you have a broken ground, or cigar-lighter groundloop to the notebook, that can result in similar
- 9600 baud: Man command
- No Hello! sign came out after Man command, just the <0>'s kept running.
- 9600 baud, but view in hex: 'A' command
- result ?
- BootLoader test: 19200 : 'S', 'p', 'v' commands
- result ? If "AVREFI1", "S", 30 or alike, you are on the track, in bootloader, just exit TerminalProgram and upload firmware without "t" option to prog.pl or megaloader (using Ew instead of Etw flags)
I suspect you maybe have started a firmware upgrade that disconnected in the middle or something. Don't worry, in the worst case powerup the ECM with the ECM's RS232 (pin2 and pin3) loopbacked, than remove the loopback and plug in the PC. Bootloader test should work now, and you can proceed from there.
Hopefully the bad connection didn't damage the max232 or something. If you disassemble the ECM, don't clamp it back until:
- remove D100 if you use powerflyback and PWM-ing GenBoard/Manual/PowerFlyback/RemoveD
- change C103 to 1nF if using secondary trigger HALL : Manual/InputTriggerHardWare/ReplaceC
- set AREF=256 BuildProcedures/SectionThree (not required but recommended)