I'm using jSerialComm to interact with a USB-to-DMX adapter. The following code used to work in v2.10.2 and earlier versions:
while (Thread.currentThread().isAlive) {
port.setBreak()
Thread.sleep(0, 88000)
port.clearBreak()
Thread.sleep(0, 8000)
stream.write(0)
stream.write(data)
stream.flush()
Thread.sleep(23)
}
Starting with v2.10.3, the port.setBreak() call always takes between 509 and 512 milliseconds to complete, compared to less than one millisecond in the versions before. (Measured using measureTimeMillis from Kotlin's standard library.)
While the DMX protocol generally does not require very precise timing, ~500ms is definitely too long.