I have linked a desktop PC (COM1) to a BitsyXb (COM2) and written a test application that sends a file from the desktop to the Bitsy. The test file is roughly 9k. The port settings are 115.2kbps, 8N1. I cannot use hardware handshaking because the final implementation (embedded solution) will not support it. The desktop reads the entire file into memory and then sits in a tight loop, sending 64 bytes at a time until the entire file is written. On the receiving end (Bitsy), I sit in a tight loop reading from the serial port directly into a memory buffer. The Bitsy seems to lose 10-100 bytes every 2000 (+/- 50) read.
We are handeling this question directly with the customer, however, some suggestions to resolve this failure are: 1. Service the buffer faster (<200ms, given the 115,200kbps baud rate) 2. Transmitt larger blocks of data (1KB) rather than smaller (64bytes) to minimize overhead of transmission 3. Maintain that the reading data is the highest priority and be sure to off-load servicing the buffer to a lower-priority thread.