# ### ## # # # # # # #
#### ## ##### ## ## #####
## ## ##### ## ## ## ## #####
____ | _ \ | | | | | |_| | |____/
_________ \__ _/ ) ( | | | | | | |\_) ) (____/
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: ..July 2012.. I did the full install of the wasted spark ignition on the engine biturbo, the injection being still done by the OEM IAW Weber ecu of the biturbo. The coil I used was the Bosch 3x2. I had run the Vems ignition through the distributor for about 3000 km. I made the OEM Microplex Marelli ignition ecu (2 oem ecus : one for the injection, one for the ignition) to run in // with Vems and I got a switch to commute the origin of the firing signal to the coils (there are 2 on the biturbo). I did so for two purposes: 1) to keep the benefit of the knock control of Microplex 2) to start the engine faster in a quarter of a turn with the Microplex instead of the 2 revolutions and more( yes 4 pi) given by Vems. There has been some discussion about this sluggish start here http://www.vems.hu/wiki/index.php?action=find&find=MembersPage%2FFPhil%2FInstall where one might say that DIS was the cause of it. However without DIS I get the same results and even worse because of the wasted sparks '''Wasted spark''' Wasted spark for this odd engine is not obvious. The best that one can do is to pair cylinders in such a way that one cylinder is TDC and the other one is 30 deg admission. This could work since, taking account the spark advance, the gas quantity and the pressure in the second cylinder should be low enough for the spark not to ignite. I previously done some successful testing by firing 4 cylinders through the DIS and 2 directly wasted spark from the Bosch coil. ---- '''Results ''' *'''Bench test''' Config : Vems Maserati config (see MembersPage/OddFireSixCyl) :TDC delay after trigger is 127deg, spark delays are 3,33,3,33,3,33, (TDC = 130 deg is not allowed), spark advance is 10 deg. The test is done by increasing from zero the level of the z012 triggers signals. http://www.vems.hu/files/maserati/benchstartup.jpg One sees: - the 2 sec trig from the cam pulley per each revolution (4 pi) - the 6 pairs of prim trig per each revolution: 3 pairs are on the crank pulley 90-30-90-30-90-30 - odd firing 150-90-150-90-150-90 - first fire after 2 revolutions (and more) -> It is unclear to tell which sec trig from the cam pair is used -> I checked another config: TDC delay after trigger 10 deg, spark delay 30,0,30,0,30,0 which should give the same. For some reason, the fire comes 30 deg sooner. *''' Test with distributor (,no wasted spark)''' http://www.vems.hu/files/maserati/Start.JPG On the first picture the firing given by Vems (4 pi) is not used since the engine is quicklystarted by the Microplex(same as on bench) On the second picture - the first fire (f1) is given by Vems after 4pi (and more) - the next fire is at f1+150+90 - other fires are a kind of mess for a while but everything comes in order after 2 more revolutions -> the firing @ f1+150 might be missing because it was off the DIS finger. Indeed Vems probably computes the next time to fire from the time interval of the last two prim triggers, since these triggers are 120 deg apart and the acceleration is high, the time to fire may be off the DIS finger. -> All together the engine truly start up takes 8 pi + Comment++++++++++++++++++++++++++++++++ This is when engine is stopped so sectrig is just missed, the first sectrig will come ~1.99 camrot Unfortunately at least +1/3 camrot is wasted (so final worst-case is ~2.4 instead of 2.1 camrot ) in current implementation because it's internally flagged "out-of-sync" before the campulses come, and the sync only really starts after that (not taking angle-measurements before the 2 sectrig pulses come) +++++++++++++++++++++++++++++++++++++ * '''Test with coil 3x2 and wasted sparks''' The first try was done with 7 deg spark advance at 399 rpm during crank and 22deg at 1000deg 1bar .... The engine says "bang" Next try done after increasing the crank spark advance to 25 deg http://ww.vems.hu/files/maserati/demarrageEchecSD.jpg I did not got the bang in that case but the trigs and the fires seem out of sync, engine appears to slow down even when the fire is not too badly timed. The reasons for these failures were that the high Vems delay to fire when cranking adds up to the 30deg delay of the wasted spark during admission and makes ignition to occur on the paired cylinder. Finally, still increasing the spark advance during cranking (25 deg @ 299 rpm, 35deg @900 rpm )I was able to start the engine http://www.vems.hu/files/MembersPage/Maserati/masewastespartstart1_127-25_35_299.jpg Do you have a '''*.triggerlog''' of this (or similar) real startup ? * We could replay that on bench from .triggerlog format (not from .jpg). ** 2 REF for good start http://www.vems.hu/files/MembersPage/Maserati/v3.3_u003856-2012.08.01-11.56.51REF.vemslog http://www.vems.hu/files/MembersPage/Maserati/v3.3_u003856-2012-08-01-11.56.58REF.triggerlog http://www.vems.hu/files/MembersPage/Maserati/v3.3_u003856-2012.08.01-18.47.05REF2.vemslog http://www.vems.hu/files/MembersPage/Maserati/v3.3_u003856-2012-08-01-18.47.12REF2.triggerlog ** 1 triggerlog for bad start http://www.vems.hu/files/MembersPage/Maserati/v3.3_u003856-2012-08-01-10.41.53NOSTART.triggerlog Trying to improve the start, I reach this final config: http://www.vems.hu/files/MembersPage/Maserati/v3.3_u003856-A-2012.08.01-19.18.13REF2.vemscfg (45 deg @ 400rpm!!! see REF2 files) which is obviously non tractable. Aiming to get a reasonably good ignition control, better than the Marelli Microplex(6803 processor), I think that ** the 720 deg delay before the first fire should be reduced ** Vems delay to fire during the acceleration of the cranking due to the few (3) trigs used for the computation should be corrected ** wasted spark ignition is too much border limit to be used on this odd engine ---- '''Some computation to explain the hard startup''' A rough computation shows that the current firmware's strategy for this trigger cranking may not allow a clean start (or require ignadv compensation). I believe that Vems computes the time of the next firing from the time interval (Told) of the last 2 triggers (120° apart). Let the starter cranks at 300rpm. When started with the Microplex ecu, the engine reaches 800 rpm quite fast say in 600deg (5x120) So the speed increase of 100 rpm each 120deg phase. Hence after the first fire, speed has increased by 30% (100rpm) at the next 120 deg trig. Which means that this 2nd trigger is 30% or 36 deg sooner than expected (or more in the case of firing with the 30deg spark delay)from Told. So at best the startup is messed up, at worse, with wasted spark, the paired cylinder is ignited at 60 deg on admission (30+36 - 7 advance)... * That was one of the reasons better patterns like 36-1 came to wide use ** even if measured period is off by 30% during cranking, that is only 3 crankdegrees to compensate for. And only 2 crankdeg with 60-2 ** note that measured timeperiod (=reciprocal of RPM) changes most significantly from 45 BTDC to 15 BTDC because of compression: (very apparent with 12 or 12-1 crankwheel) time measured 120 crankdeg is actually more even than 75-45 and 45-15 (in many 12-1 installs "missing tooth advanced filtering" is needed to avoid false missing tooth detection when the 45-15 BTDC time is (say) 1.57 times higher than previous tooth time (crank slows that much while traveling only 30 deg: that is 1 tooth). * issue may occur for other coil-type trigger set up with too few triggers on the crank and too high TDC-delay. ** This could be the case for all Marelli ignition for which each firing is commanded by one specific trig on the crank and a timer. Thanks for the detailed triggerlogs. '''We implemented "trigonLONGgap" in 1.2.5 firmware, effecting the "short-gap-trigger".''' see 1.2.5 on GenBoard/UnderDevelopment/FirmwareChanges * change primary_trigger=BB (instead of AB) in a freshly saved vemscfg and upload it (will be soon selectable in VemsTune primtrig-dialog after ini-update, or in new versions) * per-cyl sparkdelay: 0,30 is better than 3,33 which was necessary earlier, so use 0,30,0,30,0,30 (instead of 30,0,30,0,30,0... because of the rotation ?) but if one is no good try the other * '''"TDC after trigger"''' ** of course, ign_tdcdelay=FE need to be changed from 127 crankdeg to 40 degrees, possibly ign outputs rotated to adjust. * even if compensation will still be necessary to make up for the RPM-changes during cranking, please check '''that this helps to achieve predictable ign at the desired BTDC-angle during Maserati startup ?''' ** is the assumption good that the pulse after the (30 crankdegree) short-gap is the actual "10 crankdeg BTDC cranking ignadv" position (for every 2nd event) ? Times from MUCH closer (less than half) compared to earlier. [http://www.vems.hu/files/MembersPage/Maserati/bench/1.2.5.zip Some bench-tests with config included] ---- proposed mazerati z012 configlet: (Trigger settings for Maserati Oddfire 90+150 engine) config11=50 primary_trigger=BB secondary_trigger=19 tooth_wheel=06 trigger_tooth=00 another_trigger_tooth=01 tooth_wheel_twidth[0]=01 tooth_wheel_twidth[1]=E0 ignchmax=05 toothrel_normal=42 toothrel_missing=F0 h[1]=00 05 04 03 02 01 00 00 max_prim_per_sec_count=FF strig_validation=00 ign_tdcdelay=50 h[3]=78 00 78 00 78 00 78 00 ---- August 17 2012 Thanks for the return and the new compile. "please check that this helps to achieve predictable ign at the desired BTDC-angle during Maserati startup ?" I will do it next week "is the assumption good that the pulse after the (30 crankdegree) short-gap is the actual "10 crankdeg BTDC cranking ignadv" position (for every 2nd event) ?" Yes each crank trigger occurs 10deg before relevant TDC "[Some bench-tests with config included]" humm... Anyway to bench test, better to set ignition advance = constant 10deg '''pre_sync func (suggestion)''' I do not know how the firmware is designed, but it should be possible to write some specific pre_sync func whenever the oem trigger sync is too much exotic. Its purpose would be to output a Vems standard sync. In the case of Marelli ignition, this quite simple func would be (to complete): INPUT: prim_trig_event, sec_trig_event OUTPUT: sync_event IF sec_trig_event START COUNT prim_trig_event IF n_prim_trig_event = 2 AND new_sec_trig_event RETURN sync_event '''Fast startup algorithm (suggestion)''' When the first fire is done, engine is in order and the following fires occur mostly at the same phase/times. Hence an alternative to speed computation which leads to delays when there are too less trig events, could be (to complete) : * the operator enters a first guess of the times/phases of firing during the cranking period * these values are adapted (automatically)subsequently from the triggerlogs ---- August 28 2012 '''fw upload trick''' I messed up when uploading 1.2.5. Communications went dead after reboot. Hopefully the Vems suppor gives me the way to go. - Switch-on Genboard with pin 2 an 3 of the rs232 link connected this tells the bootloader whitch is RS232 capable, that someone is speaking with him (that's himself). So you stay in Bootloader mode - Remove Pin2-Pin3 connection, start VT and there VT is clever: it recognize genboard to be in bootloader mode and offer you to proceed fw upload. '''Testing 1.2.5 on bench''' To recall, we look for the first of the following trigger picture http://www.vems.hu/files/maserati/MplexStart3.jpg There Ignition Advance = 10°. One sees that - Prim trigger (90,30,90,30, ...) is for each cylinder and occurs 10deg before TDC. - Sparks are 150,90,150,.. and with 10° Advance comes on time with the triggers. **To resume spark sync: spark occurs on first primTrig after first secTric (of the short gap) and next spark came 150° after. 1) Hereafter the result I get with 1.2.5 http://www.vems.hu/files/maserati/Ref3_1.2.5Triggerlog.png for this config http://www.vems.hu/files/maserati/v3.2_tstRef3_1.2.5.vemscfg where primary_trigger=BB TDCafterTrigger = 40deg SparkDelay=0,30,0,30,0,30 IgnitionAdvance=10 As done before, I used to increase the level of the trig signals do see the delay for the first ignition. 2) If the first spark gap above was 90° instead of 150 things should be better. So I took SparkDelay=30,0,30,0,30,0 This is what I get http://www.vems.hu/files/maserati/Ref_1.2.5Triggerlog.png with the following config http://www.vems.hu/files/maserati/v3.2_tstRef_1.2.5.vemscfg here IgnitionAdvance = 35deg * I cannot explain this result. 3) In any case if the first spark is delayed of 30deg then to put it back on the primtrig, TDCAfterTrigger should be = 10°. Doing the test I got strange results having 12 ignitions per cycle!!. Anyhow it is know that te fw could not work with this short delay. '''Comments''' I put there the comments I got today for this page. CCCC ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ What is the angle of the primtrig tooth after the long-gap ? * Marcell thought 40 crankdeg: because Phil said the tooth after the short-gap is 10 crankdeg (=130, considering the even times compensating with the ...0,30,0,30... per-cyl-sparkdelay rotated as necessary) * From earlier (slightly reformatted): ** short-gap is the actual "10 crankdeg BTDC cranking ignadv" position (for every 2nd event)": Yes each crank trigger occurs 10deg before relevant TDC AA ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ I do not understand what is long gap or short gap, neither ""10 crank deg BTDC cranking ignadv" " Indeed crank trigger occurs 10deg before relevant TDC. Do you need the delay between sectri and primTrig? CCC ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ * in any case, if "not good", you MUST try with the per-cyl-sparkdelay rotated (eg. 0,30,0,30.... becomes 30,0,30,0... ) as needed because I still suspect trigger before TDC should be good at 40 degrees with the 1.2.5 primary_trigger=BB setting (and not good at 10 degrees for several reasons). AA+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ See above, with spark delay = 30,0,30,0,30,0, to get the sync one needs TDCAfterTrigger=10deg ---- '''2012-09-18''' After the maserati was found to be good at normal running, but disgraceful at high RPM-variations during cranking, the maserati code was '''reimplemented in 1.2.6 for very quick sync at startup and using 10BTDC teeth during cranking''' (config also changed, see GenBoard/UnderDevelopment/FirmwareChanges and MembersPage/OddFireSixCyl ). ---- '''2012-10-04 Hourrah!, I finally got the good configuration to successfully test fw1.2.6 ignition on the car (through DIS. It is based on MembersPage/OddFireSixCyl config, the last trick being to swap the 2 coil lines bankA/bankB. See hereafter the 2 beautiful triggerlog. Note that underb crankingthreshold=499rpm the spark advance is always set to 10deg, hence by theory the sparks should occurs at the time of the corresponding crank trigger. Spark advance is 20deg @1000deg and it is interpolated when running between 499 and 1000rpm http://www.vems.hu/files/maserati/goodstart1.2.6-1.png http://www.vems.hu/files/maserati/goodstart1.2.6-2.png One could object that on the second log, the 6th spark event is misplaced. This might be because the cross from cranking to running mode. Hence rpm slow down somewhat and cranking mode probably returns. The Vems team is aware of that. In any case this is very successful. Even more since I guess there is not too many ECU which handle the Weber Marelli odd-fire timing from the actual OEM triggers. Hope this paves the way to many more good start oddfire engines. Now I can mount the 3 coils (2x1 bosch-mercedes coil ) I have kept ready for the car secured in their home made cradle... (one can also see there my previous 3x2Bosch cradle) http://www.vems.hu/files/maserati/bobine%20026.jpg http://www.vems.hu/files/maserati/bobine%20023.jpg Last, I should change the title of this page for: FromEvilToJollyGoodOddFireStartup and thank the Vems team for their fw support... 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.