summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ao_packet_slave.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/ao_packet_slave.c b/src/ao_packet_slave.c
index 4c947fbf..e03ebdc3 100644
--- a/src/ao_packet_slave.c
+++ b/src/ao_packet_slave.c
@@ -20,12 +20,15 @@
void
ao_packet_slave(void)
{
+ uint8_t status;
+
ao_radio_set_packet();
ao_tx_packet.addr = ao_serial_number;
ao_tx_packet.len = AO_PACKET_SYN;
while (ao_packet_enable) {
- ao_packet_recv();
- ao_packet_send();
+ status = ao_packet_recv();
+ if (status & AO_DMA_DONE)
+ ao_packet_send();
}
ao_exit();
}