Crank position sensor. Either the connection is bad or the sensor it bad is my opinion. Unfortunately it's not so easy to get to. You have to take the top and bottom timing belt cover off as if you're changing the timing belt to get it out, or even to test it. It's a good excuse to change the timing belt if need be.