41#ifndef CC13XX_CC26XX_CONF_H_
42#define CC13XX_CC26XX_CONF_H_
55#ifndef BOARD_CONF_HAS_SENSORS
56#define BOARD_CONF_HAS_SENSORS 0
60#ifndef BOARD_CONF_SENSORS_DISABLE
61#define BOARD_CONF_SENSORS_DISABLE 0
70#ifndef WATCHDOG_CONF_DISABLE
71#define WATCHDOG_CONF_DISABLE 0
74#ifndef WATCHDOG_CONF_TIMEOUT_MS
75#define WATCHDOG_CONF_TIMEOUT_MS 1000
90#ifndef RF_CONF_INACTIVITY_TIMEOUT
91#define RF_CONF_INACTIVITY_TIMEOUT 2000
98#ifndef RF_CONF_TXPOWER_DBM
99#define RF_CONF_TXPOWER_DBM RF_TXPOWER_MAX_DBM
106#ifndef RF_CONF_BLE_TXPOWER_DBM
107#define RF_CONF_BLE_TXPOWER_DBM RF_TXPOWER_MAX_DBM
115#ifndef RF_CONF_TXPOWER_BOOST_MODE
116#define RF_CONF_TXPOWER_BOOST_MODE 0
125#if !(RF_CONF_MODE & RF_MODE_BM)
126#error "Invalid RF_CONF_MODE provided"
129#define RF_MODE RF_CONF_MODE
133#ifdef RF_SUB_1_GHZ_CONF_FRONT_END_MODE
134#define RF_SUB_1_GHZ_FRONT_END_MODE RF_SUB_1_GHZ_CONF_FRONT_END_MODE
136#define RF_SUB_1_GHZ_FRONT_END_MODE RF_FRONT_END_MODE_DIFFERENTIAL
139#ifdef RF_SUB_1_GHZ_CONF_BIAS_MODE
140#define RF_SUB_1_GHZ_BIAS_MODE RF_SUB_1_GHZ_CONF_BIAS_MODE
142#define RF_SUB_1_GHZ_BIAS_MODE RF_BIAS_MODE_INTERNAL
146#ifdef RF_2_4_GHZ_CONF_FRONT_END_MODE
147#define RF_2_4_GHZ_FRONT_END_MODE RF_2_4_GHZ_CONF_FRONT_END_MODE
149#define RF_2_4_GHZ_FRONT_END_MODE RF_FRONT_END_MODE_DIFFERENTIAL
152#ifdef RF_2_4_GHZ_CONF_BIAS_MODE
153#define RF_2_4_GHZ_BIAS_MODE RF_2_4_GHZ_CONF_BIAS_MODE
155#define RF_2_4_GHZ_BIAS_MODE RF_BIAS_MODE_INTERNAL
159#ifndef RF_CONF_RX_BUF_CNT
160#define RF_CONF_RX_BUF_CNT 4
164#ifndef RF_CONF_RX_BUF_SIZE
165#define RF_CONF_RX_BUF_SIZE 146
169#ifndef RF_CONF_BLE_BEACON_ENABLE
170#define RF_CONF_BLE_BEACON_ENABLE 0
173#if (RF_CONF_BLE_BEACON_ENABLE) && !(SUPPORTS_BLE_BEACON)
174#error "Device does not support BLE for BLE beacon"
179#if defined(DEVICE_LINE_CC13XX)
183#define RF_MODE RF_MODE_SUB_1_GHZ
187#if (RF_MODE == RF_MODE_SUB_1_GHZ) && (SUPPORTS_PROP_MODE)
190#define NETSTACK_CONF_RADIO prop_mode_driver
193#define CSMA_CONF_ACK_WAIT_TIME (RTIMER_SECOND / 300)
194#define CSMA_CONF_AFTER_ACK_DETECTED_WAIT_TIME (RTIMER_SECOND / 1000)
195#define CSMA_CONF_SEND_SOFT_ACK 1
198#elif (RF_MODE == RF_MODE_2_4_GHZ) && (SUPPORTS_IEEE_MODE)
201#define NETSTACK_CONF_RADIO ieee_mode_driver
204#define CSMA_CONF_SEND_SOFT_ACK 0
208#error "Invalid RF mode configuration of CC13xx device"
213#elif defined(DEVICE_LINE_CC26XX)
217#define RF_MODE RF_MODE_2_4_GHZ
221#if (RF_MODE == RF_MODE_2_4_GHZ) && (SUPPORTS_IEEE_MODE)
224#define NETSTACK_CONF_RADIO ieee_mode_driver
227#define CSMA_CONF_SEND_SOFT_ACK 0
230#undef DOT_15_4G_FREQ_BAND_ID
231#define DOT_15_4G_CONF_FREQ_BAND_ID DOT_15_4G_FREQ_BAND_2450
235#error "IEEE-mode only supported by CC26xx devices"
240#error "Unsupported Device Line defined"
255#ifndef IEEE_ADDR_CONF_HARDCODED
256#define IEEE_ADDR_CONF_HARDCODED 0
263#ifndef IEEE_ADDR_CONF_ADDRESS
264#define IEEE_ADDR_CONF_ADDRESS { 0x00, 0x12, 0x4B, 0x00, 0x89, 0xAB, 0xCD, 0xEF }
279#ifndef IEEE_MODE_CONF_AUTOACK
280#define IEEE_MODE_CONF_AUTOACK 1
288#ifndef IEEE_MODE_CONF_PROMISCOUS
289#define IEEE_MODE_CONF_PROMISCOUS 0
296#ifndef IEEE_MODE_CONF_CCA_RSSI_THRESHOLD
297#define IEEE_MODE_CONF_CCA_RSSI_THRESHOLD 0xA6
312#ifndef PROP_MODE_CONF_DW
313#define PROP_MODE_CONF_DW 0
321#ifndef PROP_MODE_CONF_USE_CRC16
322#define PROP_MODE_CONF_USE_CRC16 0
329#ifndef PROP_MODE_CONF_CCA_RSSI_THRESHOLD
330#define PROP_MODE_CONF_CCA_RSSI_THRESHOLD 0xA6
343#ifndef TI_UART_CONF_ENABLE
344#define TI_UART_CONF_ENABLE 1
350#ifndef TI_UART_CONF_UART0_ENABLE
351#define TI_UART_CONF_UART0_ENABLE TI_UART_CONF_ENABLE
357#ifndef TI_UART_CONF_UART1_ENABLE
358#define TI_UART_CONF_UART1_ENABLE 0
364#ifndef TI_UART_CONF_BAUD_RATE
365#define TI_UART_CONF_BAUD_RATE 115200
371#ifndef TI_SPI_CONF_ENABLE
372#define TI_SPI_CONF_ENABLE 1
378#ifndef TI_SPI_CONF_SPI0_ENABLE
379#define TI_SPI_CONF_SPI0_ENABLE TI_SPI_CONF_ENABLE
385#ifndef TI_SPI_CONF_SPI1_ENABLE
386#define TI_SPI_CONF_SPI1_ENABLE 0
392#ifndef TI_I2C_CONF_ENABLE
393#define TI_I2C_CONF_ENABLE 1
399#ifndef TI_I2C_CONF_I2C0_ENABLE
400#define TI_I2C_CONF_I2C0_ENABLE TI_I2C_CONF_ENABLE
406#ifndef TI_NVS_CONF_ENABLE
407#define TI_NVS_CONF_ENABLE 0
413#ifndef TI_NVS_CONF_NVS_INTERNAL_ENABLE
414#define TI_NVS_CONF_NVS_INTERNAL_ENABLE TI_NVS_CONF_ENABLE
420#ifndef TI_NVS_CONF_NVS_EXTERNAL_ENABLE
421#define TI_NVS_CONF_NVS_EXTERNAL_ENABLE TI_NVS_CONF_ENABLE
427#ifndef TI_SD_CONF_ENABLE
428#define TI_SD_CONF_ENABLE 0
443#if TI_SPI_CONF_ENABLE
450#define SPI0_IS_ENABLED ((TI_SPI_CONF_SPI0_ENABLE) ? 1 : 0)
451#define SPI1_IS_ENABLED ((TI_SPI_CONF_SPI1_ENABLE) ? 1 : 0)
453#if (DeviceFamily_PARENT == DeviceFamily_PARENT_CC13X0_CC26X0)
456#define SPI_CONF_CONTROLLER_COUNT (SPI0_IS_ENABLED)
458#elif (DeviceFamily_PARENT == DeviceFamily_PARENT_CC13X2_CC26X2)
461#define SPI_CONF_CONTROLLER_COUNT (SPI0_IS_ENABLED + SPI1_IS_ENABLED)
469#define SPI_CONF_CONTROLLER_COUNT 0
478#ifndef SLIP_ARCH_CONF_ENABLED
484#if defined(UIP_FALLBACK_INTERFACE) || defined(CMD_CONF_OUTPUT)
485#define SLIP_ARCH_CONF_ENABLED 1
Header file of common CC13xx/CC26xx RF functionality.
Header with configuration defines for the Contiki system.