2006-08-02 16:44:46 +02:00
|
|
|
/* -*- C -*- */
|
2010-10-21 20:25:39 +02:00
|
|
|
/* @(#)$Id: contiki-conf.h,v 1.85 2010/10/21 18:25:39 joxe Exp $ */
|
2006-08-02 16:44:46 +02:00
|
|
|
|
|
|
|
#ifndef CONTIKI_CONF_H
|
|
|
|
#define CONTIKI_CONF_H
|
|
|
|
|
2010-06-23 12:18:05 +02:00
|
|
|
#include "platform-conf.h"
|
2010-02-06 11:00:25 +01:00
|
|
|
|
2010-10-03 22:40:42 +02:00
|
|
|
#ifdef PROJECT_CONF_H
|
2010-10-21 00:21:16 +02:00
|
|
|
#include "project-conf.h"
|
2010-10-03 22:40:42 +02:00
|
|
|
#endif /* PROJECT_CONF_H */
|
2010-02-03 17:48:04 +01:00
|
|
|
|
2010-10-21 00:21:16 +02:00
|
|
|
#ifndef NETSTACK_CONF_MAC
|
A work-in-progress rework of the Contiki MAC and radio layers. The
main ideas are:
* Separates the Contiki low-layer network stack into four layers:
network (e.g. sicslowpan / rime), Medium Access Control MAC
(e.g. CSMA), Radio Duty Cycling RDC (e.g. ContikiMAC, X-MAC), and
radio (e.g. cc2420).
* Introduces a new way to configure the network stack. Four #defines
that specify what mechanism/protocol/driver to use at the four
layers: NETSTACK_CONF_NETWORK, NETSTACK_CONF_MAC, NETSTACK_CONF_RDC,
NETSTACK_CONF_RADIO.
* Adds a callback mechanism to inform the MAC and network layers about
the fate of a transmitted packet: if the packet was not possible to
transmit, the cause of the failure is reported, and if the packets
was successfully transmitted, the number of tries before it was
finally transmitted is reported.
* NULL-protocols at both the MAC and RDC layers: nullmac and nullrdc,
which can be used when MAC and RDC functionality is not needed.
* Extends the radio API with three new functions that enable more
efficient radio duty cycling protocols: channel check, pending
packet, and receiving packet.
* New initialization mechanism, which takes advantage of the NETSTACK
#defines.
2010-02-18 22:48:39 +01:00
|
|
|
#define NETSTACK_CONF_MAC csma_driver
|
2010-10-21 00:21:16 +02:00
|
|
|
#endif /* NETSTACK_CONF_MAC */
|
|
|
|
|
|
|
|
#ifndef NETSTACK_CONF_RDC
|
A work-in-progress rework of the Contiki MAC and radio layers. The
main ideas are:
* Separates the Contiki low-layer network stack into four layers:
network (e.g. sicslowpan / rime), Medium Access Control MAC
(e.g. CSMA), Radio Duty Cycling RDC (e.g. ContikiMAC, X-MAC), and
radio (e.g. cc2420).
* Introduces a new way to configure the network stack. Four #defines
that specify what mechanism/protocol/driver to use at the four
layers: NETSTACK_CONF_NETWORK, NETSTACK_CONF_MAC, NETSTACK_CONF_RDC,
NETSTACK_CONF_RADIO.
* Adds a callback mechanism to inform the MAC and network layers about
the fate of a transmitted packet: if the packet was not possible to
transmit, the cause of the failure is reported, and if the packets
was successfully transmitted, the number of tries before it was
finally transmitted is reported.
* NULL-protocols at both the MAC and RDC layers: nullmac and nullrdc,
which can be used when MAC and RDC functionality is not needed.
* Extends the radio API with three new functions that enable more
efficient radio duty cycling protocols: channel check, pending
packet, and receiving packet.
* New initialization mechanism, which takes advantage of the NETSTACK
#defines.
2010-02-18 22:48:39 +01:00
|
|
|
#define NETSTACK_CONF_RDC contikimac_driver
|
2010-10-21 00:21:16 +02:00
|
|
|
#endif /* NETSTACK_CONF_RDC */
|
|
|
|
|
|
|
|
#ifndef NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE
|
|
|
|
#define NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE 8
|
|
|
|
#endif /* NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE */
|
2010-10-03 22:40:42 +02:00
|
|
|
|
2010-10-21 00:21:16 +02:00
|
|
|
#ifndef NETSTACK_CONF_RADIO
|
|
|
|
#define NETSTACK_CONF_RADIO cc2420_driver
|
|
|
|
#endif /* NETSTACK_CONF_RADIO */
|
|
|
|
|
|
|
|
#ifndef NETSTACK_CONF_FRAMER
|
2010-03-01 14:30:21 +01:00
|
|
|
#define NETSTACK_CONF_FRAMER framer_802154
|
2010-10-21 00:21:16 +02:00
|
|
|
#endif /* NETSTACK_CONF_FRAMER */
|
2010-02-03 17:48:04 +01:00
|
|
|
|
2010-10-21 00:21:16 +02:00
|
|
|
#ifndef CC2420_CONF_AUTOACK
|
A work-in-progress rework of the Contiki MAC and radio layers. The
main ideas are:
* Separates the Contiki low-layer network stack into four layers:
network (e.g. sicslowpan / rime), Medium Access Control MAC
(e.g. CSMA), Radio Duty Cycling RDC (e.g. ContikiMAC, X-MAC), and
radio (e.g. cc2420).
* Introduces a new way to configure the network stack. Four #defines
that specify what mechanism/protocol/driver to use at the four
layers: NETSTACK_CONF_NETWORK, NETSTACK_CONF_MAC, NETSTACK_CONF_RDC,
NETSTACK_CONF_RADIO.
* Adds a callback mechanism to inform the MAC and network layers about
the fate of a transmitted packet: if the packet was not possible to
transmit, the cause of the failure is reported, and if the packets
was successfully transmitted, the number of tries before it was
finally transmitted is reported.
* NULL-protocols at both the MAC and RDC layers: nullmac and nullrdc,
which can be used when MAC and RDC functionality is not needed.
* Extends the radio API with three new functions that enable more
efficient radio duty cycling protocols: channel check, pending
packet, and receiving packet.
* New initialization mechanism, which takes advantage of the NETSTACK
#defines.
2010-02-18 22:48:39 +01:00
|
|
|
#define CC2420_CONF_AUTOACK 1
|
2010-10-21 00:21:16 +02:00
|
|
|
#endif /* CC2420_CONF_AUTOACK */
|
|
|
|
|
2010-10-21 20:25:39 +02:00
|
|
|
|
2010-10-21 00:21:16 +02:00
|
|
|
#if WITH_UIP6
|
|
|
|
/* Network setup for IPv6 */
|
|
|
|
#define NETSTACK_CONF_NETWORK sicslowpan_driver
|
A work-in-progress rework of the Contiki MAC and radio layers. The
main ideas are:
* Separates the Contiki low-layer network stack into four layers:
network (e.g. sicslowpan / rime), Medium Access Control MAC
(e.g. CSMA), Radio Duty Cycling RDC (e.g. ContikiMAC, X-MAC), and
radio (e.g. cc2420).
* Introduces a new way to configure the network stack. Four #defines
that specify what mechanism/protocol/driver to use at the four
layers: NETSTACK_CONF_NETWORK, NETSTACK_CONF_MAC, NETSTACK_CONF_RDC,
NETSTACK_CONF_RADIO.
* Adds a callback mechanism to inform the MAC and network layers about
the fate of a transmitted packet: if the packet was not possible to
transmit, the cause of the failure is reported, and if the packets
was successfully transmitted, the number of tries before it was
finally transmitted is reported.
* NULL-protocols at both the MAC and RDC layers: nullmac and nullrdc,
which can be used when MAC and RDC functionality is not needed.
* Extends the radio API with three new functions that enable more
efficient radio duty cycling protocols: channel check, pending
packet, and receiving packet.
* New initialization mechanism, which takes advantage of the NETSTACK
#defines.
2010-02-18 22:48:39 +01:00
|
|
|
#define CXMAC_CONF_ANNOUNCEMENTS 0
|
|
|
|
#define XMAC_CONF_ANNOUNCEMENTS 0
|
|
|
|
|
2010-10-21 20:25:39 +02:00
|
|
|
#ifndef QUEUEBUF_CONF_NUM
|
2010-04-30 17:06:00 +02:00
|
|
|
#define QUEUEBUF_CONF_NUM 8
|
2010-10-21 20:25:39 +02:00
|
|
|
#endif
|
2010-04-30 17:06:00 +02:00
|
|
|
|
2010-02-03 17:48:04 +01:00
|
|
|
#else /* WITH_UIP6 */
|
A work-in-progress rework of the Contiki MAC and radio layers. The
main ideas are:
* Separates the Contiki low-layer network stack into four layers:
network (e.g. sicslowpan / rime), Medium Access Control MAC
(e.g. CSMA), Radio Duty Cycling RDC (e.g. ContikiMAC, X-MAC), and
radio (e.g. cc2420).
* Introduces a new way to configure the network stack. Four #defines
that specify what mechanism/protocol/driver to use at the four
layers: NETSTACK_CONF_NETWORK, NETSTACK_CONF_MAC, NETSTACK_CONF_RDC,
NETSTACK_CONF_RADIO.
* Adds a callback mechanism to inform the MAC and network layers about
the fate of a transmitted packet: if the packet was not possible to
transmit, the cause of the failure is reported, and if the packets
was successfully transmitted, the number of tries before it was
finally transmitted is reported.
* NULL-protocols at both the MAC and RDC layers: nullmac and nullrdc,
which can be used when MAC and RDC functionality is not needed.
* Extends the radio API with three new functions that enable more
efficient radio duty cycling protocols: channel check, pending
packet, and receiving packet.
* New initialization mechanism, which takes advantage of the NETSTACK
#defines.
2010-02-18 22:48:39 +01:00
|
|
|
|
|
|
|
/* Network setup for non-IPv6 (rime). */
|
|
|
|
|
|
|
|
#define NETSTACK_CONF_NETWORK rime_driver
|
2010-10-03 22:40:42 +02:00
|
|
|
|
2010-03-19 14:27:46 +01:00
|
|
|
#define COLLECT_CONF_ANNOUNCEMENTS 1
|
A work-in-progress rework of the Contiki MAC and radio layers. The
main ideas are:
* Separates the Contiki low-layer network stack into four layers:
network (e.g. sicslowpan / rime), Medium Access Control MAC
(e.g. CSMA), Radio Duty Cycling RDC (e.g. ContikiMAC, X-MAC), and
radio (e.g. cc2420).
* Introduces a new way to configure the network stack. Four #defines
that specify what mechanism/protocol/driver to use at the four
layers: NETSTACK_CONF_NETWORK, NETSTACK_CONF_MAC, NETSTACK_CONF_RDC,
NETSTACK_CONF_RADIO.
* Adds a callback mechanism to inform the MAC and network layers about
the fate of a transmitted packet: if the packet was not possible to
transmit, the cause of the failure is reported, and if the packets
was successfully transmitted, the number of tries before it was
finally transmitted is reported.
* NULL-protocols at both the MAC and RDC layers: nullmac and nullrdc,
which can be used when MAC and RDC functionality is not needed.
* Extends the radio API with three new functions that enable more
efficient radio duty cycling protocols: channel check, pending
packet, and receiving packet.
* New initialization mechanism, which takes advantage of the NETSTACK
#defines.
2010-02-18 22:48:39 +01:00
|
|
|
#define CXMAC_CONF_ANNOUNCEMENTS 0
|
|
|
|
#define XMAC_CONF_ANNOUNCEMENTS 0
|
2010-03-19 14:27:46 +01:00
|
|
|
#define CONTIKIMAC_CONF_ANNOUNCEMENTS 0
|
A work-in-progress rework of the Contiki MAC and radio layers. The
main ideas are:
* Separates the Contiki low-layer network stack into four layers:
network (e.g. sicslowpan / rime), Medium Access Control MAC
(e.g. CSMA), Radio Duty Cycling RDC (e.g. ContikiMAC, X-MAC), and
radio (e.g. cc2420).
* Introduces a new way to configure the network stack. Four #defines
that specify what mechanism/protocol/driver to use at the four
layers: NETSTACK_CONF_NETWORK, NETSTACK_CONF_MAC, NETSTACK_CONF_RDC,
NETSTACK_CONF_RADIO.
* Adds a callback mechanism to inform the MAC and network layers about
the fate of a transmitted packet: if the packet was not possible to
transmit, the cause of the failure is reported, and if the packets
was successfully transmitted, the number of tries before it was
finally transmitted is reported.
* NULL-protocols at both the MAC and RDC layers: nullmac and nullrdc,
which can be used when MAC and RDC functionality is not needed.
* Extends the radio API with three new functions that enable more
efficient radio duty cycling protocols: channel check, pending
packet, and receiving packet.
* New initialization mechanism, which takes advantage of the NETSTACK
#defines.
2010-02-18 22:48:39 +01:00
|
|
|
|
2010-02-23 19:44:52 +01:00
|
|
|
#define CONTIKIMAC_CONF_COMPOWER 1
|
A work-in-progress rework of the Contiki MAC and radio layers. The
main ideas are:
* Separates the Contiki low-layer network stack into four layers:
network (e.g. sicslowpan / rime), Medium Access Control MAC
(e.g. CSMA), Radio Duty Cycling RDC (e.g. ContikiMAC, X-MAC), and
radio (e.g. cc2420).
* Introduces a new way to configure the network stack. Four #defines
that specify what mechanism/protocol/driver to use at the four
layers: NETSTACK_CONF_NETWORK, NETSTACK_CONF_MAC, NETSTACK_CONF_RDC,
NETSTACK_CONF_RADIO.
* Adds a callback mechanism to inform the MAC and network layers about
the fate of a transmitted packet: if the packet was not possible to
transmit, the cause of the failure is reported, and if the packets
was successfully transmitted, the number of tries before it was
finally transmitted is reported.
* NULL-protocols at both the MAC and RDC layers: nullmac and nullrdc,
which can be used when MAC and RDC functionality is not needed.
* Extends the radio API with three new functions that enable more
efficient radio duty cycling protocols: channel check, pending
packet, and receiving packet.
* New initialization mechanism, which takes advantage of the NETSTACK
#defines.
2010-02-18 22:48:39 +01:00
|
|
|
#define XMAC_CONF_COMPOWER 1
|
|
|
|
#define CXMAC_CONF_COMPOWER 1
|
2010-02-23 19:44:52 +01:00
|
|
|
|
2010-10-03 22:40:42 +02:00
|
|
|
#define COLLECT_NEIGHBOR_CONF_MAX_COLLECT_NEIGHBORS 32
|
2010-02-23 19:44:52 +01:00
|
|
|
|
2010-10-21 00:21:16 +02:00
|
|
|
#define QUEUEBUF_CONF_NUM 16
|
2009-02-14 23:52:24 +01:00
|
|
|
|
2010-04-30 17:06:00 +02:00
|
|
|
#endif /* WITH_UIP6 */
|
|
|
|
|
2009-03-12 22:58:20 +01:00
|
|
|
#define PACKETBUF_CONF_ATTRS_INLINE 1
|
2008-02-25 03:14:34 +01:00
|
|
|
|
2010-02-03 17:48:04 +01:00
|
|
|
#ifndef RF_CHANNEL
|
|
|
|
#define RF_CHANNEL 26
|
|
|
|
#endif /* RF_CHANNEL */
|
2009-05-10 23:15:16 +02:00
|
|
|
|
2010-06-14 09:04:20 +02:00
|
|
|
#define CONTIKIMAC_CONF_BROADCAST_RATE_LIMIT 0
|
|
|
|
|
2009-04-06 15:31:00 +02:00
|
|
|
#define IEEE802154_CONF_PANID 0xABCD
|
|
|
|
|
2008-01-08 09:19:56 +01:00
|
|
|
#define SHELL_VARS_CONF_RAM_BEGIN 0x1100
|
|
|
|
#define SHELL_VARS_CONF_RAM_END 0x2000
|
|
|
|
|
2008-02-03 22:01:36 +01:00
|
|
|
#define PROFILE_CONF_ON 0
|
2007-11-13 22:10:50 +01:00
|
|
|
#define ENERGEST_CONF_ON 1
|
|
|
|
|
2009-01-15 10:04:04 +01:00
|
|
|
#define ELFLOADER_CONF_TEXT_IN_ROM 0
|
2009-05-18 12:32:56 +02:00
|
|
|
#define ELFLOADER_CONF_DATAMEMORY_SIZE 0x400
|
|
|
|
#define ELFLOADER_CONF_TEXTMEMORY_SIZE 0x800
|
2007-03-23 01:00:15 +01:00
|
|
|
|
2007-08-16 15:10:53 +02:00
|
|
|
#define AODV_COMPLIANCE
|
2007-04-04 13:39:49 +02:00
|
|
|
#define AODV_NUM_RT_ENTRIES 32
|
2006-08-02 16:44:46 +02:00
|
|
|
|
|
|
|
#define WITH_ASCII 1
|
|
|
|
|
2008-02-03 22:01:36 +01:00
|
|
|
#define PROCESS_CONF_NUMEVENTS 8
|
|
|
|
#define PROCESS_CONF_STATS 1
|
2008-01-08 09:19:56 +01:00
|
|
|
/*#define PROCESS_CONF_FASTPOLL 4*/
|
2006-08-02 16:44:46 +02:00
|
|
|
|
2008-11-05 15:31:06 +01:00
|
|
|
#ifdef WITH_UIP6
|
2008-11-06 16:14:24 +01:00
|
|
|
|
2009-04-06 16:59:49 +02:00
|
|
|
#define RIMEADDR_CONF_SIZE 8
|
2008-11-06 16:14:24 +01:00
|
|
|
|
2008-11-05 15:31:06 +01:00
|
|
|
#define UIP_CONF_LL_802154 1
|
|
|
|
#define UIP_CONF_LLH_LEN 0
|
|
|
|
|
2010-04-30 15:52:14 +02:00
|
|
|
#define UIP_CONF_ROUTER 1
|
2010-10-21 00:21:16 +02:00
|
|
|
#ifndef UIP_CONF_IPV6_RPL
|
2010-04-30 15:52:14 +02:00
|
|
|
#define UIP_CONF_IPV6_RPL 1
|
2010-10-21 00:21:16 +02:00
|
|
|
#endif /* UIP_CONF_IPV6_RPL */
|
2010-04-30 15:52:14 +02:00
|
|
|
|
2010-06-21 21:57:18 +02:00
|
|
|
/* configure number of neighbors and routes */
|
2010-06-14 09:04:20 +02:00
|
|
|
#define UIP_CONF_DS6_NBR_NBU 30
|
|
|
|
#define UIP_CONF_DS6_ROUTE_NBU 30
|
2010-04-30 17:06:00 +02:00
|
|
|
|
|
|
|
#define UIP_CONF_ND6_SEND_RA 0
|
|
|
|
#define UIP_CONF_ND6_REACHABLE_TIME 600000
|
|
|
|
#define UIP_CONF_ND6_RETRANS_TIMER 10000
|
2009-04-06 15:23:14 +02:00
|
|
|
|
2008-11-05 15:31:06 +01:00
|
|
|
#define UIP_CONF_IPV6 1
|
2010-06-14 09:04:20 +02:00
|
|
|
#define UIP_CONF_IPV6_QUEUE_PKT 0
|
2008-11-05 15:31:06 +01:00
|
|
|
#define UIP_CONF_IPV6_CHECKS 1
|
|
|
|
#define UIP_CONF_IPV6_REASSEMBLY 0
|
|
|
|
#define UIP_CONF_NETIF_MAX_ADDRESSES 3
|
|
|
|
#define UIP_CONF_ND6_MAX_PREFIXES 3
|
|
|
|
#define UIP_CONF_ND6_MAX_NEIGHBORS 4
|
|
|
|
#define UIP_CONF_ND6_MAX_DEFROUTERS 2
|
|
|
|
#define UIP_CONF_IP_FORWARD 0
|
2010-10-21 20:25:39 +02:00
|
|
|
#ifndef UIP_CONF_BUFFER_SIZE
|
2010-02-06 11:00:25 +01:00
|
|
|
#define UIP_CONF_BUFFER_SIZE 240
|
2010-10-21 20:25:39 +02:00
|
|
|
#endif
|
2008-11-05 15:31:06 +01:00
|
|
|
|
|
|
|
#define SICSLOWPAN_CONF_COMPRESSION_IPV6 0
|
|
|
|
#define SICSLOWPAN_CONF_COMPRESSION_HC1 1
|
|
|
|
#define SICSLOWPAN_CONF_COMPRESSION_HC01 2
|
2010-02-25 16:51:37 +01:00
|
|
|
#define SICSLOWPAN_CONF_COMPRESSION SICSLOWPAN_COMPRESSION_HC06
|
2010-02-06 11:00:25 +01:00
|
|
|
#ifndef SICSLOWPAN_CONF_FRAG
|
2010-02-08 23:12:29 +01:00
|
|
|
#define SICSLOWPAN_CONF_FRAG 1
|
|
|
|
#define SICSLOWPAN_CONF_MAXAGE 8
|
2010-02-06 11:00:25 +01:00
|
|
|
#endif /* SICSLOWPAN_CONF_FRAG */
|
2008-11-06 21:45:06 +01:00
|
|
|
#define SICSLOWPAN_CONF_CONVENTIONAL_MAC 1
|
2009-04-06 18:01:11 +02:00
|
|
|
#define SICSLOWPAN_CONF_MAX_ADDR_CONTEXTS 2
|
2010-02-03 17:48:04 +01:00
|
|
|
#else /* WITH_UIP6 */
|
2008-11-05 15:31:06 +01:00
|
|
|
#define UIP_CONF_IP_FORWARD 1
|
2009-04-06 15:23:14 +02:00
|
|
|
#define UIP_CONF_BUFFER_SIZE 108
|
2008-11-05 15:31:06 +01:00
|
|
|
#endif /* WITH_UIP6 */
|
|
|
|
|
2008-02-03 22:01:36 +01:00
|
|
|
#define UIP_CONF_ICMP_DEST_UNREACH 1
|
|
|
|
|
2006-08-02 16:44:46 +02:00
|
|
|
#define UIP_CONF_DHCP_LIGHT
|
|
|
|
#define UIP_CONF_LLH_LEN 0
|
2010-10-21 20:25:39 +02:00
|
|
|
#ifndef UIP_CONF_RECEIVE_WINDOW
|
2010-01-28 14:38:40 +01:00
|
|
|
#define UIP_CONF_RECEIVE_WINDOW 48
|
2010-10-21 20:25:39 +02:00
|
|
|
#endif
|
|
|
|
#ifndef UIP_CONF_TCP_MSS
|
2010-01-28 14:38:40 +01:00
|
|
|
#define UIP_CONF_TCP_MSS 48
|
2010-10-21 20:25:39 +02:00
|
|
|
#endif
|
2006-08-02 16:44:46 +02:00
|
|
|
#define UIP_CONF_MAX_CONNECTIONS 4
|
|
|
|
#define UIP_CONF_MAX_LISTENPORTS 8
|
2007-04-11 17:22:05 +02:00
|
|
|
#define UIP_CONF_UDP_CONNS 12
|
2007-04-04 13:39:49 +02:00
|
|
|
#define UIP_CONF_FWCACHE_SIZE 30
|
2006-08-02 16:44:46 +02:00
|
|
|
#define UIP_CONF_BROADCAST 1
|
|
|
|
#define UIP_ARCH_IPCHKSUM 1
|
2009-04-06 18:01:11 +02:00
|
|
|
#define UIP_CONF_UDP 1
|
2006-08-02 16:44:46 +02:00
|
|
|
#define UIP_CONF_UDP_CHECKSUMS 1
|
|
|
|
#define UIP_CONF_PINGADDRCONF 0
|
|
|
|
#define UIP_CONF_LOGGING 0
|
|
|
|
|
2008-02-24 22:11:35 +01:00
|
|
|
#define UIP_CONF_TCP_SPLIT 0
|
|
|
|
|
2006-08-02 16:44:46 +02:00
|
|
|
|
2009-02-14 23:52:24 +01:00
|
|
|
|
2007-05-22 23:12:15 +02:00
|
|
|
|
2006-08-02 16:44:46 +02:00
|
|
|
#endif /* CONTIKI_CONF_H */
|