_ | | | | _ | | | |__| | \____/
### # #### # # ### #
_______ ( ___ ) | ( ) | | | | | | | | | | | | | | (___) | (_______)
## ### ## ## ## ## ## ## ####
___ / _ \ / /_\ \ | _ | | | | | \_| |_/
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: '''Page for the 135-tooth, 3-signal trigger system is the factory setup on many 5cyl audi engines''' - see "other triggers" chapter below for alternatives The GenBoard/VerThree trigger hardware supports the Audi 3 input signal system since v3.3: * '''VR 135 crankteeth input''' (EC36/27 or motronic pin) * '''VR crankhome 1 tooth input''' (EC18/12 or motronic pin) ** crankhome sensor wires need to be reversed * and '''cam-HALL input''' (1 pulse per cam rotation). (EC36/13 or motronic pin). ** Cam-HALL inverter is default (''auditrigger w/cam-HALL-inverter'' option selected) since 2008-06. '''Most users just need to remember that their boxes have cam-HALL inverter''' and choose that in the setup dialog, see VemsTune/QuickStartAudi ** For the curious, the why's, the implementation details, and special cases (like limp-home mode differences) see InputTrigger/AudiTrigger/CamHALLInverter The first successful install with this trigger-setup was done by Miska Peippo in Finland in 2005, see MembersPage/MiskaPeippo/AudiSSix. ---- '''Maximum RPM''' for auditrigger is not 25500 RPM like for many other (mostly low toothcount) triggers, but still much higher than what the rods tolerate. * [http://www.vems.hu/files/Firmware/config/trigger/AudiTrigger/DivBy27/v3.3_n001212-2010.06.08-19.16.52.vemslog vemslog] file with 11500 RPM (135 tooth, 5cyl) setup. ** Since than, eg. with 1.2.27 fw '''15000 RPM easily reached (on bench, with good output actuation). That is >2 million teeth / minute'''. ** Divby9 is usually used above 10k RPM for perfect margin for teeth-deviations. Way above the max RPM the engine supports mechanically (divby27 gives even slightly higher peak RPM => no real-world significance ). ---- '''Internal trigger hardware setup''' See InputTrigger/AudiTrigger/OldHardware for older information. '''v3.x since 2008-07''' * the '''135-tooth cranksignal''' is not sensitive. '''18k pullup to +5V''' works well (primtrig LM1815 pin5 left open). ** Alternatively 2k pulldown to GND (or 1k power resistor: 1..2Watt), with primarytrigger LM1815 pin5=solderjumpered to +5V * '''crankhome-VR''' signal processing can be configured in a few different ways. Simplest is '''1k pulldown to GND and sectrig LM1815 pin5 = +5V''' (solder the small onboard solderblob for this) * '''cam-HALL inverter''' is also standard now ---- '''Overview: multitooth Audi crankwheels''' The old Five cylinder engines with electronically controlled ignition have 2 VR sensors and a HALL sender. * One VR sensors sense the starter gear (135teeth for 5cyl) * another VR sensor sense ONE pin in the flywheel located at 62deg before #1 TDC ** with 12453 firing order,this is the same as 134 BTDC cyl5 * The HALL sender is at the front of the engine (cambelt pulley) in AAN/ABY/ADU engine (fix position, hard to get wrong); in the distributor (3B engine : adjustable: possible to turn to wrong position). ** the HALL trigger wheel has ONE slot acting as CAM reference. CAM ref and the Crank pin must overlap each other for the engine to start in the stock application. ---- Some (???) engines use a homebrew ignition module with a visible TO-3 transistor in the ignition coil console. (at least the ones I have seen) Igniton computer is made by Hitachi (MAC-xx). The small spacing between the teeth (together with cambelt sloppyness) makes it impossible (at least without very advanced, long-term filtering) to sync the engine without the pin in the flywheel. Signal timing graph from 5-cylinder MC-engine: http://www.vems.hu/files/misc/audi_mc_trigger.gif '''Crankhome-VR signal (=Zündzeitpunkt)'''. For VEMS: +peak first, than -peak is desired, as on the diagram (swapping wires might be needed on AAN/ABY/ADU as suggested by VemsAudiAan search "violet"). The same type of triggersystem is used on many older Audis, even the Audi V8 had it until it was replaced with the A8. The engines with an even number of cylinders has an 136teeth flywheel to make everything add up. (other toothcounts... See below) '''Implementation:''' The cam-HALL pulse (0 volt) masks out the 62deg BTDC cyl1 crankhome pulse, but (high level, usually 3.3 .. +5V) leaves the 134deg BTDC cyl5 pulse reach the processor. (just the other way around with the cam-HALL inverter) This way the processed '''"cramhome"''' signal is timed from crank, but only 1 pulse for each cam-rotation''' (suitable for 5cyl ign). Effectively a 'cam ref signal' with no slop at all. InputTrigger/TriggerLog will '''only show the VR pulses''' when the internal cam-HALL signal is high * cam-HALL sensor disconnected if no cam-HALL inverter * or when cam-HALL inverter is present: ** the cam-HALL input is pulled to ground by the HALL sensor ** or '''with a wire (as a quick and useful experiment)''' ** or in software by p259/... output eg. misc output configuration (if internally connected ). * note: InputTrigger/TriggerLog will NOT show the HALL falling or rising edges (only connecting signal to HALL input and expecting "something" is absolutely useless !), only the VR pulses will be detected, those not masked by the HALL "window". ---- '''Alternatives:''' Earlier, some users applied 10+1 InputTrigger/MultiToothNoneMissing ('''5 evenly positioned crankpulse''' and 1 campulse). * '''15-1 style missing tooth crankwheel''' was also successfully used, but 5 evenly positioned crankpulse is simpler. With 5*72 degree crankwheel the camHALL chosen edge must clear the crankpulse even with the worst case of cambelt sloppiness (ideally midway between the neighbor crankpulses, 36 degrees from neighbors). * With 15-1 wheel just make sure campulse stays away from the tooth after the missing cranktooth. '''If the factory wheel is in good condition, no modification is justified. Since 2010, with proper configuration VEMS v3 firmware supports >10000 RPM with the factory trigger system.''' ---- '''How to connect the 3 trigger signals''' * EC36pin27 - Primary trigger 135 cranktooth VR. Usually no problem * EC36pin13 Sec.trig cam-HALL 1 window camtooth. Best to verify with scope or soundcard (or at least visually) that the '''cranhome-VR is around the middle of the cam-HALL window'''. Essential to '''verify after adjusting the cam-window''' ** don't forget to apply supply voltage for your HALL sensor * EC18pin12 - crankhome VR (1 tooth per crank) ** originally 10..12k pullup to 5V on crankhome VR signal recommendation was changed to "1k pulldown to GND", see above ** C40=1uF populated since ages (don't worry about it) ** '''Important''' It is necessary to reverse crankhome polarity at the crankhome connection on the firewall (engine bay side), using 3 pieces of wire, 3pin JPT Male and Female connector is needed to make this properly. A good signal looks like [http://linkopingsmotorsport.se/1029/g4_pin1.gif this] at EC18 Pin 12 Don't forget to use shielded cables, separate for all 3 signals. The shield only connected at the ECM end. "return" is to GND (sensor ground), not GND5. See MembersPage/PhatBob/UserGuide. See InputTrigger/AudiTrigger/TestLM to see how the first installs got sorted out. '''Old method, likely will not work with 1.1.x, should not be needed anyway:''' * Note the Manmdd0c TerminalProgram command. After this command: * capture output (start log; crank for 5 seconds, but don't cut ECM supply as you'll have to issue Manmdd0c again) * Upload the mdd0c_trigger.log file (see file-aree on DocsPage bottom) * and publish the link on your MembersPage, so it can be analized (looking for trigger malfunction) if ---- '''Signal Sloppyness - info for advanced users. Safe to skip''' The sloppiness seems small, see [http://www.sjmautotechnik.com/trouble_shooting/AANengine.htm image1] and [http://www.sjmautotechnik.com/trouble_shooting/wave/RPMTDCId.jpg image2]. Our implementation accepts if the "cramhome" (== crank-cam hybrid) pulse comes normally, or one tooth too early (which should be rare, but possible if the VR sensor is not aligned properly). '''If the crank-home is sloppy, not always between 2 given crankteeth, the code will finally sync as if the crank-home always came after the tooth coming later.''' '''Example''' Here we name 3 given teeth A,B,C. If '''crankhome is seen''' * '''always after B:''' this is the normal setup, this should theoretically be the only possibility if the VR sensor mechanical install is fine. trigger_tooth=00 means timing from B. * '''mostly after B, but sometimes after A:''' this (though it should be unlikely) is tolerated, timing from B * '''mostly after A, but sometimes after B:''' timing from B, but initially (while crankhome is coming after A) timing from A might happen !! * '''sometimes A, sometimes B, sometimes C:''' forget it. In fact this (>2.67 degrees sloppyness and unfortunate position) should really never happen (unless you hold the VR sensor in your hand while running the engine ;-) : remember that crankhome is timed from crank * no more possibilities ---- '''HISTORICAL configuration for 1.0.x''' (for 1.1.23+ is the official branch for auditrigger now, this is obsolete) * the 5cyl InputTrigger/AudiTrigger engine will need 1.0.29 +firmware (see GenBoard/UnderDevelopment/FirmwareChanges) ** MegaTune r027 or later will be needed (r028 should work too) We must start from a coiltype + camsync setup (maybe like MembersPage/MichaelRichards/Projects/NicksGTX or [http://www.vems.hu/files/Fero/config.txt Fero] * secondary_trigger=1D is standard (rising edge, camsync with filtering) Michael Richards and Fero use this ** secondary_trigger=19 (rising edge, camsync without filtering) could work too (or even better ?). But secondary_trigger=09 cannot work. * don't forget the reset_engphase_after and tooth_twidth.. variables!) * primary_trigger=FB # rising edge, coiltype (yes!), trigger filter disabled (bit2=0) ** very important, that '''coiltype chosen, and primary trigger filter MUST be disabled''' * tooth_wheel=87 # decimal 135 ** '''recommended trigger_tooth=1B is actually appr. 27.8 toothtimes after secondary trigger''' (assuming first crankpulse comes 0.8 toothtime after "cramhome") pulse * ignchmax=04 # 5 cyl * alternate=14 # or 04 if no simultaneous injection is needed at startup * ign_tdcdelay=78 # = decimal 120 = 60 degrees ** together with our trigger_tooth setting, cramhome is assumed to be 60 + 27.8 * 360/135 = 134 crandegree before cyl5 TDC (standard setup) * h[0]=08 02 01 04 10 00 00 00 ** assuming 53124 fire order, ** and direct mapping injchannels A,B,C,D,E (hexadecimal 01,02,04,08,10) **remember that hexadecimal 10 (last active element) == decimal 16 (if using MegaTune) * another_trigger_tooth=36 # decimal 54 * trigger_tooth=1B # tooth "27". For auditrigger in 1.0.x, tooth_cnt counts from (another_trigger_tooth-1) '''down''' to 0. So beware that lower trigger_tooth value uses a later tooth as the "trigger tooth" * h[2]=40 10 00 20 60 00 00 00 ** assuming 53124 fire order. ** Remember to change h[2] if you use a different output mapping for ignition channels (like the not standard 00..04 mapped to cyl 1..5) '''Auditrigger 135 tooth config for 1.1.22+ :''' http://vems.hu/download/v3/firmware/v3_firmware_1.1.22.zip <code> # rpmk=2400 (12000 / 5 cyl) rpmk[0]=09 rpmk[1]=60 divider=01 # alternate=14 if you like batch firing during cranking alternate=04 # coil type, NO filtering, bit6=1 auditrigger=enabled # 1.1.23 requires bit6=1 (while 1.1.22 does not care, can work with primary_trigger=03 or primary_trigger=43) primary_trigger=43 secondary_trigger=19 # yes, not 87(decimal 135) but decimal 90 !!! tooth_wheel=5A # 54/3=18 another_trigger_tooth=12 crank_minper=33 # with divide-by-3, we have 135/3=45 per crankrot that is 8 degrees, 32 * 0.25 degrees tooth_wheel_twidth1=20 tooth_wheel_twidth2=00 cam_sync_r_edge_phase=00 cam_sync_f_edge_phase=00 reset_engphase_after=40 # PLEASE ADJUST _YOUR_ BASE TIMING! use trigger_tooth=00 # trigger_tooth: must be min 00, max 11 (decimal 0 to 17), somewhere in the middle should be fine, eg. 09 # sync from the edge at 134 BTDC cyl5, with 1.1.22 # trigger_tooth=09 without cam-HALL inverter. trigger_tooth=00 with cam-HALL inverter: trigger_tooth=00 ign_tdcdelay=74 ign_out=70 ignchmax=04 </code> * Reftooth array (decimal 0, 18, 36, 54, 72 but traversed backwards). You can rotate reftooth array, if you rotate h[2] ign-out sequence, the only effect is initial syncup freq. Starting with 00 gives the fastest startup. ** h[1]=00 48 36 24 12 00 00 00 * for cyl order 5,3,1,2,4 (ignchannels 4,2,0,1,3 in Miska's wiring, this is NOT the recommended way) ** h[2]=40 30 10 00 20 00 00 00 * with the recommended wiring, outputs are fired in sequence (either up or down: this looks good on LEDs and more importantly damn easy to verify the order correctness in MegaTune without thinking, after, say a rotation attempt), in this case ignch6, ignch2, ignch1, igch0, ignch7 (and coils are wired appropriately to cyl1,2,4,5,3) * h[2]=60 70 00 10 20 30 40 50 Find full config and trigger-extract at: http://vems.hu/files/MembersPage/MarcellGal/Audi/etc/ Only get information for starting, tune your engine ---- '''Other triggers for 5 cyl engines:''' Some primary trigger patterns for 5 cyl engines. Spark is timed from crank, but '''1 pulse CAM-HALL is needed (secondary trigger) in any case '''(needed for any odd-cylinder count engines anyway): * '''5 points on crank''' (VR or HALL). ** to get this, sometimes 4 pins added to the factory 1 pulse crankhome-VR (precisely 72 degrees apart). But - as for any home-made triggers HALL is easier to get right: eg. machined wheel or 5 x M8 bolts with [http://shop.vems.hu/catalog/hall-sensor-p-107.html 1GT101DC HALL sensor] * '''15-1''' on crank (homemade => HALL) * '''60-2''' (factory-made VR or HALL) * 8-1, 24-1, 36-1 will '''NOT''' work. ** 10-1 crankwheel could theoretically work (would need a minor firmware mod), but currently (1.1.67) not supported. * The '''135 tooth VR''' factory setup is also an option ** if all teeth are there: triggererror and misfire if running at all if a tooth breaks off ** '''With the 135 tooth, crankhome-VR must be connected with correct polarity''': can be tested with scope or even with a '''DVM: move a bolt close than away to/from the sensor''', good if you see positive,negative in this order (the factory setup must be reversed) There is also an other audi trigger arrangement on the older audis that don't have a knock sensing ignition. They only have a 5 slot HALL trigger in the '''distributor'''. No crank trigger. If a '''few degrees of ignition inaccuracy (due to cam-belt)''' is acceptable one of these distributors can replace the entire ignition system on the computer controlled cars. This was used with 1.0.x firmware (coiltype, tooth_wheel=5) and could be made to work with 1.1.6x firmware (a bit more variables there, yell if you really need that) but is hardly used nowadays, because of the plurality of the more precise "timed-from-crank" alternatives above. The later models have a standard Motronic triggerwheel and a CAM sync sensor. ---- '''See also:''' * VemsAudiAan - the trigger related config is easier from VemsTune ** GenBoard/Manual/InputTriggerHardWare/AudiTriggerHardware * InputTrigger/AudiTrigger/OtherToothWheel - less common 130, 136, 132, 129, 162 ... tooth crankwheels in other engines ** some Porsche used [MembersPage/PeterJensenPorsche 130], some 132, some [ MembersPage/KevinBlack/PorscheTurbo 129], some Volvo 142 ... other toothcounts are possible and should be possible to set up * InputTrigger * http://www.lanzo.se/auto/audi.html an interesting story about mechanical issues * MembersPage/KristsMezgals * InputTrigger/AudiTrigger/OldCircuit the old circuit that was eliminated by firmware code * InputTrigger/AudiTrigger/TestLM1815 - some guys got problems with VR input for secondary, here is instructions how to test it and write report 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.