Michael,
Thank you again for your help with this. The code you suggested to disable the interrupts worked perfectly and I didn’t need to disable pserial. It’s odd, because I tried cli()/sei() and noInterrupts()/inturrupts() at the start/end of sendMute() and neither of those worked.
The overlay glitches a bit when the sendMute() is called, but it seems to seems to get back to decoding CC quickly, most of the time without skipping a word. Now I just have to dig into the keyword search algorithm and see what’s going wrong there, it only seems to work 80% of the time. Do you have any suggestions for the best way to do a keyword search? I’m concatenating each line into a string and then using String.indexOf() to see if it returns anything other than -1. Sometimes, it’s just not picking up a keyword (and not due to case sensitivity). I know that’s outside the scope of the Video Experimenter Shield, but if you have any thoughts/tips on it, I’d appreciate it. Don’t worry about it at all if you don’t.
Anyway thanks again for all your help,
Matt