Я читал про очистку буфера, и все пишут, что этого не требуется. Тут ещё дело в том, что для смены режима работы порта (мастер или слейв) мне предварительно приходится подавать сигнал на устройство, а потом его сбивать после отправки данных
не рекомендую писать напрямую в буфер если ты кросплатформено делает на линуксах. там есть код доп для никсов систем через очеред и небольшой луп по типу обработалась запись или нет. сам на это не давно попал