Contiki 2.6

contiki-conf.h

00001 /*
00002  * Copyright (c) 2010, Swedish Institute of Computer Science.
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  * 1. Redistributions of source code must retain the above copyright
00009  *    notice, this list of conditions and the following disclaimer.
00010  * 2. Redistributions in binary form must reproduce the above copyright
00011  *    notice, this list of conditions and the following disclaimer in the
00012  *    documentation and/or other materials provided with the distribution.
00013  * 3. Neither the name of the Institute nor the names of its contributors
00014  *    may be used to endorse or promote products derived from this software
00015  *    without specific prior written permission.
00016  *
00017  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
00018  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
00019  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
00020  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
00021  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
00022  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
00023  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
00024  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
00025  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
00026  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
00027  * SUCH DAMAGE.
00028  *
00029  */
00030 
00031 #ifndef CONTIKI_CONF_H
00032 #define CONTIKI_CONF_H
00033 
00034 
00035 #include "platform-conf.h"
00036 
00037 #define XMAC_CONF_COMPOWER          1
00038 #define CXMAC_CONF_COMPOWER         1
00039 
00040 #if WITH_UIP6
00041 
00042 /* Network setup for IPv6 */
00043 #define NETSTACK_CONF_NETWORK sicslowpan_driver
00044 #define NETSTACK_CONF_MAC     csma_driver
00045 #define NETSTACK_CONF_RDC     contikimac_driver
00046 #define NETSTACK_CONF_RADIO   cc2420_driver
00047 #define NETSTACK_CONF_FRAMER  framer_802154
00048 
00049 /* Specify a minimum packet size for 6lowpan compression to be
00050    enabled. This is needed for ContikiMAC, which needs packets to be
00051    larger than a specified size, if no ContikiMAC header should be
00052    used. */
00053 #define SICSLOWPAN_CONF_COMPRESSION_THRESHOLD 63
00054 #define CONTIKIMAC_CONF_WITH_CONTIKIMAC_HEADER 0
00055 
00056 #define CC2420_CONF_AUTOACK              1
00057 #define NETSTACK_RDC_CHANNEL_CHECK_RATE  8
00058 #define RIME_CONF_NO_POLITE_ANNOUCEMENTS 0
00059 #define CXMAC_CONF_ANNOUNCEMENTS         0
00060 #define XMAC_CONF_ANNOUNCEMENTS          0
00061 
00062 #define QUEUEBUF_CONF_NUM                4 
00063 
00064 
00065 #else /* WITH_UIP6 */
00066 
00067 /* Network setup for non-IPv6 (rime). */
00068 
00069 #define NETSTACK_CONF_NETWORK rime_driver
00070 #define NETSTACK_CONF_MAC     csma_driver
00071 #define NETSTACK_CONF_RDC     contikimac_driver
00072 #define NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE 8
00073 #define NETSTACK_CONF_FRAMER  framer_802154
00074 
00075 #define CC2420_CONF_AUTOACK              1
00076 
00077 #define COLLECT_CONF_ANNOUNCEMENTS       1
00078 #define RIME_CONF_NO_POLITE_ANNOUCEMENTS 0
00079 #define CXMAC_CONF_ANNOUNCEMENTS         0
00080 #define XMAC_CONF_ANNOUNCEMENTS          0
00081 #define CONTIKIMAC_CONF_ANNOUNCEMENTS    0
00082 
00083 #define CONTIKIMAC_CONF_COMPOWER         1
00084 #define XMAC_CONF_COMPOWER               1
00085 #define CXMAC_CONF_COMPOWER              1
00086 
00087 #define COLLECT_NEIGHBOR_CONF_MAX_NEIGHBORS      32
00088 
00089 #define QUEUEBUF_CONF_NUM          8
00090 
00091 #endif /* WITH_UIP6 */
00092 
00093 #define PACKETBUF_CONF_ATTRS_INLINE 1
00094 
00095 #ifndef RF_CHANNEL
00096 #define RF_CHANNEL              26
00097 #endif /* RF_CHANNEL */
00098 
00099 #define IEEE802154_CONF_PANID       0xABCD
00100 
00101 #define SHELL_VARS_CONF_RAM_BEGIN 0x1100
00102 #define SHELL_VARS_CONF_RAM_END 0x2000
00103 
00104 
00105 #define CFS_CONF_OFFSET_TYPE    long
00106 
00107 #define PROFILE_CONF_ON 0
00108 #define ENERGEST_CONF_ON 1
00109 
00110 #define ELFLOADER_CONF_TEXT_IN_ROM 0
00111 #define ELFLOADER_CONF_DATAMEMORY_SIZE 0x400
00112 #define ELFLOADER_CONF_TEXTMEMORY_SIZE 0x800
00113 
00114 #define AODV_COMPLIANCE
00115 #define AODV_NUM_RT_ENTRIES 32
00116 
00117 #define WITH_ASCII 1
00118 
00119 #define PROCESS_CONF_NUMEVENTS 8
00120 #define PROCESS_CONF_STATS 1
00121 /*#define PROCESS_CONF_FASTPOLL    4*/
00122 
00123 
00124 #define UART0_CONF_TX_WITH_INTERRUPT 0 // So far, printfs without interrupt.
00125 
00126 #ifdef WITH_UIP6
00127 
00128 #define RIMEADDR_CONF_SIZE              8
00129 
00130 #define UIP_CONF_LL_802154              1
00131 #define UIP_CONF_LLH_LEN                0
00132 
00133 #define UIP_CONF_ROUTER                 1
00134 #define UIP_CONF_IPV6_RPL               1
00135 
00136 /* Handle 10 neighbors */
00137 #define UIP_CONF_DS6_NBR_NBU     15
00138 /* Handle 10 routes    */
00139 #define UIP_CONF_DS6_ROUTE_NBU   15
00140 
00141 #define UIP_CONF_ND6_SEND_RA            0
00142 #define UIP_CONF_ND6_REACHABLE_TIME     600000
00143 #define UIP_CONF_ND6_RETRANS_TIMER      10000
00144 
00145 #define UIP_CONF_IPV6                   1
00146 #define UIP_CONF_IPV6_QUEUE_PKT         0
00147 #define UIP_CONF_IPV6_CHECKS            1
00148 #define UIP_CONF_IPV6_REASSEMBLY        0
00149 #define UIP_CONF_NETIF_MAX_ADDRESSES    3
00150 #define UIP_CONF_ND6_MAX_PREFIXES       3
00151 #define UIP_CONF_ND6_MAX_NEIGHBORS      4
00152 #define UIP_CONF_ND6_MAX_DEFROUTERS     2
00153 #define UIP_CONF_IP_FORWARD             0
00154 #define UIP_CONF_BUFFER_SIZE            140
00155 
00156 #define SICSLOWPAN_CONF_COMPRESSION_IPV6        0
00157 #define SICSLOWPAN_CONF_COMPRESSION_HC1         1
00158 #define SICSLOWPAN_CONF_COMPRESSION_HC01        2
00159 #define SICSLOWPAN_CONF_COMPRESSION             SICSLOWPAN_COMPRESSION_HC06
00160 #ifndef SICSLOWPAN_CONF_FRAG
00161 #define SICSLOWPAN_CONF_FRAG                    1
00162 #define SICSLOWPAN_CONF_MAXAGE                  8
00163 #endif /* SICSLOWPAN_CONF_FRAG */
00164 #define SICSLOWPAN_CONF_CONVENTIONAL_MAC        1
00165 #define SICSLOWPAN_CONF_MAX_ADDR_CONTEXTS       2
00166 #else /* WITH_UIP6 */
00167 #define UIP_CONF_IP_FORWARD      1
00168 #define UIP_CONF_BUFFER_SIZE     108
00169 #endif /* WITH_UIP6 */
00170 
00171 #define UIP_CONF_ICMP_DEST_UNREACH 1
00172 
00173 #define UIP_CONF_DHCP_LIGHT
00174 #define UIP_CONF_LLH_LEN         0
00175 #define UIP_CONF_RECEIVE_WINDOW  48
00176 #define UIP_CONF_TCP_MSS         48
00177 #define UIP_CONF_MAX_CONNECTIONS 4
00178 #define UIP_CONF_MAX_LISTENPORTS 8
00179 #define UIP_CONF_UDP_CONNS       12
00180 #define UIP_CONF_FWCACHE_SIZE    30
00181 #define UIP_CONF_BROADCAST       1
00182 #define UIP_ARCH_IPCHKSUM        1
00183 #define UIP_CONF_UDP             1
00184 #define UIP_CONF_UDP_CHECKSUMS   1
00185 #define UIP_CONF_PINGADDRCONF    0
00186 #define UIP_CONF_LOGGING         0
00187 
00188 #define UIP_CONF_TCP_SPLIT       0
00189 
00190 
00191 #ifdef PROJECT_CONF_H
00192 #include PROJECT_CONF_H
00193 #endif /* PROJECT_CONF_H */
00194 
00195 
00196 
00197 #endif /* CONTIKI_CONF_H */