interesting - OK to worst comes to worst triggers can be posthoc labelled with their corresponding condition in the analysis - but I know that is not what we want ideally.
Looking on the actiview support site I see that someone had a similar issue and they fixed it using the a write byte approach rather than a write integer method Trigger Codes Missing Sporadically - BioSemi.nl
In this post @Michael translates a trigger code to bytes Sending markers to EEG through serial port - #2 by Michael could we try that?
So it would be something like:
port.write(trigger.to_bytes(length = 1, byteorder = 'little'))