started working on automatically downloading cape code
diff --git a/bbb_cape/src/cape/uart_byte.c b/bbb_cape/src/cape/uart_byte.c
index cfcf1bf..2cd95b4 100644
--- a/bbb_cape/src/cape/uart_byte.c
+++ b/bbb_cape/src/cape/uart_byte.c
@@ -24,8 +24,15 @@
     }
   }
 
+  int r = UART->DR;  // do it now to clear interrupts etc
+
+  if (UART->SR & USART_SR_PE) r = -2;
+  if (UART->SR & USART_SR_FE) r = -3;
+  if (UART->SR & USART_SR_NE) r = -4;
+  if (UART->SR & USART_SR_ORE) r = -5;
+
   TIMEOUT_TIM->CR1 &= ~TIM_CR1_CEN;
-  return UART->DR;
+  return r;
 }
 
 void uart_byte_send(uint8_t value) {