From c4a8569f61eddf690d00337543462235ecbfbe54 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Sun, 29 Aug 2010 22:41:18 -0700 Subject: [PATCH] altos: flush pending output when terminating packet mode Just in case the last command sent hasn't been transmitted, hang around for up to a second waiting for the data to get across the link. Signed-off-by: Keith Packard --- src/ao_packet_master.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/ao_packet_master.c b/src/ao_packet_master.c index 72bb908a..5e13a91a 100644 --- a/src/ao_packet_master.c +++ b/src/ao_packet_master.c @@ -121,6 +121,10 @@ ao_packet_forward(void) __reentrant if (c == '\r') c = '\n'; ao_packet_putchar(c); } + + /* Wait for a second if there is any pending data */ + for (c = 0; (ao_packet_tx_used || ao_tx_packet.len) && c < 10; c++) + ao_delay(AO_MS_TO_TICKS(100)); ao_packet_enable = 0; ao_radio_abort(); while (ao_packet_echo_task.wchan || ao_packet_task.wchan) { -- 2.30.2