To test the reliability of serial communications I found myself needing to reliable insert unreliability on a serial line. To achieve this I decided to make a simple man in the middle circuit to inject errors on demand.

Board

Based around a PIC16F15324 and with a single push-button and LED for interface, as of now it can work as a simple proxy or generate dropped bytes every nth bytes +/- a random small amount of bytes. The circuit can also configure the baud rate automatically by sending a SYNC byte U while on config mode.

Future firmware revisions may add more complex error generation and a user’s manual.