stash
separated USART code from communication protocol