Subaru EJ engines that accumulate a lot of miles often seem to get a problem where the knock sensor false-positives on the sound of piston slap and retards timings by ridiculous amounts for no reason. It's usually a sub-2000 RPM high-load thing, so really annoying for automatic transmissions, but not such a big a deal for manuals. A common fix is to relocate the knock sensor by a few inches to the transmission housing (which doesn't tend to cause problems).
My EJ223 ('99 Impreza OBS) with 275,000 miles has this problem in a very bad way. I've relocated the sensor (and it helped), but on a bad day, ~2/3rds torque is still about the max, regardless of RPM. An OBD-II reader confirms timings are to blame; full throttle can in some conditions drop timings 30 degrees behind where they're supposed to be. If I unplug the knock sensor, everything is awesome (I have an unfortunate amount of experience with a knock-prone EJ25D, and am sure I would know if things weren't awesome).
The thing that keeps bugging me is that good days and bad days don't happen in quite the pattern I'd expect. What I'd expect is that the problem should exist when the engine is cold (more about oil temp and IAT) and disappear when the pistons get hot (since they expand to fill up more of the gap). Instead, the problem stays gone for a while after a good run up to temp. For instance, the engine was in top form for all parts of a few 10-minute drives around town last week, because it had spent a few hours on the highway two days earlier. Having sat for a week after that, it's now starting to have trouble again. This would make some sense as far as burning off deposits in the cylinders -> reducing compression and wall temps -> eliminating knock, except that knock isn't the problem, and I'm at a loss to draw a line between that behavior and piston slap. FWIW, the amount of audible piston slap does vary as expected with performance.
As far as an actual solution, unplugging the knock sensor seems to be a pretty good one. I know what abuse that EJ25D tanked (and was still tanking 100,000 miles later
) and don't find the idea concerning (I've got ears well-tuned to do the sensor's job if need be), but I'm still not entirely comfortable doing that without running 89+ octane, so it's effectively a bit cheaper to run with the glitch still in effect.
So, more out of curiosity than any practical concern, does anyone have any ideas on what the root cause of the weird good day / bad day pattern might be?