From 2f921fbe8eae0e112097cbde8d8e8dbbce9f084e Mon Sep 17 00:00:00 2001 From: Anthony Merlino Date: Wed, 13 Jun 2018 03:21:45 +0000 Subject: [PATCH] Merged in antmerlino/nuttx/xbee-timeout-fix (pull request #656) drivers/xbee: Fixes issue with timeouts. Timeouts were in ticks but should have been in ms. This caused false triggers of timeout causing redundant packets, etc. Approved-by: GregoryN --- drivers/wireless/ieee802154/xbee/xbee.c | 8 +++++++- drivers/wireless/ieee802154/xbee/xbee_mac.c | 3 ++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/drivers/wireless/ieee802154/xbee/xbee.c b/drivers/wireless/ieee802154/xbee/xbee.c index 33b7485918..c1eda49cd4 100644 --- a/drivers/wireless/ieee802154/xbee/xbee.c +++ b/drivers/wireless/ieee802154/xbee/xbee.c @@ -60,7 +60,7 @@ * Pre-processor Definitions ****************************************************************************/ -#define XBEE_ATQUERY_TIMEOUT 100 +#define XBEE_ATQUERY_TIMEOUT MSEC2TICK(100) /**************************************************************************** * Private Types @@ -625,6 +625,11 @@ static void xbee_process_apiframes(FAR struct xbee_priv_s *priv, wlinfo("Sleep Period: %dsec\n", frame->io_data[frame->io_offset]/100); } + else if (memcmp(command, "RR", 2) == 0) + { + wlinfo("XBee Retries: %d\n", + frame->io_data[frame->io_offset]); + } else { wlwarn("Unhandled AT Response: %.*s\n", 2, command); @@ -1557,4 +1562,5 @@ void xbee_regdump(FAR struct xbee_priv_s *priv) xbee_send_atquery(priv, "A1"); xbee_send_atquery(priv, "A2"); xbee_send_atquery(priv, "SP"); + xbee_send_atquery(priv, "RR"); } diff --git a/drivers/wireless/ieee802154/xbee/xbee_mac.c b/drivers/wireless/ieee802154/xbee/xbee_mac.c index 69aa8b8d1b..e4db9c21d1 100644 --- a/drivers/wireless/ieee802154/xbee/xbee_mac.c +++ b/drivers/wireless/ieee802154/xbee/xbee_mac.c @@ -55,7 +55,8 @@ ****************************************************************************/ #define XBEE_ASSOC_POLLDELAY 100 -#define XBEE_RESPONSE_TIMEOUT 100 + +#define XBEE_RESPONSE_TIMEOUT MSEC2TICK(100) /**************************************************************************** * Private Types