diff options
| author | Keith Packard <keithp@keithp.com> | 2012-07-11 13:53:30 -0700 | 
|---|---|---|
| committer | Keith Packard <keithp@keithp.com> | 2012-07-11 13:53:30 -0700 | 
| commit | 846a6298e4a8bfbe87bb24d7b0802c0bf6f233be (patch) | |
| tree | 246ac4909f2317dbee456a3b17ae47b9220fab50 /src/drivers | |
| parent | cf44ea354c2d1780cee343132c6058e11e9eefa3 (diff) | |
Report RSSI values in monitor idle UI (trac #44)
This adds a new 's' command to TeleDongle to report RSSI value from last
received packet, and then has AltosUI request that value when closing
the remote link.
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'src/drivers')
| -rw-r--r-- | src/drivers/ao_packet.c | 11 | ||||
| -rw-r--r-- | src/drivers/ao_packet_master.c | 7 | 
2 files changed, 13 insertions, 5 deletions
diff --git a/src/drivers/ao_packet.c b/src/drivers/ao_packet.c index e020c003..d813b25f 100644 --- a/src/drivers/ao_packet.c +++ b/src/drivers/ao_packet.c @@ -27,7 +27,11 @@ static __pdata uint8_t rx_seq;  __xdata struct ao_task	ao_packet_task;  __xdata uint8_t ao_packet_enable; + +#if PACKET_HAS_MASTER  __xdata uint8_t ao_packet_master_sleeping; +__xdata uint8_t ao_packet_last_rssi; +#endif  void  ao_packet_send(void) @@ -80,6 +84,9 @@ ao_packet_recv(void)  	if (!(ao_rx_packet.status & AO_RADIO_STATUS_CRC_OK))  		return 0; +#if PACKET_HAS_MASTER +	ao_packet_last_rssi = ao_rx_packet.rssi; +#endif  	/* Accept packets with matching call signs, or any packet if  	 * our callsign hasn't been configured  	 */ @@ -130,10 +137,6 @@ ao_packet_recv(void)  	return 1;  } -#ifndef PACKET_HAS_MASTER -#define PACKET_HAS_MASTER 1 -#endif -  #if PACKET_HAS_MASTER  void  ao_packet_flush(void) diff --git a/src/drivers/ao_packet_master.c b/src/drivers/ao_packet_master.c index 66f94288..e97a6648 100644 --- a/src/drivers/ao_packet_master.c +++ b/src/drivers/ao_packet_master.c @@ -137,10 +137,15 @@ ao_packet_forward(void) __reentrant  #endif  } - +static void +ao_packet_signal(void) +{ +	printf ("RSSI: %d\n", AO_RSSI_FROM_RADIO(ao_packet_last_rssi)); +}  __code struct ao_cmds ao_packet_master_cmds[] = {  	{ ao_packet_forward,	"p\0Remote packet link." }, +	{ ao_packet_signal,	"s\0Report signal strength." },  	{ 0,	NULL },  };  | 
