Please read the following introduction if you have not done so already:
topic5320.htmlThis how-to will teach you how to select parameters for logging, how to drive when you're logging.
1) Less is more. Our ECUs support logging dozens of parameters. But, the more parameters you log, the less information you end up with. The problem is that the current Subaru ECUs only deliver log data at only 4800 bits per second. This is adequate, but only just barely. If you log 10 parameters, you can expect to get a row of parameters every 200 milliseconds or so - about 5 rows of data per second. For most purposes, that's enough to give a pretty good idea of what's going on. If you log 50 parameters, you'll only get 1 row per second - imagine doing a drag race and only finding out what your boost was at 12 moments during the race... that's not going to be useful.
Another side effect of the low data rate is that even within a single row of information, not all of the parameters were logged at the same time. When logging 10 parameters, the last parameter in the row might have been sampled 200 milliseconds after the first parameter, which again is not too bad. But if you're logging 50 parameters, one row of data might include information from before, during, and after a shift.
So, choose parameters carefully. It's OK to log a dozen if you're only looking for a rough idea of how healthy all aspects of your tune are, but it might be useful to log only a couple parameters if you're very interested in one specific aspect of your tune.
Many of the parameters are available in 1-byte, 2-byte, and 4-byte versions. I generally prefer the 2-byte versions. One byte doesn't always provide enough precision, two provides plenty, and four is a waste of precious bandwidth.
2) Log with a purpose.The first step of data logging is to decide what you want to accomplish. This goal will determine which parameters you log, and how you should drive to get the most useful information.
Most of the time, the purpose of logging is just to make sure that the tune is basically sane. You'll want to know how much knock you're getting, and under what conditions; whether your actual AFR is what it should be (or under what conditions it isn't); whether your actual boost is what it should be; and how much MAF or load you're getting.
3) Fundamentals In almost all cases, you're going to want these three things in your log:
* Engine Speed (revolutions per minute)
* Load (grams per revolution)
* Throttle Plate Angle (degrees)
These three things will let you know which cells in the timing, fueling, or boost control maps need to be adjusted if you find issues with your timing, fueling, or boost control. You can often guess what you were doing with the throttle just by looking at load and RPM, but having the throttle logged will remove some of the guesswork, and also make it easier to re-create specific scenarios so that you can verify whether changes to your tune have had the intended effects.
4) Fuel Injector Duty Cycle, and Mass Air Flow Sensor VoltageThese are things you don't want to log all the time, but you do want to log them at least once to make sure you're not exceeding the limits of your MAF sensor and fuel injectors. Once you have proven that you're well within the limits, you can stop logging them - at least until you make some changes that could potentially cause you to require more air flow, or more fuel flow. In other words, changes that make more power.
If your fuel injectors are not large enough, you risk leaning out when running at full power. The "fuel injector duty cycle" is approximately equal to the percentage of the injector's total flow capacity that is being used, so you should find out how much of that capacity you're using before you make any changes that would require more fuel (more power).
If your MAF sensor housing is not large enough, your ECU will not be able to adequately measure the incoming air flow, which means it will not be able to inject the correct amount of fuel, which means you'll end up with lean AFRs, which means you'll get knock, which means you're engine is toast.
If you do reach these limits, you'll probably want to know under what conditions you reached them, so you should log the fundamentals at the same time:
* Engine Speed
* Fuel Injector Duty Cycle
* Load
* Manifold Relative Sea Level Pressure (2-byte)**
* Mass Air Flow
* Mass Air Flow Sensor Voltage
* Throttle Plate Angle
Opinions differ about what values are acceptable for injector duty. Some people are satisfied with values at or slightly above 100% (the parameter isn't perfectly accurate, so it can go above 100%). Other people (myself included) prefer to see it at 90% or lower, to provide a margin of safety.
The MAF sensor supplies a voltage signal that ranges from 0v (no air flow) to v5 (the maximum air flow it can measure). If you're getting over 4.9v, it's time to get a larger MAF housing.
Once you're certain that your injectors and MAF housing are large enough for your setup, you can stop logging these parameters unless you have changed your setup (installed a larger turbo, for example), or if you are investigating strange AFRs.
5) Knock detectionKnock is a leading cause of death for modified Subarus, so this is one of the most crucial aspects of your engine's behavior.
For a nice short summary of the ECU's knock control stragegy, see section 3 of this how-to:
topic5371.htmlFor a thorough explanation of the ECU's knock control strategy, see this thread:
topic1840.htmlIf want to know how much knock you're getting, and how the ECU is responding to that knock, you should log the following parameters:
* Ignition Advance Multiplier
* Fine Learning Knock Correction
* Feedback Knock Correction
* Engine Speed (revolutions per minute)
* Load (grams per revolution)
* Throttle Plate Angle (degrees)
Logging the first three parameters alone will show you how much you're knocking, but that information by itself is not useful. You can't make changes to your tune to fix the problem unless you know what under what RPM and Load the knock occurred.
Also, note that during rapid changes in load (which usually means, rapid changes in throttle angle), it may be impossible to tell from the logs exactly what RPM and load you were at when the knock occurred. So, when you're looking at the log data, regard those parameters with suspicion under those circumstances.
If you care about how much knock the engine is producing, and you don't care which strategy the engine is using to cope with knock, and if the Knock Sum parameter can be logged for your ECU, then you may want to log these parameters instead:
* Knock Sum
* Engine Speed (revolutions per minute)
* Load (grams per revolution)
* Throttle Plate Angle (degrees) (again, this is optional but helpful)
This is generally the most useful way to log for knock. Unfortunately, this approach doesn't work with all Subaru ECUs. Some ECUs don't use Knock Sum internally, and for some ECUs the Knock Sum parameter just hasn't been located yet. So even though you may not be specifically interested in which knock method the ECU is using, you might just need to familiarize yourself with knock control strategy anyhow, so that you can interpret the IAM, FLKC, and FBKC in your logs.
6) General Purpose Log ProfileGenerally speaking, we just want to know that we're not knocking much, and that our actual boost and AFR are close to what they should be. Following are the parameters that I use for 90% of my logging sessions:
* Engine Load (2-byte)**
* Engine Speed
* Ignition Total Timing
* Intake Air Temperature (see note below)
* Knock Sum*
* Manifold Relative Sea Level Pressure (2-byte)**
* Mass Airflow
* Primary Open Loop Map Enrichment (2-byte)**
* Primary Wastegate Duty Cycle
* Target Boost (2-byte)**
* Throttle Opening Angle
* Wideband O2
If the Knock Sum parameter isn't available for your ECU, substitute IAM, FLKC, and FBKC as described above.
Some people prefer not to log target boost, Primary Open Loop Map Enrichment (aka Target AFR), or ignition timing, because they can be looked up from the tables in the tune. However I feel like I have enough logging resolution with this many parameters, and when it comes time to analyze the log I prefer to have the information right there in the log. It just makes log analysis quicker and easier. (Perhaps if I used Airboy's spreadsheet more I would feel less need to include those parameters... you decide.)
Intake air temperature is optional. You should log it during a few pulls to find out how much it moves around. If it's predictable, you can just log it before and after each logging session, and don't bother logging it during pulls (this may be the case if you have a good cold air intake). If your IAT moves around a lot, you should include it in most of your profiles (this may be the case if you have a short-ram intake).
If you do not have a wideband O2 sensor, you must be aware of the shortcomings of the stock sensors, so that you don't read too much into the values they report. On Subarus with 16-bit ECUs, the stock O2 sensor is very inaccurate when it isn't reading very close to 14.7. On Subraus with 32-bit ECUs, the stock O2 sensor is accurate over a wider range, but it won't read lower than 11.1, and the exhaust backpressure in the up-pipe (where the sensor is located) skews the readings when you're in boost. If you're serious about logging, or even just casual about tuning, you really should get a wideband.
(It's fairly common for a novice tuner to post a log showing a long series of 11.1 values in the AFR column, while saying something like, "my AFRs are perfect, but can anyone tell me about..." In fact, that fellow's AFRs are completely unknown because they're lower than what the stock sensor will ever report.)
7) Boost ControlPerhaps you have done some sanity-check logging, and found that you're overshooting (or undershooting) your boost targets. At this point you can remove the timing and target-AFR parameter from the general-purpose log profile, and log this batch instead:
* Engine Load (2-byte)
* Engine Speed
* Manifold Relative Sea Level Pressure (2-byte)**
* Primary Wastegate Duty Cycle
* Target Boost (2-byte)**
* Throttle Opening Angle
* Turbo Dynamics Proportional (2-byte)
* Turbo Dynamics Integral (2-byte)
Some people prefer to log Initial Wastegate Duty Cycle as well. I prefer to look it up from the tables in the tune if I need it. Generally I don't need it at all though - the other parameters tell me whether I should add to, or remove from, the value in whatever cell the Engine Speed and Throttle Angle parameters point to. The actual value isn't that important, and I'll find it when I go to make those adjustments anyway.
If you have issues with both knock and boost control, consider taking out a couple degrees of timing and verifying that your knock problem is solved. Then you can remove the knock parameters to get more/better/faster data while you focus on knock control.
8) Closed Loop FuelingIn closed loop fueling, the ECU will be constantly adjusting fuel delivery in an attempt to maintain a constant 14.7 AFR. This is generally going to be what's happening when you're idling and cruising around - not accelerating much, and definitely not in boost. When you're in boost, the ECU switches to open loop fueling.
It's essential to get your closed loop AFRs as close to 14.7 as possible with a minimal amount of compensation from the ECU. You can get a rough idea of how good your closed loop fueling is by looking at the AF Learning #1 A, B, C, and D parameters (also E, if your ECU supports it). (These parameters are also known as "fuel trims.") If these are all within 5%, you're in good shape. If they're not, you need to adjust the MAF scaling and/or injector settings (latency and flow scaling) to solve that problem.
It is not sufficient to log your air-fuel ratio. It's just as useful (perhaps more) to log AF Correction #1, because this tells you what the ECU is doing to try to hold 14.7:1 AFRs. You'll notice that the AFR jumps around a lot in closed loops. Air flow measurement and fuel delivery are both rather noisy at low airflow and low fuel flow. Because all of this data is so noisy, you'll need to log quite a bit of it, and use scatter plots in Excel to make sense of it.
* AF Correction #1
* AFR (stock O2 sensor is sufficient for this, wideband is still a bit better)
* Engine Speed
* Throttle plate angle
* Load (2-byte)
* Mass Air Flow (grams per second)
* Mass Air Flow Sensor voltage
* OL / CL status (this value will be 8 or 10 depending on the fueling mode)
When logging closed loop fueling, do your best to maintain a constant speed. If your speed is increasing or decreasing a lot, this adds more noise to already-noisy data. Also note that if you accelerate too briskly, the ECU will switch to open loop, which is not what you want. Also, keep an eye on MAF and OL/CL; you will find that the ECU switches to open loop somewhere around 65 grams per second, no matter how gently you accelerate.
In order to get a lot of data in the 40 g/s to 65 g/s range, it really helps a lot to have a long steep hill to drive up. This allow you to drive at high airflow without accelerating into the open-loop mode after just a second or two, which is generally going to happen when you're on level ground.
9) Open Loop FuelingOpen loop fueling is the mode the ECU uses when you're in boost. In this mode, the ECU doesn't look at the O2 sensor signal, it just looks at MAF and squirts the amount of fuel that it thinks will provide the desired AFR. Of course this only works if the MAF signal is accurate and the injector scaling is accurate (injector latency settings are almost irrelevant however).
* AFR (a wideband O2 sensor is required for this)
* Engine Speed
* Load (2-byte)
* Mass Air Flow
* Primary Open Loop Fuel Table (read as: target AFR)
* Throttle Plate Angle
When reviewing the logs, I find it helpful to create an "AFR Error" column in Excel, where the values are "measured AFR / target AFR." When that's off by more than a couple percent, I make changes to the fuel table (in the cell indicated by the RPM and load coordinates) or to the MAF scaling. MAF scaling is generally used when the same AFR error is present for all data rows at the same MAF. The fuel table is used when a wide range of AFR error values are seen for the same MAF value (which seems to be common when using bigger injectors).
When logging open loop fueling, you will generally need to do pulls (see below for more information about how to drive pulls). It's pretty easy to do this at full throttle, however to ensure that your whole fuel table is accurate it's wise to do part-throttle pulls as well. Also note that pulls in higher gears can be useful here - you'll accelerate gradually, which is good for logging resolution, and you'll hit high load cells, although not at high RPM.
10) Road DynoWhen logging data for later use with a road dyno spreadsheet, you want to log very few parameters so that you can get the most resolution possible:
* Engine speed (this is the primary input to most road-dyno software)
* Vehicle speed (this will help you determine what gear the pull was done in)
* Throttle plate angle (so you can easily see where the pull starts and stops.
Road dyno logs should be done as pulls - see below for instructions.
11) ContextSome parameters will not change much during a logging session, but may be useful to put log data in context later. I often log this batch before and/or after a logging session:
* AF Learning #1 A
* AF Learning #1 B
* AF Learning #1 C
* AF Learning #1 D (see notes below)
* AF Learning #1 E (see notes below)
* Atmospheric Pressure
* Coolant temperature
* Ignition advance multipler (see notes below)
* Intake air temperature
Most Subarus support only AF Learning A, B, C, and D. Some support E as well. The only one that really matters is the last one (D or E) because it affects your fueling in open loop. However, for logging ambient conditions, resolution isn't important, so I log the whole set just out of curiosity. If they're way off from their usual values, that may indicate a vacuum leak or other mechanical problem that should be sorted out before doing any pulls.
I always expect IAM to be at maximum (1.0, for those of us with 32-bit ECUs; 16, for those of us with 16-bit ECUs). If it's not 1.0, then I have a knock problem, and I will want to fix that before I do any hard driving. Logging usually means driving hard. Not always, but usually.
If coolant temperature is below 180, the car isn't warmed up yet, so I don't want to start logging yet. There are compensation tables that are based on coolant temperature and if it's not yet up to the normal operating range, the data logs may not really be valid. If the coolant is over 200 I'd probably want to let the car cool off before logging - but I've never seen that happen yet except after sitting still for a while, and the car cools ones it's had some air pushed through the radiator.
Make sure the car is moving when you log IAT - if you log it while parked, it will probably be unreasonably high. Again, if your IAT moves around a lot during a pull, you should log it during pulls rather than just here. For my car, it's pretty stable during pulls so I just log it between pulls.
12) Logging "pulls"Most of the logs you'll find on this site are "pulls." We log pulls because they show us how the engine behaves when it's making peak power, across a broad RPM range. Typically a pull looks like this:
* Putt along at 2000 RPM or so
* Start the logger.
* Go to 100% throttle
* Let the revs climb up, until they almost reach redline.
* Lift the throttle.
* Stop the logger.
Of course you can log multiple pulls without stopping the logger, and just look at the segment of the file you're interested in later, but it's often more convenient to create a short log file for each pull.
Pulls in 1st or 2nd gear tend to progress so rapidly that not much information can be gained from them. Also, it is likely that you will not reach peak boost in these gears, partly because there isn't time for the turbo to spool up, and partly because in these gears the engine doesn't necessarily get to work hard enough to raise exhaust gas temperatures sufficiently.
So, pulls are typically done in third gear. Redline in 3rd gear will put you at illegal speeds in most juridictions, so these are best done off public roads. If you get into an accident while doing this, someone will die. We don't want to read about your funeral, or (if you survive) your conviction.
Note that it's also a good idea to do pulls starting from higher RPM - 3000, 4000, 5000, even 6000. Accelerate very gradually to the target RPM, maintain that speed as you turn on the logger, then go to full throttle until you approach redline. You will find that the turbocharger behaves differently in these circumstances, and you may find other quirks as well.
Note that it's also a good idea to do some pulls at half-throttle, and three-quarters, and so on. Full throttle is great, but you want the engine to be happy in all conditions, so you should log a variety of scenarios to make sure there are no surprises waiting for you.