Giant life changes update.
November 1, my girlfriend and I moved from Minneapolis to Phoenix so I could take a job in sales with Evolution Motorsports (
www.evoms.com). Both of us having grown up in Minnesota, this was a pretty big step.
I brought both of my cars with me on the 1900 mile drive down. My dad drove the GTI down, and I spent 26 hours over two days in the Coupe. It performed flawlessly, getting 23-27mpg depending on elevation and wind direction, doing basically 80mph the whole way. I got closed loop EGO working well before I left, and it worked really nicely keeping efficiency up and everything running well even at 7500ft through CO and NM.
Prior to leaving, the Coupe got lots of love to prepare it for the trip and new environment. I went from running 102 octane to 93 octane to 91 in the span of a month. 91 is such garbage fuel. I'm only running 250-260kPa, and bottoming out at 8-10deg of timing. I'm probably down 80-100hp over what I was doing with the 102. Nonetheless, I did a lot of work on the tune to get it safe and running well. Three days before we left MN, I was driving back from my parents' at about 9pm at night. It was in the 40s and the car was running awesome. I floored it from a slow roll in second gear and destroyed another 01A. I drove the rest of the way home, and put out a bat signal on Facebook around 10:30. By midnight I was back home with a sedan trans in the back of the car. My dad and I swapped it in the next day in about four hours. I had also melted one of the rubber-coated washers on my turbo coolant lines, so those got replaced and v-band gaskets were installed on the downpipe and exhaust connections to try and improve the fit and seal.
After the drive to Phoenix, I had to do quite a bit of work redoing my tune at low load. We were at about 600-700' in MN, and we're something like 1100-1300' here. Between the altitude and a difference in fuel used here, all of my super low load stuff went pig rich and had to be redone. I found I'm able to hit much lower manifold pressures under light throttle here, and everything approaching it is a bit richer. I was also under pressure by the emissions laws here, as if I register this car it will have to pass a sniffer test. Having worked so hard over so long to get the car running great in MN, I was not happy to have to go through that process again.
I made some quick adjustments to get the car smooth and driveable, but still struggled to get it as nice as I had it before. I had very large and very small basic map values very closed to each other, which just seemed like the really difficult way to be getting accurate fueling. Gears in my head started spinning. We're ID dealers at EVOMS, and recently started using the ID725s in our 996TT builds instead of the old Siemens 60lb. Once we had characterization data for the new injectors (which ID provides in detail), you plug it into the tune and the car figures it out and runs exactly the same as it did before. Fucking simple. I start looking through this data and some of the fantastic tech articles on the ID blog and website, and start thinking more and more about this...there has to be an easier way. And so began the NYE of discovery. It helped that my girlfriend was out of town and I had nothing else to do for like five days straight.
The first realization comes from Ford. They have a patent that describes an engine management technique. It posits that for a given RPM, air mass consumed is proportional to manifold pressure. The slope and intercept of the curve varies with RPM due to harmonics and such, but that basic relationship is linear.
The second realization was about how that pertains to the 034 fueling model, where you have a maximum MAP value, a main scaler, and an idle adjust. This is fueling based on the same principle, and it's genius. The slope of the air mass (and subsequently fuel mass) vs. manifold pressure relationship is the main scaler, and the intercept is the idle adjust. Dialing those values in sets up your fuelling for any manifold pressure the MAP sensor can see, and the basic map should allow you to tune this based on RPM characteristics in nice, vertical columns. You don't have to plot a VE map cell-by-cell to make sure your engine is appropriately fueled, unlike many standalone systems.
The first problem with this great model is that you have to bake your lambda value into the map as well. Admittedly this is quite easy, but it's something else that is much easier to understand and modify in proper OE engine management when it's in a separate map. The second problem is that you also have to bake quite a lot of injector behavior into it as well, which is totally wrong and makes the whole tuning process more difficult and less successful than it should be--and is the real area, thus far, that I've found standalone will never compare to proper OE management. I've currently got software for four or five <$4000 standalone systems on my PC, and I've found none of them model fueling behavior as nicely as GM/Ford/Motronic does.
Armed with that information and the 034 fueling formula (distilled down as pw = main scaler * (map/maxmap) + idle adj by thearchitect on Motorgeek), I came to realize that I could maybe develop a base tune using calculated data. My first step was to try and find ID-style characterization data for my 80lb Siemens injectors. I found my injectors are discontinued, and no public data existed. Without knowing fuel mass at a given pulsewidth, I couldn't know air mass. But since 034 does not use fuel or air mass anywhere, or directly a fuel mass:pulsewidth relationship, and using the air pressure:air mass relationship, I devised another plan.
With a reasonably good tune, with the car holding basically 1 lambda under 100kpa from idle to 4000rpm, I went and drove around logging for about 15 minutes. I took the data and stuck it in a pivot table. I looked at average injector pulsewidth in terms of manifold pressure lambda, and filtered out the data to be only looking at pulsewidths that delivered 1 lambda, since right there is a fixed 14.7:1 air mass:fuel mass ratio. When I plotted manifold pressure vs. pulsewidth, I got this:

