Sam,
[quote user="Sam Swerdlow"]115.2K Baud and 9 bits[/quote]
9 might be a setup value but it is not a hardware value. A UART will always have at least 1 start bit, 8 data bits, and 1 stop bit. If you have added parity or a second stop bit, that will increase it past the minimum 10.
Can you paste or attach a logic analyzer or scope picture showing multiple data bytes on the Rx line and your "other pin" that shows the 500us polling period? For me to help you debug this remotely, which I will do, I need more than "looks normal" to close the loop and find a cause/solution.
To understand the UART peripheral's operation, it will help to setup a DSP polling loop only for reading the UART (not the DMA) and do not use the DMA. We can see how often you get data in that case to get a solid line to start from.
Be patient and precise with me and we can do this. I know remote is tough to keep the remote side informed, but I will be counting on you to do that.
Regards,
RandyP