Obviously (well, it should be obvious), the first thing you need to determine is whether the external device is actually transmitting the junk, or if there’s a bug in your software that’s causing the junk to appear.
How, exactly, did you obtain those traces?
Is the “junk” always at the end of the “good” data like that?
It’s not a limitation of the Q26 buffer - it’s just how FCM works.
Maybe there’s a bug in your software implementation?
Maybe there’s a bug or fault in your hardware - eg, are you sure that you have the levels correct…?
Are you sure that the external device’s baud rate is absolutely correct?
FCM just delivers to your application whatever it receives - so, if you get junk, that’s what was received…