From ba739f679e958ab29a328cb9f982e0857974042d Mon Sep 17 00:00:00 2001 From: Simon Duquennoy Date: Fri, 23 Sep 2016 09:39:58 +0200 Subject: [PATCH] cc1200: configurable tx-rx turaround time --- dev/cc1200/cc1200-802154g-863-870-fsk-50kbps.c | 1 + dev/cc1200/cc1200-868-fsk-1-2kbps.c | 1 + dev/cc1200/cc1200-rf-cfg.h | 2 ++ dev/cc1200/cc1200.c | 2 +- 4 files changed, 5 insertions(+), 1 deletion(-) diff --git a/dev/cc1200/cc1200-802154g-863-870-fsk-50kbps.c b/dev/cc1200/cc1200-802154g-863-870-fsk-50kbps.c index f7e7a0b62..0fe452999 100644 --- a/dev/cc1200/cc1200-802154g-863-870-fsk-50kbps.c +++ b/dev/cc1200/cc1200-802154g-863-870-fsk-50kbps.c @@ -158,6 +158,7 @@ const cc1200_rf_cfg_t cc1200_802154g_863_870_fsk_50kbps = { .register_settings = preferredSettings, .size_of_register_settings = sizeof(preferredSettings), .tx_pkt_lifetime = (RTIMER_SECOND / 20), + .tx_rx_turnaround = (RTIMER_SECOND / 100), .chan_center_freq0 = RF_CFG_CHAN_CENTER_F0, .chan_spacing = RF_CFG_CHAN_SPACING, .min_channel = RF_CFG_MIN_CHANNEL, diff --git a/dev/cc1200/cc1200-868-fsk-1-2kbps.c b/dev/cc1200/cc1200-868-fsk-1-2kbps.c index 390779e1f..7c8d52cb4 100644 --- a/dev/cc1200/cc1200-868-fsk-1-2kbps.c +++ b/dev/cc1200/cc1200-868-fsk-1-2kbps.c @@ -125,6 +125,7 @@ const cc1200_rf_cfg_t cc1200_868_fsk_1_2kbps = { .register_settings = preferredSettings, .size_of_register_settings = sizeof(preferredSettings), .tx_pkt_lifetime = (2 * RTIMER_SECOND), + .tx_rx_turnaround = (RTIMER_SECOND / 2), .chan_center_freq0 = RF_CFG_CHAN_CENTER_F0, .chan_spacing = RF_CFG_CHAN_SPACING, .min_channel = RF_CFG_MIN_CHANNEL, diff --git a/dev/cc1200/cc1200-rf-cfg.h b/dev/cc1200/cc1200-rf-cfg.h index 57af1f85a..4b206959b 100644 --- a/dev/cc1200/cc1200-rf-cfg.h +++ b/dev/cc1200/cc1200-rf-cfg.h @@ -67,6 +67,8 @@ typedef struct cc1200_rf_cfg { * synch word + phy header, payload + CRC. */ rtimer_clock_t tx_pkt_lifetime; + /* The maximum time it takes to switch from Tx to Rx */ + rtimer_clock_t tx_rx_turnaround; /* Base frequency in kHz */ uint32_t chan_center_freq0; /* Channel spacing in Hz */ diff --git a/dev/cc1200/cc1200.c b/dev/cc1200/cc1200.c index 6cb1d1be6..fef495e31 100644 --- a/dev/cc1200/cc1200.c +++ b/dev/cc1200/cc1200.c @@ -802,7 +802,7 @@ transmit(unsigned short transmit_len) */ BUSYWAIT_UNTIL_STATE(STATE_RX, - RTIMER_SECOND / 100); + CC1200_RF_CFG.tx_rx_turnaround); ENABLE_GPIO_INTERRUPTS();