Here's some info on the P0300 code:
Check Engine Light Code P0300
Random/Multiple Cylinder Misfire Detected
Possible Causes:
Fuel injectors, related wiring, sensors and computer issues
Running out of gas, or poor fuel quality
Evaporative emissions system (EVAP) concerns: fuel vapors leaking into engine
Incorrect Fuel Pressure
EGR system concerns: leaking EGR valve or restricted ports
Base engine concerns: low compression, valve train problems and timing issues
Ignition system concerns including, but not limited to:
Faulty spark plugs
Faulty coil or related wiring
Ignition module or related wiring issues
Ignition related sensor faults or wiring issues
Diagnostic Help:
To diagnose a P0300 trouble code we begin by checking for proper fuel and ignition system operation, and then follow up with the less likely causes listed above, such as EGR and EVAP system problems. New style coil on plug applications have a high failure rate, and can be concluded faulty by swapping to another cylinder and checking to see if the misfire moves to that cylinder. This is a quick check if a capable scan tool or oscilloscope is not available. Always make sure the basic maintenance is done first and that things such as the fuel filter, air filter, spark plugs and
spark plug wires are in good working order, as these are all possible candidates for a problem. If necessary, check for wiring and component concerns.