Turns out to have been the crank speed sensor. I got it to throw up an "Implausible signal" fault code by revving the engine fairly aggressively a few times with the engine out of gear. I'm sure my neighbours understand.
New sensor and fitting worked out to be around £200.