From: Keith Packard Date: Sat, 19 Dec 2009 22:03:11 +0000 (-0800) Subject: Disable monitor mode before attempting radio test. X-Git-Tag: debian/0.6+85+g82fdbfe~24 X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=commitdiff_plain;h=598d168bd6552c3756e4b0267de44147eadab9f6 Disable monitor mode before attempting radio test. If monitor mode is left active, then the radio lock will not be able to be acquired for the radio test. Signed-off-by: Keith Packard --- diff --git a/src/ao_packet_slave.c b/src/ao_packet_slave.c index ba5ad1c1..122c4da0 100644 --- a/src/ao_packet_slave.c +++ b/src/ao_packet_slave.c @@ -40,13 +40,15 @@ ao_packet_slave_start(void) void ao_packet_slave_stop(void) { - ao_packet_enable = 0; - ao_radio_abort(); - while (ao_packet_task.wchan) { - ao_wake_task(&ao_packet_task); - ao_yield(); + if (ao_packet_enable) { + ao_packet_enable = 0; + ao_radio_abort(); + while (ao_packet_task.wchan) { + ao_wake_task(&ao_packet_task); + ao_yield(); + } + ao_radio_set_telemetry(); } - ao_radio_set_telemetry(); } void diff --git a/src/ao_radio.c b/src/ao_radio.c index 1a0cf4fa..bb19c6a9 100644 --- a/src/ao_radio.c +++ b/src/ao_radio.c @@ -448,6 +448,7 @@ ao_radio_rdf_abort(void) void ao_radio_test(void) { + ao_set_monitor(0); ao_packet_slave_stop(); ao_radio_get(); printf ("Hit a character to stop..."); flush(); diff --git a/src/ao_telemetrum.c b/src/ao_telemetrum.c index 5250078e..990b0d77 100644 --- a/src/ao_telemetrum.c +++ b/src/ao_telemetrum.c @@ -17,6 +17,13 @@ #include "ao.h" +/* stub so as telemetrum doesn't have monitor mode */ +void +ao_set_monitor(uint8_t monitoring) +{ + (void) monitoring; +} + void main(void) {