• Tried analogWrite() in sequence - but I can't seem to get a consistent reading on my oscilloscope. I'm guessing this is because it's an async function call, and so doesn't wait for one call to finish before executing the next (which was why digitalPulse was so appealing), so I'd be back to using timeout between calls for analogWrite() which then loses the microsecond accuracy.

About