I have an intermitent check engine lite that reads code 43. The lite comes on mostly at idle or low engine load. It is not when the knock sensor should be reading anything. I erase the code and it may stay gone for a month or a week or a day. All tests show no problem. What's my problem?