Sure looks like an injector flow curve to me (see this for comparison:
http://injectordynamics.com/wp-content/ ... ID1600.gif)! To recap, that curve emulates a fuel mass vs. pulsewidth curve like you'd get from ID, only with different units. There are fixed relationships between pulsewidth vs. fuel mass (dictated by the injector behavior at a given fuel pressure and voltage), fuel mass vs. air mass (14.7:1), and air mass vs. air pressure (unknown, but linear relationship) that allows that curve to be used here. The key thing to note is that below about 1.8ms, the fuel flow from the injector changes constantly with reducing pulsewidth, and changes radically below about 1.5ms. This phenomenon is why it is tricky to tune small engines with large injectors at low pulsewidths with oversimplified injector models and limited map resolution.
Armed with that chart, I started postulating a couple of different ideas on how to tune the car. I transposed the axes to be pulsewidth vs. map, and generated a formula that would use the main scaler and idle adjust terms that 034 uses.
Series 1 is pulsewidth as logged, including the low load 1 lambda pulsewidths plus non-lambda-normalized full load pulsewidths. Full load is running .78 lambda.
Series 2 is a calculated fuel curve without tuning based on a user-input main scaler and idle adjust.
The thin black line is a line-of-best-fit generated on the logged injector data by ExcelMy first trial was to try tuning the car using the line of best fit. In theory, this should've gotten me the closest and generated the smallest scaler values over the entire map. I believe this gave me a 17-18ms main scaler, and a -.325 idle adjust. It required a lot of fine tuning in all parts of the map, since trying to average the whole map meant nothing was close. Once I had the map scaled in portions, under certain loads the car drove really, really smoothly. Like from 80-150kpa were very consistent and easy to tune...no coincidence as if you look at the chart above, the injector slope parallels the line of best fit in that range. Above and below that, the error got quite high. I still had to run 1.2 map values at full throttle, which was fine because it was linear and there are lots of cells to play with up there. Low load was very difficult, as I ended up cruising in an area where there was a .3 gradient between the 59 and 34kpa cells...not enough resolution to get it right, the car was either at .9 lambda or 1.1 lambda. I canned that theory.
The next theory I rolled with, and ended up pursing fully. This is displayed by the red line on the chart. I essentially set up my main scaler and idle adjust to most closely follow the 'low slope' of the injector curve. This gave me a 12.1ms main scaler and .510ms idle adjust. I have achieved reasonably good results with this. The car cruises great at a consistent 1 lambda up to 140kpa. It idles at a rock solid 1 lambda, varying .04 lambda for slight variations in load or RPM. My basic map is around .8 at idle, varies from .87 to .94 at various loads around cruise, and doesn't go very rich or lean for most spots. There are a few load/RPM bands where moderate 80-100kpa acceleration will result in swings from .93-1.07 lambda momentarily, but with the resolution I have I cannot get rid of them entirely. The car drives smooth and there are no obvious sags in power...trying to really fix those spots are exercises in optimization of efficiency, power, and emissions.
Ultimately, it's still a poor substitute for a real injector model. The Ford characterization would be the simplest to build-in:
http://injectordynamics.com/articles/fo ... erization/. I believe I've determined the terms and order-of-operations that would have to be used to get the twin slopes and breakpoint working. Not sure if it will ever happen, but it would make this all so much simpler.
Hope this was helpful and provides guidance for others down the road.
Sam