This engine has variable valve timing, so it can look like the timing has jumped. They usually use an advance mechanism that operates on pressurized engine oil. Logic would suggest they can stick.
Code P01346 refers to "variable valve timing sensor circuit range/performance (bank 1)". That code could be caused by a defective sensor, but it is just as likely to be caused by a wiring or connector terminal problem.
Code P0300 refers to a random cylinder misfire. The others refer to specific cylinder misfires. The last digit indicates which cylinders. With so many misfire codes, I would start with new spark plugs. If you keep getting misfire codes for the same cylinders, swap the ignition coils from those cylinders with those that are not setting codes. Erase the fault codes, then see if misfire codes set for the same cylinders or the ones you moved the suspect coils to.
Sunday, March 5th, 2017 AT 4:23 PM