↩ reply to@Huggles way back when I did this sort of this with a PIC in assembly to talk to my TI-83 the delays were done with loops where you could count the instruction cycles the loop would take and convert that to real time. Given you need fairly precise short times a busy loop like this might be the way to go. Main challenge with Rust given it doesn’t have inline assembly is making sure the loop doesn’t get optimised away by the compiler.