2002 OBDII codes
You probably have an intermittent misfire and haven't noticed it. You need to hookup a scanner that has misfire counts to see what cylinde(s) are missing.
Same thing with the knock sensor code. I think that one will cause the ECU to pull timing a bit or something if it detects knocking. There's a way to check the knock sensors with dvom and striking the engine block with a large screwdriver and hammer. I found a video and it to my truck a while back. Either knock sensors and/or wiring harness are usually the problem.






