$From: "Bruce Plecan" $Subject: Programming 101 $Date: Mon, 27 Apr 1998 09:56:35 -0400 If you have not read the past 101 installments, please do so now. This is for educational purposes. Changing the calibrations of your ecm may violate the laws in your area. If you attempt recalibrations, serious engine damage may result. Please read past posts about tune up procedures, when attempting recalibrations. These matters should be done under adult supervision. Again this is in general for gm ecms, and most specically the 1227747.. Were going to talk/write/read some today on the matter of malfunctions flags. They are the self diagnostics the ecm does, and then reports to you when in diagnostic mode. When you short the ALDL two diagnostic pins together the SES light flashes a code at you, 12 plus what ever the malfunction is, if any. If you need to understand the codes, there are numerous articles, and books covering that issue, and should be used for understanding say a code 21. The purpose of this article is turning on+off these reports of self diagnostics. Notice I say reports. Some of the self diagnostics will still run, but not be reported as an error, or result in the ecm going into limp home mode. That has also been covered in the archives, about which ones run, or not.. Now, these malfunction flag addresses use a combination of Hex, Dec, and Binary.. In brief these are different ways of counting, and the following is a conversion for them Dec Hex Bin 0 0 0000 1 1 0001 2 2 0010 3 3 0011 4 4 0100 5 5 0101 6 6 0110 7 7 0111 8 8 1000 9 9 1001 10 A 1010 11 B 1011 12 C 1100 13 D 1101 14 E 1110 15 F 1111 Now again refering to prior post addresses in a hex editor of a prom look something like 00 01 02 03 04 05 0000 AA 03 FF FA FD 02 This is a very abbreviated corner of on the columns across the top would read to 0F, and the rows would go from 0000 to 0FFF. Now we could read those addresses as binary, the 0002 would look like 1111 1111 0003 would be 1111 1100 0004 would be 1111 1101 Now if we wanted to say 1 represented yes, and 0 would be no, we could tell the computer that.. Now say we had 24 malfunction codes. We could list them as 12,13,14,15,16,17,18,19,20,21,22,23,24,25, and so on.. So address 0002 could mean malfunction codes 12, 13, 14, 15, 16, 17, 18, 19 and then the 1+0's could mean yes and no. So looking at FF meaning 1111 1111 we would have 12 13 14 15 16 17 18 19 yes yes yes yes yes yes yes yes meaning all the malfuntion flags at 0002 are enabled, and working. If we go to 0003 we get 1111 1100 that would correspond to 20 21 22 23 24 25 26 27 and have the meaning of yes yes yes yes yes yes no no So malfunction flags 20,21,22,23,24,25, would be enabled and 26+27 disabled.. Now, on some ecms they use different codes, and skip numbers, so it gets to be challenging to line up which codes are used, and which ones are enable, or disabled. But, in the 747 they are at 050D-050F, and 3 words (addresses) long. On other ecms they may be 3-4-or even 5 words long, and probably longer than that on some of the newer stuff. But, on the 747 all ya haveta do is try turning them on+off, and all of sudden by using the SES/scanner, and causing a known malfunction you can figure out which 0+1 enables, disables, what malfunction flag... Again please don't quote the whole posting in reply, just what is is doubt or wrong, or you have a difference in a opinion with. I am not a EE, ME, or anything like that, so the above is how I understand things, and make no guarantee that it is absolutely correct it has worked for me, and your results, may vary. If you have any comments please e-mail me, and I'll review, what ya say, and see if in fact I did error (again).. Bruce nacelp@bright.net This message originated at Cone Shaped Hat World Headquarters If you have not downloaded Terry's gmer.zip, and what Ludis posted yesterday, you need to read yesterday's postings in the archives, and do that now. If you have any information about the 747 tables/switches, I'd really appreciate hearing about them, or would you post that information. If ya haveta read the above a couple hundred times to get it don't feel bad, I did it more than that to get it...... -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: "Bruce Plecan" $Subject: Clarifications on last Programming 101 $Date: Thu, 30 Apr 1998 22:41:29 -0400 Again please read all prior 101 text before trying to interupt this as a complete thought. I'm going to give a few examples of what a set of malfunction code flags look like and how they change in a given application. If we were to look a 747 bin file with a hex editor, we might see 050D 050E 050F FD 39 F9 would be stock FC 39 F9 would be no vss diagnostics (code 24) FD 39 79 would be no knock (code 43) FD 19 F9 would be no egr (code 32) I hope this shines a tad more light on the issue. Also note how unique the pattern seems against all the other table stuff. Also, an address might better discribe 16 bytes, and an address of say 0000+0001, rather than a location of say 0000.. Cheers Bruce We need a Cone Shaped Hat representative in washington, DC by the year 2000. If I start walking now I might make it in time.. -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: "Bruce Plecan" $Subject: Clarifications on last Programming 101 $Date: Thu, 30 Apr 1998 22:41:29 -0400 Again please read all prior 101 text before trying to interupt this as a complete thought. I'm going to give a few examples of what a set of malfunction code flags look like and how they change in a given application. If we were to look a 747 bin file with a hex editor, we might see 050D 050E 050F FD 39 F9 would be stock FC 39 F9 would be no vss diagnostics (code 24) FD 39 79 would be no knock (code 43) FD 19 F9 would be no egr (code 32) I hope this shines a tad more light on the issue. Also note how unique the pattern seems against all the other table stuff. Also, an address might better discribe 16 bytes, and an address of say 0000+0001, rather than a location of say 0000.. Cheers Bruce We need a Cone Shaped Hat representative in washington, DC by the year 2000. If I start walking now I might make it in time.. -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $Date: Fri, 1 May 1998 11:38:40 -0500 $From: mdill@lsil.com (Mike Dillon) $Subject: Re: Clarifications on last Programming 101 Hey Tony, Let me expand on your answer a little so the binarily inpaired can understand :) FD (Hex) is 1111 1101 in binary. This means from what Bruce has discovered this bit ^ at address 050D controls the vss diagnostic. F9 (hex) = 1111 1001 and this bit ^ is the knock diagnostic ie 0111 1001 = 79 hex 39 (hex) = 0011 1001 this bit ^ is the egr diagnostic ie 0001 1001 = 19 hex My hat is off to Bruce (How in the heck did you find this ??) The question is does clearing these bit(s) disable these functions or does it just turn off the error reporting ?? Mike D. from what Bruce has found -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: "Bruce Plecan" $Subject: Clarifications on last Programming 101+ Dragging it out $Date: Fri, 1 May 1998 18:22:31 -0400 Subject: Re: Clarifications on last Programming 101 I DID NOT DISCOVER THIS, a list member shared it with me, this is far beyond my mental abilities. It also is mentioned in the "Net", but ya gotta dig for it. BTW, I've mentioned where in numerous postings. So while alot of what I write is obvious, ya gotta look real close, for the finer points. The bits are mentioned elsewhere, and the member explained the correlation to the error code. Then I wrote to others to "get it" again. This was a matter of digging for months, and writting to others (many). And finding others to talk about it. THIS IS WHY I"M DRAGGING IT OUT, cause it takes a ton, of time to gather all the snippets, and follow them around. I'm also following leads on future projects. This list has many gifted folks, I just got time to type. functions or does it just turn off the error reporting ?? I've spent a bunch of time being a pest, and writting to folks trying to get the pieces to the puzzle. The info in the tuning stuff I wrote was basically "from my experiences". Alot (most) this ecm stuff is from others, hence some errors in my interuption of things.... Turning the malfunction flags off stops an error code from being stored, and when the diagnostic test is run by the ecm and it fails, it doesn't got into the limp home mode. Some tests aren't run, but some others are (see archives for the particulars). It doesn't turn off the operation of say a egr valve solenoid apply signal, that is another "switch". Another test of say EST still does the momentary addition of advance to the timing but when the EST reports the knock is present, it's says OK, or if not present OK, and goes back to other ecm functions.. Hope this helps to clarify the clarification. Cheers Bruce Again I have no formal electronics training other than at the vocational level, I'm no EE or Software Pro. I'm just sharing what I've found and OTHERS have told me. I've tried to verify when possible, all that I've stated. -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: "Bruce Plecan" $Subject: Misc 101 Information $Date: Mon, 4 May 1998 12:01:33 -0400 In case you were ever curious, how often the ecm "looks" at things. The ECM never stops polling the sensors. Under certain conditions, it might ignore a measured value though. Here's how often the XYZ ecm samples the inputs: MAP is sampled 160 times a second. O2 is sampled 160 times a second. VSS (MPH) is sampled every VSS pulse (up to 80 times a second.) RPM is computed 80 times a second (in the spark code.) TPS is sampled 80 times a second. Battery voltage is sampled 10 times a second. CTS is sampled 10 times a second. ALDL is sampled 10 times a second. MAT is sampled 10 times a second. MPH is computed 10 times a second. Fuel and spark are computed 80 times a second - on alternate 160 Hz beats Most of these sampled items are filtered, so the value used for further computations won't change as fast as the sample rate Cheers Bruce -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: "Bruce Plecan" $Subject: Programming 101 $Date: Mon, 4 May 1998 13:18:48 -0400 Again, please read all past postings in reference to Programming 101. (as written this current ecm is the gm 1227747). Again this is for educational purposes. Performing table modifications as mentioned herein may violate local/state/federal laws if done to a vehicle. Any ecm table/code modifications can do damage to an engine. Do not attempt these modifications unless under adult supervision. I have no formal electronics training and this information seems to be true to me. If you find fault with any of this please e-mail me, (my address is nacelp@bright.net) so I might be able to research, and correct any errors that I make. When quoting this article, please edit your reply (of this material). Today's two tables are both coolant temp dependent ones. One being for cranking fuel, which is at 044A-0458, and idle fuel vs temp at 05F5-0605. Now that they have been posted in the 332 incoming area for about a week I'd think everyone has gotten a copy of GMER, and delco edit. If you haven't then this is the time to. Looking at gmer will give you a sense of exactly what tables look like, and how they vary, and getting delco edit will let ya see what they look like in prom form, ie hex editor. As I mentioned before some of the tables are preceeded by offsets so just before a large table you might see a group of entries like 00 40 0F. That would correspond to a 0 rpm offset, an 40 MAP related offset, and a table with a column width of 15 entries. So now, you can look at a dissassemblied prom file like at ludis's site, and compare that to what tables look like in an editor, and use delco edit. There now you have all the basics for looking at tables, finding tables, and editing tables. If you search the archives for Tables, Maps, tuneup, you then have the info for how to monitor changes ya make, and what approximate values to change how much. Granted we still need to discuss some more math, but at least now, everyone can get up to speed on where to at least start to look for a table. What tables look like in a proper editor, and how to take a raw hex file, and manipulate it into an orangized file, and included in delco edit is a hex to dec conversion, and also a factor conversion so if you want to make the *90/255, you would just hit F and then .352 and all of the file or your table would be expressed in degrees. If anyone has any tables, locations or anything they would like to share in ref to any gm ecm, I'd invite them to post it to the list, or write me, with that information. Again I would like to thank those who have contributed to making this possible, and again say that I did not discover any of this but rather am reporting it, as I understand things. If you are having trouble understanding any or all of this your probably not alone, so write me, and I'll try to better explain these matters. HTH Bruce -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: "Bruce Plecan" $Subject: Misc 101 stuff $Date: Sun, 10 May 1998 09:52:35 -0400 Is there anyone working on the (747) 101 project that needs something?. Other than some items for bench running ecms. I'd also like to know of those working on the 747, who are going to be continuing on with the 165/730/808 series, and I would like to know who that isn't working on the 747 will be joining the fray for the next group, of ecms. If your new to this please tell me what your strong points are, software, burning/trying proms, junkyard hunting what ever, if ya want to help we probably can use ya. Please e-mail me nacelp@bright.net Bruce -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $Date: Mon, 18 May 1998 11:07:55 -0500 (CDT) $From: "Gregory A. Parmer" $Subject: Proj 7747/101 Rather than rig up a fake distributor to gen pulses I am using the real thing on the bench. Don't let OSHA know, but a $3 fan belt from the drill press to the bottom o' the distrib shaft spins it nicely. The drill press has a stepped pulley which allows me to vary the RPM via gearing. She ran awhile yesterday at 2800 rpm. A torch flame to the O2 sent it immediately to closed loop. The O2 reading is gonna be a serious hindrance to bench testing. Interestingly enough, the MAP seemed to have as much affect on pulse width as TPS. Makes sense, figgering that load is kinda opposite of vacuum ("somewhat inversely proportional" to use the proper terms). BTW--The "18mm Sparkplug Non-Fouler" makes a perfect O2 mounting boss. Thanks to those who pointed it out. They came 2 to a box and included new gaskets all for under $4. questions: The max RPM (at least reported by the scanner) was 6375. Is that a hard limit or just a reporting issue? What does the "Crossings" value represent? Crossings from rich to lean as reported by the sensor? No o'scope available... -greg -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $Date: Mon, 18 May 1998 12:05:05 -0700 $From: peter paul fenske $Subject: Re: Proj 7747/101 Hi Greg and all Max rpm is just that 255 is used to represent increments of 25 rpm. Just a convenience for number. there is also a 12.5 rpm var and sometimes a 6.25 rpm var. Crossings report how many times the O2 sensor switches across stoich. It is a measure of closed loop system performance. -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: "Bruce Plecan" $Subject: 101Pro volunteers $Date: Wed, 20 May 1998 17:16:31 -0400 At one point there were several people that wanted to get involved with the 101 project but didn't know what they could do, well I got an idea. Ask for a copy of the posting notes, and see how I cut the addresses out, and double entries. Some one volunteer to organize it, and have a few folks cut+paste it together. Do some topics like C-3, P-4, ALDL, ecm, peak+hold, saturated, and just edit it into a easy to access source of info.. Just a thought from the folks at Cone Shaped Hat, Headquarters Bruce nacelp@bright.net Or even just do the cut + pastes, and send it as an attachment to me, and I'll do the editing. But, do it by subject matter....... -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: "Bruce Plecan" $Subject: Pro gram ming 101 $Date: Tue, 2 Jun 1998 23:59:47 -0400 Yes things have been slow as fast as published matters go, due to circumstances beyond my control, but will resume in another couple of weeks. For the moment the 747 part has been on hold, but things have been moving ahead on another front. Cheers Bruce -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $Date: Fri, 05 Jun 1998 14:56:09 +0000 $From: steve ravet $Subject: trouble code disable in '747 Looking thru the archives, I saw these two posts concerning disabling of ECM trouble codes: Bruce wrote: 050D 050E 050F FD 39 F9 would be stock FC 39 F9 would be no vss diagnostics (code 24) FD 39 79 would be no knock (code 43) FD 19 F9 would be no egr (code 32) That makes it look like bit 0 of address 50d controls code 24, bit 7 of address 50f controls code 43, bit 5 of address 50e controls code 32. But another email from Bruce had the codes listed like this: address: 0x50d bit: 7 6 5 4 3 2 1 0 code: 12 13 14 15 16 17 18 19 address: 0x50e bit: 7 6 5 4 3 2 1 0 code: 20 21 22 23 24 25 26 27 address: 0x50f bit: 7 6 5 4 3 2 1 0 code: 28 29 30 31 32 33 34 35 The two mismatch, and the second table doesn't even go up to code 43. So now I'm confused. Bruce, would you mind please summarizing this table again? Which bits control which codes? I'm trying to get this all straightened out because I'm putting all the programming 101 notes into an HTML document for the diyefi WWW page. So, when it's done, who do I send the page to? --steve -- Steve Ravet International Meta Systems http://www.imes.com steve@imes.com -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $Date: Fri, 05 Jun 1998 15:38:43 +0000 $From: steve ravet $Subject: more 747 questions Expect lots of these as I go thru the 101 archives and discover how much I don't know. In this archive: http://efi332.eng.ohio-state.edu/diy_efi/archive/archive_num_98;lines=30216-30277 Bruce says the WOT A/F table is here: We covered the WOT spark adder, so now we must look for a WOT Air/Fuel Ratio. That would be at 0487-048E.. But in this archive: http://efi332.eng.ohio-state.edu/diy_efi/archive/archive_num_98;lines=14696-14775 It says that it's here: So if ya look at the end of the fuel area, ya see exactly that, again depending on what application, it reads hex 64 for a few entries, and then the last few are 00. So we wind up at 03C7-03D7 as being the fuel enrichment for WOT. Can someone clarify? thanks --steve -- Steve Ravet International Meta Systems http://www.imes.com steve@imes.com -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $Date: Fri, 05 Jun 1998 21:32:55 -0800 $From: Ludis Langens $Subject: Re: trouble code disable in '747 steve ravet wrote: The ECMs with three bytes for trouble code don't use the digits 6, 7, 8, or 9 in their trouble codes. There is also no code 11. So the three bytes go like this: 12 13 14 15 21 22 23 24 25 31 32 33 34 35 41 42 43 44 45 51 52 53 54 55 Notice how everything fits just perfect! unsigned long BinToBCD(unsigned long i) {unsigned long t; Ludis Langens return i ? (t = BinToBCD(i >> 1), (t << 1) + (i & 1) + ludis@cruzers.com (t + 858993459 >> 2 & 572662306) * 3) : 0;} -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: "Bruce Plecan" $Subject: Programming 101 $Date: Mon, 8 Jun 1998 11:33:37 -0400 If you just tuned in, please read the archives for all related 101 information. This is for educational purposes. Any prom editing my violate federal state, or local laws, and is your responsibility to find this out. None of this should be done unless under adult supervision. Please also read all the posts about tune-ups fuel maps, timing tables, etc. Addition bins for the 747 are available at 332 incoming. Misapplication of this information may result in terminal engine damage. I am not an EE, or Software engineer, and this is my opinion of how things work, and appear to work. When possible I've tried to verfify information, but not allows has this been able. Also, this material is 1227747 application specific. The warnings are getting to be longer than the info.. When replying PLEASE edit the title so the 101 searches don't get too overwhelming, and if repling to me please edit the reply of quoted material. Since there is no mechanicall choke on the 1227747 applications of the TBI systems some corrections to timing fuel and air must be applied. These steps continue into what would be considered overheating conditions also. Since with any luck you won't be running your engine under those conditions, and I wouldn't deliberately run an engine there even for calibrations, I'm not even going to discuss these areas. But, if you want to explore these areas, engines don't live long there, and doing so is inviting serious trouble. There are 9 steps for both the air (idle speed), and AFR (air fuel ratio). The idle speed temperature corrections are at 060E-0616, and the AFR corrections are at 0459-0468. The idle speed corrections are applied thru the IAC motor steps, ie the higher the number as displayed on a scanner the farther the pintle is moved from the closed posistion against the orfice. If you look at the pintle, that is on the IAC motor in the SBC applications, you'll notice that they are a dual taper. The second taper starts at about the 155-160 count mark. Also, replacing this dual taper pintle with a single will slightly reduce the WOT air flow. Also this Taper can be thought of having a slight affect on the accleration enrichment. I mention the above pintle and tapers for those of you planning on using this info in dual throttle body applications. If you measure things out you'll find the single taper Cross Fire Pintles have about the same cross sectional area as the single taper part of the SBC Pick-up applications. IMHO there appears to be a fairly large area of code devoted to IAC pintle movement. While commonly thought of as idle control, and for anti-stalling, this accleration movement in correlation to injector timing in light crusie conditions is very important. Again this is IMHO. Cheers Bruce nacelp@bright.net -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: "Bruce Plecan" $Subject: Re: trouble code disable in '747 $Date: Mon, 8 Jun 1998 14:20:27 -0400 Subject: Re: trouble code disable in '747 It's binary 0000 would be all off for diagnostics (in one group), and be represented by a 0 entry. 1111 would be all enabled and an entry of F. 8+4+2+1 =15 in dec. or F in Hex. And just as examples 0011 would be an entry of 3, 1010 would be 10 or A in hex.. Does that better explain it?. Bruce -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $Date: Tue, 9 Jun 1998 08:58:11 -0500 (CDT) $From: "Gregory A. Parmer" $Subject: Re: more 747 questions On Mon, 8 Jun 1998, steve ravet wrote: Steve, and others, If you haven't ran across it yet, the following URL offers some super insight. It describes the GN system but I expect it will apply to all delco systems. The ECM learns differences required to achieve appropriate A/F mixtures at part throttle conditions (and sets the Block Learn Multipliers) and applies the same multiplier even when you go WOT. In other words "open loop" is not entirely based on a pre-programmed map. The BLMs provide a learned fudge-factor. See http://www.thrasher-ep.com/cal_hints.htm For some almost as good O2 info, see http://ni.umd.edu/gnttype/www/ecmpage.html Now for my probably wrong interpretion of the whole shebang: What I'm beginning to conclude is that the O2 is only of a feedback mechanism to prove that what the ECM thinks its doing is really what's happening. For example, the ECM enleans and then checks O2 to see that it really worked. It richens and checks. If that works it can figure (guess?) that it is close to stoich and that XX amount of extra fuel would be required to go to 12:1. Open loop just eliminates the check and gives it the authority to do even more precision guesswork. Gurus..am I just slow, or slow and stupid too? Regardless, the Thrasher page is worth a read for 101-ers. -greg -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: "Bruce Plecan" $Subject: Re: more 747 questions $Date: Tue, 9 Jun 1998 11:22:34 -0400 Subject: Re: more 747 questions Couple other little points. The ecm uses the O2 sensor readings as a switch. ie comparator. Just for instance lets say 14.7:1 occurs at .440v, as measured by the O2 sensor. To maintain a 14.7:1 ratio, the ecm determines a pulse width that averages 50% of the O2 response time to be above the .44, and 50% below that. OK now with that said, your driving around at sea level +10'. Ya drive up to the maountains, and find your self at 10,000' above sea level. In trying to maintain this 14.7 the ecm has had to use a fudge factor. All of a sudden, you have the need for speed, and go to WOT. Which do you suppose would be most accurate, using a leaner correction value, or just a map value?. The WOT AFR is a target value for the ecm to try and acheive. Cheers Bruce -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: "Bruce Plecan" $Subject: Programming 101 $Date: Tue, 9 Jun 1998 11:50:03 -0400 Again, this material is for educational purposes, and relative to the programming 101 series of articles. If you have missed any of the 101 series please search the archives, and read every mention of 101. This is the math behind what is at the locations I've explained so far. Now you can be dangerous to your engine. Please remember make small changes, and check often what is going on inside your engine. ie. plug cuts, and plug readings. The is some material about tune-ups at 332 incoming, and if you have limited experience or an old pro if you have any questions, ASK them. As an extra bonus, some stuff that doesn't apply to the 747 is included.... Temps data byte * 191/255 - 40 (degrees C) Speeds 0-255MPH Revlimiters P4 - 983600/double data byte C3 - 25 * data byte (1227747 is a C-3) Idle RPM's single byte * 12.5 (0-3187) or (This is more common) single byte * 25 (0-6375) WOT AFR (percent change) 100 * data byte / 256 (This give 0-100%) PE data byte / 10 or (absolute AFR) (data byte - 128) / 128 * 100 ; (This gives -100 to 100%) Fuel Shut off 0-255MPH Checksum Add all bytes from CS start (usually start right after EXP byte) through the last byte. If sum is over FFFFh (65535), let it roll over and take only last two bytes. For example, if the sum of all bytes is 72,182 (0119F6h), drop the 01 at the start. You get 19F6h as the Checksum. Cooling Fans Temps are data byte * (191/255) - 40 (degrees C) MPH are 0-255 VE data byte/ 256 * 100) (This gives 0-100%) TPS Percent data byte/ 255 * 100 (This gives 0-100%) Knock Retard data byte * 45/ 256 (This gives 0-45 degrees) Knock Attach in mS data byte * .0225 Knock Recovery in mS data byte * 500 / 256 Spark Advance data byte * 90/256); (This give 0-90 degress) Final AFR from PE, WOT AFR and Injector Base 6553.6 * (PE rpm + PE temp +128)/256 * Injector constant Cheers Bruce -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: "Bruce Plecan" $Subject: Bench racing ecms Even if ya hate 101 please read $Date: Mon, 15 Jun 1998 17:16:51 -0400 I just put the hammer, and nails away from nailing the ecms down. Actually coffee cup hooks, and rubberbands. Got a 1'x2' sheet of particle board, 1/2" thick, and the ecms tied to that via the rubberbands. So some barrier strips and we get to fire up the soldering iron (well actually crimper). Here is what I have, and what I think I need, any thoughts comments appreciated. For a general representation of ecms, I have a 148, 165, 730, 747, plus some misc ones, for generating smoke.. If some one stumbles over a 749, or a flash prom type give me a holler, on the flash prom type would I need a set of ecm connectors also, unless they are the same as a 730 (three. one yellow two black). Also on the flash a v-8 version, please. I have the two+three ecm style connectors A dual trace o-scope, calibrated with matching sets of probes A frequency counter An OTC Scanner A Linder Scanner A 50% dwell frequency generator for VSS, hopefully this will work, and not have to bother with Buffer/amp, or DRAC.. A rpm signal generator, but have to work out an interface to module is a transformer necessary?. Ya think just a 1.2v DC pulse would fire the module?. Use a monstable 555 for the 1.2v, and then an adjustable astable for rpm?. Some 100 ohm resistors for like charcoal canister/ EGR solenoid loads. When doing ecm comparisons was going to use a common ground for the ecms, and one for the sensor grounds, once ecm to supply +5v for sensors. With as much talk as the O2 being handles as a switch crossing the .44 as a O2 sensor crossing count was thinking of a divide by rpm signal source for generating a 0-.8v for O2 input????.... Then use a divide by for a map voltage off the egr apply to get an AFR change with egr applied. Things I don't have a clue about yet: Generating a MAF (hot-wire, hot-foil) type of signal for the ecm. So far got a shop vac. for generating flow across an actual sensor. Was going to use pots for MAP/TPS/Coolant/IAT. Not worried about A/C apply or P/S stuff. Was going to try things with no IAC's, then if problems just dummy loads. If reoccurring problems then use some TB's with IACs 12v lawn tractor battery, and circuit breakers. Did I miss anything?. Cheers Bruce How hard would it be to come up with a Laptop program for an actual run/recording of vehicle?. Then run some opto-isolators for triggering rpm/vss/map/maf/iat/coolant temps for the bench stuff?. Actually would someone volunteer for doing this..... -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>-$From: garfield@pilgrimhouse.com $Subject: Re: Bench racing ecms Even if ya hate 101 please read $Date: Mon, 15 Jun 1998 16:48:36 -0700 On Mon, 15 Jun 1998 17:16:51 -0400, "Bruce Plecan" wrote: In the off chance I could help, I'm puzzled; yes, 1.2V pulse is fine to trigger a GM module, but your last question has me puzzled. I presume you're tryna mimic a dizzy/crank sensor feeding the ECU & module, so WHERE's the 1.2VDC pulse coming from? Presumably from your "rpm generator"? Yes? Then no I don't think you'll need anything more than that for the module, but the ECM's another story. Usually, the mag pickup goes to the module, and an ECM compatible IGN signal is derived from the module to signal the ECM. This I presume was the way things "began" at the "electronic IGN big bang", cuz they wanted the IGN system to be able to live on, in spite of the death of the ECM. Later, that was just a fond farewell, but anyway, normally the mag dizzy/crank sensor for the IGN goes to the module, and THEN back to the ECM. IF you're gonna get into the ECM's that expect both crank AND cam signals, then we'll have to reconnoiter again (not hard, just more), but for your present safari, yes, the falling edge of a 1.2VDC pulse will fire a GM module, and the GM module can then be used to produce the REF waveform back to the ECM (assuming still we're in GM-land). The GM ECM's appear to expect to take over IGN timing at about 300-600rpm (depending on #ofCyls), and take this REF signal as input for them to drive out to the module, their adv-timing corrected result to the signal EST on the IGN module, after raising BYPASS, so IF youNeye are still on the same page, this should all work fine. This is fine for Coolant/IAT, but for MAP & TPS, to really prove you're really able to handle transients (I know, this come's later; just offering some "future thot"), you could/should have a mechanical arm connected to a real TPS, and a vacuum pump connected to a real MAP. I have "extras" of both, just lemme know. I ALSO got an extra for this "hand-held vacuum pump" if you should want one later. Only thing, I GOT the extra by getting a better pump that models both vacuum AND boost/pressure, from them MituVac guys. They're ALL really pretty cheap, y'all, but get their latest one that provides BOOST and VAC simulation. But, Dr. Pelican, if you wanna play with NA eXperiments at first, lemme know and I'll get you the pump, gratis cum grano salis. BUT, yes, for static testing, pots will do just fino. Well, when the battery charger and the weight becomes a pain, you oughta consider a surplus PC computer power supply which has both +- 12V and +-5V, and for most of what you wanna do, would supply plenty of current without the obnoxious presence of a lead-acid battery and charger. Again, I got some big extra's if you wanna avail yerself of same. My pleasure. P.S. As lame as I may be concerning ECM/ECU/computerized engine management things, I think this "bench ECM racing thang" is a really cool idea! If it's perfected, it could lead to diy_efi guys building up their stuff on the bench and fairly completely being able to test it before putting it on the DUT ('device under test', in my trade; the REAL engine). THAT can't hep but be a good thang, Dr. Pelican!, not to mention the fact that it's a cool idear. Gar -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: kenkelly@lucent.com $Date: Mon, 15 Jun 1998 21:20:59 -0400 $Subject: Re: Bench racing ecms Even if ya hate 101 please read Bruce, the 94 to 97 LT1 PCM's have four connectors, not three. They are color coded white, blue, red, and black. Each is a 2 by 16 array of pins on 1/8th inch centers. looks like a computer floppy or IDE ribbon cable connector except slightly larger pin spacing. Each color connector has a different key position. For the VSS be advised that P4 use 30 Hz and 94 & up uses 50Hz. Ken Bruce Plecan wrote: CLIP -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: "Bruce Plecan" $Subject: Re: Bench racing ecms Even if ya hate 101 please read $Date: Tue, 16 Jun 1998 00:25:14 -0400 -----Original Message----- From: garfield@pilgrimhouse.com Subject: Re: Bench racing ecms Even if ya hate 101 please read I understand what you've said, and despite my language are on the same page. Ya still working on gm The GM ECM's Well how about a aquarium pump (diapharm type), and a variable bleed orifice?.. This connected to the MAP.... Sound better, and then OK a real TPS. I The following is a short summary of planned items; Initial stuff is comparing how the various ecms think. ie 32/128/256 prom series of ecm and how they handle temp corrections. Then MAF to MAP comparisions for a similiar series of engine conditions. How much actual difference there is. Then figuring out what AFR in a MAF ecm compare to VE of MAP. Then being able to have two similiar systems to run in back to back tests. Then be able to verify switch/table locations without having to run a car. Well my thinking was to eliminate any voltage corrections from the list of variables, so the 14.2 was a "must have", or is this an error. Seems like the PW corrections were a slim issue, but with the TBI ecm firing the injectors twice as often didn't want that to cloud the issue, or have a few variables accumulate to be an issue. This will go one of two ways, Cheers BPelican If this don't answer my questions I'll have to surgically remove my Cone Shaped Hat -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: garfield@pilgrimhouse.com $Subject: Re: Bench racing ecms Even if ya hate 101 please read $Date: Mon, 15 Jun 1998 22:49:19 -0700 On Tue, 16 Jun 1998 00:25:14 -0400, "Bruce Plecan" wrote: Yeah, you're right, I got carried away. You CAN use pots for all the variables, I s'pose. Except for the frequency modulated sensors. OK, OK, slow down, you're runnin circles round me. All I understand is you wanna "simulate" an engine environment. Sounds right to me. Geez, I dunno, is there really an adjustment to make if the ALT's not charging, and the +BAT's only at +12V? NAH, all them sensors are operating off regulated +5V, so you CAN use something other than an actual battery. Besides, without the ALT chargin the BAT, the battery voltage is close to 12V anyway. As long as a power supply can provide the current you need, might as well use one, instead of that battery. Lot easier, lighter, safer, less smelly; hey, and if you short most of the PC supplies out, they drop regulation, fold up their legs, and play dead till you cycle the power. Much nicer than a real tractor/auto battery, which normally loves to create fires and explosions if you short it real good. OK, I gotta coin here somwhere. Hmm. Nah, this sounds like a good idea. You could get REAL fancy and actually build a micro that pretends it's an engine to the ECM, just to test the ECM. Hey, it's a great idea. In the electronics industry, they use simulators all the time to make sure they've got things right before they actually build the thing for real. Much better to test ECM programming mods on the bench first, than on some poor unsuspecting road rat. B) Your idea of an engine simulator, at whatever level, is right smack in the stateOdeArt of electronics. Is that SCARY, or what? Gar -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $Date: Tue, 16 Jun 1998 01:11:53 -0600 $From: Shannen Durphey $Subject: Re: Bench racing ecms Even if ya hate 101 please read Bruce Plecan wrote: GM speed signal generator outputs 7VAC @ 60hz for 60mph. Same speed signal generator, when connected to pickup coil terms on module fires it quite well. Module sends reference pulse to ecm. Shannen -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $Date: Tue, 16 Jun 1998 08:04:46 -0500 (CDT) $From: "Gregory A. Parmer" $Subject: Re: Bench racing ecms I've got my '7747 running on the bench (wall actually) and if you plug in the real injectors the power supply doesn't handle things well (scanner freaks out and more). With dummy loads all is well. I'm using the supply but have a BAT for more realistic tests. Problem I'm having is getting the intended feedback. Surprisingly enough to me, PW seems more closely tied to MAP than TPS. On a real engine opening the TPS would reduce MAP and thus increase PW. On the bench MAP doesn't change (just because of TPS) and blipping the TPS generates only an increased PW during the blip..similar to an accel pump. Go figger! Another issue has been the dreaded O2. I'm wondering if it'll be OK to just fool the ECM into thinking it's always right...ie, lots of stoich crossings via a wave gen of some sort. That's next, but I haven't gotten there just yet. I'm open to better ideas. Even scarier is dat I'm just crazy enough to be trying this too! Albeit not really electronically simulated. -greg -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>- $From: "Bruce Plecan" $Subject: Injector cleaning Gar was right, again $Date: Tue, 16 Jun 1998 14:53:45 -0400 Got ahold of John of PE, and got his blessing on posting the Injector article. So I'll be scanning it, can I have a volunteer who will be willing to .zip it and post it to 332 incoming. Think it was 14 pages are so, and with my scanner is about 7 meg per page. Thanks to all for help with getting the scanner, and finding John, etc etc etc.... Cheers Bruce -<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>-