did some exploratory testing with d059926 build yesterday, tt with iiBackpack, just friends | ansible | 2x TXi | 4x TXo on i2c bus, ansible on your latest firmware as well. was able to get it to freeze easily with a bunch of i2c related commands in 10ms metro script.
this was just from quick testing, so need to test more in a systematic manner, but it looks like doing any heavy i2c stuff in metro script is fine until i enable triggers, and when this happens they don’t even need to be audio rate.
i gotta say overall the UI seems fairly responsive even with audio rate triggers and a super quick metro script, so perhaps having keyboard/screen on their own priority is not really needed, but i’d like to play with some ideas.
@sam - i see that you since also changed timers_pause to mask UI_IRQ_PRIORITY - curious about this change… i’ve got some ideas i want to try as well once i set up the toolchain (one of them being - maybe use a mutex to make event code thread safe instead of disabling interrupts).
oh, and all the v2 changes are awesome!