I have a patch where 48 bytes are received over RS232 (USB) and through a S+H node go to a very simple shader where the value of the byte adds colour to 48 textures.
The microcontroller that sends out the data sends out 48 bytes then pauses for 10ms which signals the end of the transmission, on the next transmission the RS232 buffer is cleared so there’s never more than 48 bytes in the buffer.
This all works fine as long as the shader is disabled, as soon as it’s enabled (even if the serial data isn’t connected to it) the serial buffer just fills with thousands of values and everything grinds to a halt. It stops seeing that 10ms break as the end of the transmission and just keeps filling the buffer. With the shader enabled I need about a 60ms break for the serial node to correctly register the end of the transmission which is way too slow for my purposes.
CPU usage is around 10% so it’s not a resource problem and the problem exists even if the renderer is minimised.
Thanks in advance