On a Subaru 2013 since 70,000 miles I've had the fun P0300 code activated and my check engine light on, cruise and traction control disabled.
I do not have any other misfire codes being shown(unlike other questions) and sometimes the misfires occur so infrequently that the error code is disabled, then randomly comes back. Their is no noticeable difference in the performance or drive-ability of the vehicle. Since it's only annoyed me and has not significantly affected the drive-ability of the vehicle, I've been ignoring it for 30,000 some miles. It's doesn't seem to be getting any better or worse in that period. Periodically, I've tried various things to get to the root of the problem. They are as follows(first the basics, either it's a issue with firing, fuel, compression, air right):
Fuel - Switched to various brands(always premium), no affect.
Fuel - Put a few "Fuel Injector Cleaning" products in the gas, no affect.
Fuel - Tested pressure, I think... it's right, hard to figure out exactly what it should be in the manual, but here's my numbers(it's definitely got steady pressure):
Off: 0
Pump On: 35-36
Car off after 2 min(s): 32
Car on after 10 min(s): 40
Idle: 32
Rev Quick: 30-44
Rev Slow: 32
Fuel Monitor Disconnected: 46-48
Air - Replaced filter, no effect.
Air - Vacuum Test, again I think this is right, hard to find a good line to test but here's my results:
Idle 46-47 (Occasionally Drops Below 44)
Accelerating: 10-50
Compression - (I have not tested the compression yet, two of the spark plugs on this car are tough as heck to get at, is this the next step?)
Electrical - Checked the spark plugs(the two easy ones), they we're all 4 replaced at 40,000 so at 70,000 there still pretty new, in fact on inspection they look brand new, the gap is correct, they literally look brand new out of the box.
Electrical - Tested the battery, looks good, car almost always starts immediately, even in very cold weather.
Electrical - Reset computer, no effect.
Electrical - So then I started to do some more research, it seems I'm not the first person to have this issue with subi's, This is just great.... Apparently they've had issues with the main wiring harness. In fact on new harnesses they've moved the ground point. So I could order a new one and take my whole car apart to install it :(, It's cold where I live so I decided not to do that or spend $1,500 for the dealership to do it, instead I tried the fix outlined in this post. Unfortunately there was no affect, that doesn't seem to have been the issue, or at least if it was the fix suggested didn't fix it.
Electrical - I bought a cool little "ECU Scanner", and a pro version of some app that allows me to access the hidden parameters of the subi's computer. Specifically there's a little memory address that records when the crankshaft position sensor logs a misfire. The data returned was interesting.
(Update 1) I now have a cool graph of the results. (I've divided the RPM's by 1000 for readability)
The misfires mostly only occur at idle, never when the car is above 1000rpm, think stop lights.
They occur equally in all cylinders, which explains why I only get the P0300 and no codes for specific cylinders, they don't occur at the same time, but typically in quick succession to each other, each cylinder misfiring in a random intermittent manner at idle.
(Correction)When the misfires are occurring, there is slight hesitation in the idle, like the engine is slowing ever so slightly.
So, I'm kinda stumped on this one, should I just move to the compression test? I have a good understand of what is going on, and when it's going on, but not the why it's going on, feels like I'm throwing things against a wall until they stick. Is there a better way to do this?
(Update 1) - Replacing the downstream O2 sensor has been suggested. I might try that. I'll also try to get some data such as air fuel ratio at idle/drive. I've also wondered if it's the Crankshaft Position Sensor, I could replace that easily too. If I do any of these things I'll update my post with the results.
(Update 2) - It's been very cold so I haven't done much, but as suggested by @SteveRacer and @Ben I've gathered freeze frame information and posted it below:
Freeze Frame DTC: P0300
Fuel System Status: Closed loop, using oxygen sensor feedback to determine fuel mix
Calculated engine load value: 27.84%
Engine coolant temperature: 72C
Short term fuel % trim Bank 1: -1.5625%
Long term fuel % trim - Bank 1: -3.125%
Intake manifold absolute pressure: 37 kPa
Engine RPM: 745 rpm
Vehicle Speed: 0km/h
Timing advance: 16
Intake air temperature: -3 C
MAF air flow rate: 3.94 g/sec
Throttle position: 14%
Command secondary air status: From the outside atmosphere or off
Oxygen sensors present
Oxygen sensor 2 Bank 1 Voltage: 0.905 V
Oxygen sensor 2 Bank 1 Short term fuel trim: 0 %
ODB standards this vehicle conforms to: OBD and OBD-II
Oxygen sensors present
Run time since engine start: 0.00:05:02
Commanded evaporative purge: 0 %
Fuel level input: 41.5 l
Barametric Pressure: 98 kPa
Control module voltage: 14.395 V
Absolute load value: 21.96 %
Fuel/Air commanded equivalence ratio: 14.37
Relative throttle position: 2%
Ambient air temperature: -8 C
Absolute throttle position B: 30 %
Absolute pedal position D: 12 %
Absolute pedal position E: 13 %
Command throttle actuator: 0 %