___ / _ \ / /_\ \ | _ | | | | | \_| |_/
##### # #### # #####
_ | | | | _ | | | |__| | \____/
___ ( _`\ | (_) ) | _ <' | (_) ) (____/'
### ## ### ## ## ## ## ## ### ## ## ## ###
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: See EdisIgnition/FaQ for how to connect EDIS module to GenBoard See '''firmware/edis.c''' to see how edis support is implemented in GenBoard Here is an [http://cvs.sourceforge.net/viewcvs.py/megasquirtavr/firmware/edis.c online version] ---- <code> static inline void edis_saw(void) { uint16_t t, saw_length; edis_saw_high(); t = mult16_8(410, engine.ignadv)>>8; // 410 comes from: 25.6*16 define MAX_SAW_LEN (1536/4) define MIN_SAW_LEN (20/4) if((MAX_SAW_LEN - MIN_SAW_LEN) < t) saw_length = MIN_SAW_LEN; else saw_length = MAX_SAW_LEN - t; event_insert(etime.now + saw_length, EDIS_STOP_SAW); } </code> ---- This shows the power of GenBoard: * edis_saw_high(); is a simple port-action (it can be specified compiletime if SAW is wired inverted or not, so it's 3 lines in fact) * The sawlength calculation is basicly one line, a 16*8 multiplication (this had been split to be calculated from userspace - not interrupt - and sawlength stored in the dwell variable. Also, multispark capability was added (configurable). * the if condition takes care if the user configures too high ignitionadvance (edis max is 57 (??) degree, while msavr ignition table defaults to 1/4 degree ignition advance from 0..64 degrees.) * the event_insert() uses the EventQueue to schedule an event, which will call edis_saw_low() a specified time (saw_length * 4 usec) later It's called from the interrupt, which happens at the falling edge of PIP. It's that simple. ---- Kenny Bauman kennybauman at yahoo.com writes: The ford EDIS is a standalone microprosessor based ignition. It handles all timing calculations and trigger wheel processing internally. MS AVR only has to deal with a SAW and PIP signal to make the EDIS setup work. What happens is the EDIS sends out a PIP signal that will tell MS AVR it needs a SAW in return. The length of this SAW signal tells EDIS what timing is desired. If EDIS looses the SAW signal it defaults to 10 deg timing as a base value. Nice as a built in limp home mode. Makes a nice setup as it is proven and hardened for the underhood environment. Regarding the 36-1 trigger wheel. This has to be a Crank trigger not a cam trigger. You can use a cam trigger, but it needs to be 36-1 and 36-1 on the same wheel for a total of 72-2 teeth. The missing teeth would be 180 degs apart. This is for EDIS. So what I "think" is needed is a interrupt (or event que) every time EDIS sends the PIP signal. Go to the lookup table get the timing value stored, do the math and then send a timed pulse back to EDIS as the SAW signal. That's it. EDIS takes care of all the hard stuff. SAW (microseconds) = 1536 - (25.6 * Commanded_degrees) You can go to: http://www.bgsoflex.com/mjl/mjl_edis_summary.html to see more about the relationship of PIP and SAW. ----------------- Here are some AC Delco part numbers for the EDIS-4 module and the coil. The US model vehicle is: '93 Escort LX w/1.9L 116CID L4 MFI (J) engine. EDIS Module - AC Delco F1945 Coil AC - Delco F510 NAPA ONLINE lists: Echlin Ignition Ignition Control Module ECHTP500 I haven't found a part number for the VR pickup and then there is the toothed wheel. - : Some more trigger wheel info- James Murray at james@nscc.info has part numbers and excellent pictures here. [http://www.jsm-net.demon.co.uk/megasquirtnedis/finding-nam.html North America] [http://www.jsm-net.demon.co.uk/megasquirtnedis/finding-euro.html Europe] And this may be of interest to some test bench work or engine retrofit. [http://www.vems.hu/files/EEC_JayJames/EDIS_sprag.ZIP Zip file of GM sprag data] Jay James ------ Another good intro: http://www.dainst.com/info/edis/edis.html Note, that the postion of VRS pickup sensor in relation to TDC of cylinder 1 is not the same for all EDIS modules: Cylinders Degrees BTDC EDIS4 90 EDIS6 60 EDIS8 50 ------ [http://megasquirtavr.sourceforge.net/manual/Detailed.Output.EDIS.html#Install [Manual: Detailed.Output.EDIS.Install]] Jim Hearne ---- [http://megasquirtavr.sourceforge.net/manual/Detailed.Output.EDIS.html#Install [Manual: Detailed.Output.EDIS.Install]] Dave Haynes ----- [http://megasquirtavr.sourceforge.net/manual/Detailed.Output.EDIS.html#Install [Manual: Detailed.Output.EDIS.Install]] See also: IgnitionPage IonSense ---- [http://megasquirtavr.sourceforge.net/manual/Detailed.Output.EDIS.html#Install [Manual: Detailed.Output.EDIS.Install]] 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.