Go to the documentation of this file.
8 #ifndef CONTIKI_CONF_H_
9 #define CONTIKI_CONF_H_
16 #include PROJECT_CONF_H
25 #define CLOCK_CONF_SECOND 128
32 typedef uint32_t clock_time_t;
33 typedef uint32_t uip_stats_t;
39 typedef uint32_t rtimer_clock_t;
40 #define RTIMER_CLOCK_LT(a,b) ((int32_t)((a)-(b)) < 0)
48 #ifndef FLASH_CCA_CONF_BOOTLDR_BACKDOOR
49 #define FLASH_CCA_CONF_BOOTLDR_BACKDOOR 1
52 #ifndef FLASH_CCA_CONF_BOOTLDR_BACKDOOR_PORT_A_PIN
53 #define FLASH_CCA_CONF_BOOTLDR_BACKDOOR_PORT_A_PIN 3
56 #ifndef FLASH_CCA_CONF_BOOTLDR_BACKDOOR_ACTIVE_HIGH
57 #define FLASH_CCA_CONF_BOOTLDR_BACKDOOR_ACTIVE_HIGH 0
67 #ifndef FLASH_CONF_ORIGIN
68 #define FLASH_CONF_ORIGIN 0x00200000
71 #ifndef FLASH_CONF_SIZE
72 #define FLASH_CONF_SIZE 0x00080000
81 #ifndef WATCHDOG_CONF_ENABLE
82 #define WATCHDOG_CONF_ENABLE 1
93 #define CTRL_EP_SIZE 8
94 #define USB_EP1_SIZE 32
95 #define USB_EP2_SIZE 64
96 #define USB_EP3_SIZE 64
97 #define USB_ARCH_WRITE_NOTIFY 0
99 #ifndef USB_ARCH_CONF_DMA
100 #define USB_ARCH_CONF_DMA 1
110 #ifndef ENERGEST_CONF_ON
111 #define ENERGEST_CONF_ON 0
114 #ifndef STARTUP_CONF_VERBOSE
115 #define STARTUP_CONF_VERBOSE 1
124 #define USB_ARCH_CONF_RX_DMA_CHAN 0
125 #define USB_ARCH_CONF_TX_DMA_CHAN 1
126 #define CC2538_RF_CONF_TX_DMA_CHAN 2
127 #define CC2538_RF_CONF_RX_DMA_CHAN 3
128 #define UDMA_CONF_MAX_CHANNEL CC2538_RF_CONF_RX_DMA_CHAN
136 #ifndef UART_CONF_ENABLE
137 #define UART_CONF_ENABLE 1
140 #ifndef UART0_CONF_BAUD_RATE
141 #define UART0_CONF_BAUD_RATE 115200
144 #ifndef UART1_CONF_BAUD_RATE
145 #define UART1_CONF_BAUD_RATE 115200
148 #ifndef SLIP_ARCH_CONF_USB
149 #define SLIP_ARCH_CONF_USB 0
152 #ifndef CC2538_RF_CONF_SNIFFER_USB
153 #define CC2538_RF_CONF_SNIFFER_USB 0
157 #define DBG_CONF_USB 0
160 #ifndef SERIAL_LINE_CONF_UART
161 #define SERIAL_LINE_CONF_UART 0
164 #if !SLIP_ARCH_CONF_USB
165 #ifndef SLIP_ARCH_CONF_UART
166 #define SLIP_ARCH_CONF_UART 0
170 #if !CC2538_RF_CONF_SNIFFER_USB
171 #ifndef CC2538_RF_CONF_SNIFFER_UART
172 #define CC2538_RF_CONF_SNIFFER_UART 0
177 #ifndef DBG_CONF_UART
178 #define DBG_CONF_UART 0
182 #ifndef UART1_CONF_UART
183 #define UART1_CONF_UART 0
188 #define SLIP_BRIDGE_CONF_NO_PUTCHAR 1
189 #define SLIP_RADIO_CONF_NO_PUTCHAR 1
191 #ifndef SLIP_ARCH_CONF_ENABLED
197 #if defined (UIP_FALLBACK_INTERFACE) || defined (CMD_CONF_OUTPUT)
198 #define SLIP_ARCH_CONF_ENABLED 1
207 #ifndef CC2538_RF_CONF_SNIFFER
208 #define CC2538_RF_CONF_SNIFFER 0
217 #ifndef CC2538_CONF_QUIET
218 #define CC2538_CONF_QUIET 0
222 #if CC2538_CONF_QUIET
223 #undef USB_SERIAL_CONF_ENABLE
224 #define USB_SERIAL_CONF_ENABLE 0
226 #undef UART_CONF_ENABLE
227 #define UART_CONF_ENABLE 0
229 #undef STARTUP_CONF_VERBOSE
230 #define STARTUP_CONF_VERBOSE 0
233 #if CC2538_RF_CONF_SNIFFER
234 #error "CC2538_RF_CONF_SNIFFER == 1 and CC2538_CONF_QUIET == 1"
235 #error "These values are conflicting. Please set either to 0"
242 #ifndef USB_SERIAL_CONF_ENABLE
243 #define USB_SERIAL_CONF_ENABLE \
244 ((SLIP_ARCH_CONF_USB & SLIP_ARCH_CONF_ENABLED) | \
246 (CC2538_RF_CONF_SNIFFER & CC2538_RF_CONF_SNIFFER_USB))
253 #if SLIP_ARCH_CONF_ENABLED
254 #define DBG_CONF_SLIP_MUX (SLIP_ARCH_CONF_USB == DBG_CONF_USB && \
255 (SLIP_ARCH_CONF_USB || \
256 SLIP_ARCH_CONF_UART == DBG_CONF_UART))
262 #define UART_IN_USE_BY_SERIAL_LINE(u) (SERIAL_LINE_CONF_UART == (u))
263 #define UART_IN_USE_BY_SLIP(u) (SLIP_ARCH_CONF_ENABLED && \
264 !SLIP_ARCH_CONF_USB && \
265 SLIP_ARCH_CONF_UART == (u))
266 #define UART_IN_USE_BY_RF_SNIFFER(u) (CC2538_RF_CONF_SNIFFER && \
267 !CC2538_RF_CONF_SNIFFER_USB && \
268 CC2538_RF_CONF_SNIFFER_UART == (u))
269 #define UART_IN_USE_BY_DBG(u) (!DBG_CONF_USB && DBG_CONF_UART == (u))
270 #define UART_IN_USE_BY_UART1(u) (UART1_CONF_UART == (u))
272 #define UART_IN_USE(u) ( \
273 UART_CONF_ENABLE && \
274 (UART_IN_USE_BY_SERIAL_LINE(u) || \
275 UART_IN_USE_BY_SLIP(u) || \
276 UART_IN_USE_BY_RF_SNIFFER(u) || \
277 UART_IN_USE_BY_DBG(u) || \
278 UART_IN_USE_BY_UART1(u)) \
290 #ifndef NETSTACK_CONF_NETWORK
292 #define NETSTACK_CONF_NETWORK sicslowpan_driver
294 #define NETSTACK_CONF_NETWORK rime_driver
298 #ifndef NETSTACK_CONF_MAC
299 #define NETSTACK_CONF_MAC csma_driver
302 #ifndef NETSTACK_CONF_RDC
303 #define NETSTACK_CONF_RDC contikimac_driver
307 #define NULLRDC_802154_AUTOACK 1
308 #define NULLRDC_802154_AUTOACK_HW 1
311 #define CONTIKIMAC_CONF_WITH_PHASE_OPTIMIZATION 0
312 #define WITH_FAST_SLEEP 1
314 #ifndef NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE
315 #define NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE 8
318 #ifndef NETSTACK_CONF_FRAMER
319 #define NETSTACK_CONF_FRAMER framer_802154
322 #define NETSTACK_CONF_RADIO cc2538_rf_driver
329 #ifndef LPM_CONF_ENABLE
330 #define LPM_CONF_ENABLE 1
339 #ifndef LPM_CONF_MAX_PM
340 #define LPM_CONF_MAX_PM 1
343 #ifndef LPM_CONF_STATS
344 #define LPM_CONF_STATS 0
359 #ifndef IEEE_ADDR_CONF_HARDCODED
360 #define IEEE_ADDR_CONF_HARDCODED 0
367 #ifndef IEEE_ADDR_CONF_ADDRESS
368 #define IEEE_ADDR_CONF_ADDRESS { 0x00, 0x12, 0x4B, 0x00, 0x89, 0xAB, 0xCD, 0xEF }
377 #ifndef IEEE_ADDR_CONF_USE_SECONDARY_LOCATION
378 #define IEEE_ADDR_CONF_USE_SECONDARY_LOCATION 0
388 #ifndef IEEE802154_CONF_PANID
389 #define IEEE802154_CONF_PANID 0x5449
392 #ifndef CC2538_RF_CONF_CHANNEL
393 #define CC2538_RF_CONF_CHANNEL 25
396 #ifndef CC2538_RF_CONF_AUTOACK
397 #define CC2538_RF_CONF_AUTOACK 1
400 #ifndef CC2538_RF_CONF_TX_USE_DMA
401 #define CC2538_RF_CONF_TX_USE_DMA 1
404 #ifndef CC2538_RF_CONF_RX_USE_DMA
405 #define CC2538_RF_CONF_RX_USE_DMA 1
416 #ifndef UIP_CONF_IPV6
417 #define UIP_CONF_IPV6 0
423 #define LINKADDR_CONF_SIZE 8
424 #define UIP_CONF_LL_802154 1
425 #define UIP_CONF_LLH_LEN 0
426 #define UIP_CONF_NETIF_MAX_ADDRESSES 3
430 #define UIP_CONF_TCP 1
432 #ifndef UIP_CONF_TCP_MSS
433 #define UIP_CONF_TCP_MSS 64
435 #define UIP_CONF_UDP 1
436 #define UIP_CONF_UDP_CHECKSUMS 1
437 #define UIP_CONF_ICMP6 1
440 #ifndef UIP_CONF_ROUTER
441 #define UIP_CONF_ROUTER 1
444 #ifndef UIP_CONF_IPV6_RPL
445 #define UIP_CONF_IPV6_RPL 1
448 #define UIP_CONF_ND6_SEND_RA 0
449 #define UIP_CONF_IP_FORWARD 0
450 #define RPL_CONF_STATS 0
451 #define RPL_CONF_MAX_DAG_ENTRIES 1
453 #define RPL_CONF_OF rpl_mrhof
456 #define UIP_CONF_ND6_REACHABLE_TIME 600000
457 #define UIP_CONF_ND6_RETRANS_TIMER 10000
459 #ifndef NBR_TABLE_CONF_MAX_NEIGHBORS
460 #define NBR_TABLE_CONF_MAX_NEIGHBORS 20
462 #ifndef UIP_CONF_MAX_ROUTES
463 #define UIP_CONF_MAX_ROUTES 20
467 #ifndef UIP_CONF_BUFFER_SIZE
468 #define UIP_CONF_BUFFER_SIZE 1300
471 #define UIP_CONF_IPV6_QUEUE_PKT 0
472 #define UIP_CONF_IPV6_CHECKS 1
473 #define UIP_CONF_IPV6_REASSEMBLY 0
474 #define UIP_CONF_MAX_LISTENPORTS 8
477 #define SICSLOWPAN_CONF_COMPRESSION SICSLOWPAN_COMPRESSION_HC06
478 #ifndef SICSLOWPAN_CONF_COMPRESSION_THRESHOLD
479 #define SICSLOWPAN_CONF_COMPRESSION_THRESHOLD 63
481 #ifndef SICSLOWPAN_CONF_FRAG
482 #define SICSLOWPAN_CONF_FRAG 1
484 #define SICSLOWPAN_CONF_MAXAGE 8
487 #define SICSLOWPAN_CONF_MAX_ADDR_CONTEXTS 1
488 #ifndef SICSLOWPAN_CONF_ADDR_CONTEXT_0
489 #define SICSLOWPAN_CONF_ADDR_CONTEXT_0 { \
490 addr_contexts[0].prefix[0] = 0xaa; \
491 addr_contexts[0].prefix[1] = 0xaa; \
495 #define MAC_CONF_CHANNEL_CHECK_RATE 8
497 #ifndef QUEUEBUF_CONF_NUM
498 #define QUEUEBUF_CONF_NUM 8
503 #define UIP_CONF_IP_FORWARD 1
505 #ifndef UIP_CONF_BUFFER_SIZE
506 #define UIP_CONF_BUFFER_SIZE 108
509 #define RIME_CONF_NO_POLITE_ANNOUCEMENTS 0
511 #ifndef QUEUEBUF_CONF_NUM
512 #define QUEUEBUF_CONF_NUM 8