Hi guys I have a 2005 300C. I noticed a misfire going down the highway at about 55 MPH. Stopped to get gas took off and car studdered alot. Made it home fine. Next day made a 30 mile drive no issues. No check engine light yet. Went back home and car misfired down the highway very badly pulled over took off again barely got going so many misfires happening. check engine light came on along with ESP BAS. What the heck is that. Made it home in a limp mode I guess. Check engine codes are
P0300-Random misfire detected
P0016-Crankshaft Position-Camshaft PositionCorrelation-Bank 1 sensor A
P0339-Crankshaft Position SensorA circuit Intermittent

I changed out all spark plugs today and disconnected battery to get engine light off. . Took car for a ride and misfire happened again. No engine light yet but am sure it will pop back on. I was thinking on looking into changing both crank and cam sensors next . Car has 140,000 miles. I hate to take it in and get raped. I like doing things myself when ever I can to save cash. Any opinions would be appreciated. Thanks

phone 2016 083.jpg