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#ifndef NETSTACK_CONF_RADIO
191#define NETSTACK_CONF_RADIO prop_mode_driver
195#define CSMA_CONF_ACK_WAIT_TIME (RTIMER_SECOND / 300)
196#define CSMA_CONF_AFTER_ACK_DETECTED_WAIT_TIME (RTIMER_SECOND / 1000)
197#define CSMA_CONF_SEND_SOFT_ACK 1
200#elif (RF_MODE == RF_MODE_2_4_GHZ) && (SUPPORTS_IEEE_MODE)
203#ifndef NETSTACK_CONF_RADIO
204#define NETSTACK_CONF_RADIO ieee_mode_driver
208#define CSMA_CONF_SEND_SOFT_ACK 0
212#error "Invalid RF mode configuration of CC13xx device"
217#elif defined(DEVICE_LINE_CC26XX)
221#define RF_MODE RF_MODE_2_4_GHZ
225#if (RF_MODE == RF_MODE_2_4_GHZ) && (SUPPORTS_IEEE_MODE)
228#ifndef NETSTACK_CONF_RADIO
229#define NETSTACK_CONF_RADIO ieee_mode_driver
233#define CSMA_CONF_SEND_SOFT_ACK 0
236#undef DOT_15_4G_FREQ_BAND_ID
237#define DOT_15_4G_CONF_FREQ_BAND_ID DOT_15_4G_FREQ_BAND_2450
241#error "IEEE-mode only supported by CC26xx devices"
246#error "Unsupported Device Line defined"
261#ifndef IEEE_ADDR_CONF_HARDCODED
262#define IEEE_ADDR_CONF_HARDCODED 0
269#ifndef IEEE_ADDR_CONF_ADDRESS
270#define IEEE_ADDR_CONF_ADDRESS { 0x00, 0x12, 0x4B, 0x00, 0x89, 0xAB, 0xCD, 0xEF }
285#ifndef IEEE_MODE_CONF_AUTOACK
286#define IEEE_MODE_CONF_AUTOACK 1
294#ifndef IEEE_MODE_CONF_PROMISCOUS
295#define IEEE_MODE_CONF_PROMISCOUS 0
302#ifndef IEEE_MODE_CONF_CCA_RSSI_THRESHOLD
303#define IEEE_MODE_CONF_CCA_RSSI_THRESHOLD 0xA6
318#ifndef PROP_MODE_CONF_DW
319#define PROP_MODE_CONF_DW 0
327#ifndef PROP_MODE_CONF_USE_CRC16
328#define PROP_MODE_CONF_USE_CRC16 0
335#ifndef PROP_MODE_CONF_CCA_RSSI_THRESHOLD
336#define PROP_MODE_CONF_CCA_RSSI_THRESHOLD 0xA6
349#ifndef TI_UART_CONF_ENABLE
350#define TI_UART_CONF_ENABLE 1
356#ifndef TI_UART_CONF_UART0_ENABLE
357#define TI_UART_CONF_UART0_ENABLE TI_UART_CONF_ENABLE
363#ifndef TI_UART_CONF_UART1_ENABLE
364#define TI_UART_CONF_UART1_ENABLE 0
370#ifndef TI_UART_CONF_BAUD_RATE
371#define TI_UART_CONF_BAUD_RATE 115200
377#ifndef TI_SPI_CONF_ENABLE
378#define TI_SPI_CONF_ENABLE 1
384#ifndef TI_SPI_CONF_SPI0_ENABLE
385#define TI_SPI_CONF_SPI0_ENABLE TI_SPI_CONF_ENABLE
391#ifndef TI_SPI_CONF_SPI1_ENABLE
392#define TI_SPI_CONF_SPI1_ENABLE 0
398#ifndef TI_I2C_CONF_ENABLE
399#define TI_I2C_CONF_ENABLE 1
405#ifndef TI_I2C_CONF_I2C0_ENABLE
406#define TI_I2C_CONF_I2C0_ENABLE TI_I2C_CONF_ENABLE
412#ifndef TI_NVS_CONF_ENABLE
413#define TI_NVS_CONF_ENABLE 0
419#ifndef TI_NVS_CONF_NVS_INTERNAL_ENABLE
420#define TI_NVS_CONF_NVS_INTERNAL_ENABLE TI_NVS_CONF_ENABLE
426#ifndef TI_NVS_CONF_NVS_EXTERNAL_ENABLE
427#define TI_NVS_CONF_NVS_EXTERNAL_ENABLE TI_NVS_CONF_ENABLE
433#ifndef TI_SD_CONF_ENABLE
434#define TI_SD_CONF_ENABLE 0
449#if TI_SPI_CONF_ENABLE
456#define SPI0_IS_ENABLED ((TI_SPI_CONF_SPI0_ENABLE) ? 1 : 0)
457#define SPI1_IS_ENABLED ((TI_SPI_CONF_SPI1_ENABLE) ? 1 : 0)
459#if (DeviceFamily_PARENT == DeviceFamily_PARENT_CC13X0_CC26X0)
462#define SPI_CONF_CONTROLLER_COUNT (SPI0_IS_ENABLED)
464#elif (DeviceFamily_PARENT == DeviceFamily_PARENT_CC13X2_CC26X2)
467#define SPI_CONF_CONTROLLER_COUNT (SPI0_IS_ENABLED + SPI1_IS_ENABLED)
475#define SPI_CONF_CONTROLLER_COUNT 0
484#ifndef SLIP_ARCH_CONF_ENABLED
490#if defined(UIP_FALLBACK_INTERFACE) || defined(CMD_CONF_OUTPUT)
491#define SLIP_ARCH_CONF_ENABLED 1
Header file of common CC13xx/CC26xx RF functionality.
Header with configuration defines for the Contiki system.