Crankshaft angle

I highly recommend against this especially if it will be on the road. The Arduino was not designed for this type of application software wise, mechanically and electronically. You have a bunch of interrupt things happening in the background that will cause timing jitter.

I do not see the missing tooth on your scope display.

This is a common method for determining crank position.