ja, genau so mit extra Threads mache ich es auch beim Pi (mit pthread) - aber pthread gibt es nicht bei BCB, nur TThread, das aber extremst viel komplizierter ist, und da bin ich mir noch nicht einmal sicher, ob die ComPort-Funktionen thread- / dataracing-safe sind (faktisch laufen sie ja bereits autonom und parallelisiert in einem eigenen Thread).
In jedem Falle führen USB-Unterbrechungen zu ComPort Errors und Exceptions, die ich nicht händeln kann, und die bislang einen Wiederaufbau verhindern.

Wie auch immer, theoretisch kann ich die Ideen von dir und Siro schon befürworten - nur: wie programmiert man sie genau?