Contiki 3.x
contiki-conf.h
1 /**
2  * Copyright (c) 2014, Analog Devices, Inc. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted (subject to the limitations in the
6  * disclaimer below) provided that the following conditions are met:
7  *
8  * - Redistributions of source code must retain the above copyright
9  * notice, this list of conditions and the following disclaimer.
10  *
11  * - Redistributions in binary form must reproduce the above copyright
12  * notice, this list of conditions and the following disclaimer in the
13  * documentation and/or other materials provided with the
14  * distribution.
15  *
16  * - Neither the name of Analog Devices, Inc. nor the names of its
17  * contributors may be used to endorse or promote products derived
18  * from this software without specific prior written permission.
19  *
20  * NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE
21  * GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT
22  * HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
23  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
24  * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
25  * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
26  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
27  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
28  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
29  * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
30  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
31  * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
32  * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33  */
34 /**
35  * \author Jim Paris <jim.paris@rigado.com>
36  */
37 
38 #ifndef __CONTIKI_CONF_H__
39 #define __CONTIKI_CONF_H__
40 
41 #include <stdint.h>
42 
43 #include "aducrf101-contiki.h"
44 #include "platform-conf.h"
45 
46 /* Clock ticks per second */
47 #define CLOCK_CONF_SECOND 1000
48 
49 #define CCIF
50 #define CLIF
51 
52 /* start of conitki config. */
53 #define PLATFORM_HAS_LEDS 1
54 #define PLATFORM_HAS_BUTTON 1
55 
56 #define LINKADDR_CONF_SIZE 8
57 
58 #if WITH_UIP6
59 /* Network setup for IPv6 */
60 #define NETSTACK_CONF_NETWORK sicslowpan_driver
61 #define NETSTACK_CONF_MAC nullmac_driver
62 #define NETSTACK_CONF_RDC nullrdc_driver
63 #define NETSTACK_CONF_RADIO aducrf101_radio_driver
64 #define NETSTACK_CONF_FRAMER framer_802154
65 
66 #define NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE 8
67 #define RIME_CONF_NO_POLITE_ANNOUCEMENTS 0
68 #define CXMAC_CONF_ANNOUNCEMENTS 0
69 #define XMAC_CONF_ANNOUNCEMENTS 0
70 
71 #else /* WITH_UIP6 */
72 
73 /* Network setup for non-IPv6 (rime). */
74 #define NETSTACK_CONF_NETWORK rime_driver
75 #define NETSTACK_CONF_MAC csma_driver
76 #define NETSTACK_CONF_RDC nullrdc_driver
77 #define NETSTACK_CONF_RADIO aducrf101_radio_driver
78 #define NETSTACK_CONF_FRAMER framer_802154
79 
80 #define NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE 8
81 
82 #define COLLECT_CONF_ANNOUNCEMENTS 1
83 #define RIME_CONF_NO_POLITE_ANNOUCEMENTS 0
84 #define CXMAC_CONF_ANNOUNCEMENTS 0
85 #define XMAC_CONF_ANNOUNCEMENTS 0
86 #define CONTIKIMAC_CONF_ANNOUNCEMENTS 0
87 
88 #define CONTIKIMAC_CONF_COMPOWER 0
89 #define XMAC_CONF_COMPOWER 0
90 #define CXMAC_CONF_COMPOWER 0
91 
92 #define COLLECT_NBR_TABLE_CONF_MAX_NEIGHBORS 16
93 
94 #endif /* WITH_UIP6 */
95 
96 #define QUEUEBUF_CONF_NUM 4
97 
98 #define PACKETBUF_CONF_ATTRS_INLINE 1
99 
100 #ifndef RF_CHANNEL
101 #define RF_CHANNEL 868000000
102 #endif /* RF_CHANNEL */
103 
104 #define CONTIKIMAC_CONF_BROADCAST_RATE_LIMIT 0
105 
106 #define IEEE802154_CONF_PANID 0xABCD
107 
108 #define PROFILE_CONF_ON 0
109 #define ENERGEST_CONF_ON 0
110 
111 #define AODV_COMPLIANCE
112 #define AODV_NUM_RT_ENTRIES 16
113 
114 #define WITH_ASCII 1
115 
116 #define PROCESS_CONF_NUMEVENTS 8
117 #define PROCESS_CONF_STATS 1
118 
119 #ifdef WITH_UIP6
120 
121 #define LINKADDR_CONF_SIZE 8
122 
123 #define UIP_CONF_LL_802154 1
124 #define UIP_CONF_LLH_LEN 0
125 
126 #ifndef UIP_CONF_ROUTER
127 #define UIP_CONF_ROUTER 1
128 #endif
129 
130 #ifndef UIP_CONF_IPV6_RPL
131 #define UIP_CONF_IPV6_RPL 1
132 #endif
133 
134 #define NBR_TABLE_CONF_MAX_NEIGHBORS 16
135 #define UIP_CONF_MAX_ROUTES 16
136 
137 #define UIP_CONF_ND6_SEND_RA 0
138 #define UIP_CONF_ND6_REACHABLE_TIME 600000
139 #define UIP_CONF_ND6_RETRANS_TIMER 10000
140 
141 #define UIP_CONF_IPV6 1
142 #define UIP_CONF_IPV6_QUEUE_PKT 0
143 #define UIP_CONF_IPV6_CHECKS 1
144 #define UIP_CONF_IPV6_REASSEMBLY 0
145 #define UIP_CONF_NETIF_MAX_ADDRESSES 3
146 #define UIP_CONF_ND6_MAX_PREFIXES 3
147 #define UIP_CONF_ND6_MAX_DEFROUTERS 2
148 #define UIP_CONF_IP_FORWARD 0
149 #define UIP_CONF_BUFFER_SIZE 240
150 #define SICSLOWPAN_CONF_FRAG 1
151 #define SICSLOWPAN_CONF_MAXAGE 8
152 
153 #define SICSLOWPAN_CONF_COMPRESSION_IPV6 0
154 #define SICSLOWPAN_CONF_COMPRESSION_HC1 1
155 #define SICSLOWPAN_CONF_COMPRESSION_HC01 2
156 #define SICSLOWPAN_CONF_COMPRESSION SICSLOWPAN_COMPRESSION_HC06
157 #ifndef SICSLOWPAN_CONF_FRAG
158 #define SICSLOWPAN_CONF_FRAG 1
159 #define SICSLOWPAN_CONF_MAXAGE 8
160 #endif /* SICSLOWPAN_CONF_FRAG */
161 #define SICSLOWPAN_CONF_CONVENTIONAL_MAC 1
162 #define SICSLOWPAN_CONF_MAX_ADDR_CONTEXTS 2
163 #else /* WITH_UIP6 */
164 #define UIP_CONF_IP_FORWARD 1
165 #define UIP_CONF_BUFFER_SIZE 140
166 #endif /* WITH_UIP6 */
167 
168 #define UIP_CONF_ICMP_DEST_UNREACH 1
169 
170 #define UIP_CONF_DHCP_LIGHT
171 #define UIP_CONF_LLH_LEN 0
172 #define UIP_CONF_RECEIVE_WINDOW 48
173 #define UIP_CONF_TCP_MSS 48
174 #define UIP_CONF_MAX_CONNECTIONS 4
175 #define UIP_CONF_MAX_LISTENPORTS 4
176 #define UIP_CONF_UDP_CONNS 8
177 #define UIP_CONF_FWCACHE_SIZE 16
178 #define UIP_CONF_BROADCAST 1
179 #define UIP_CONF_UDP 1
180 #define UIP_CONF_UDP_CHECKSUMS 1
181 #define UIP_CONF_PINGADDRCONF 0
182 #define UIP_CONF_LOGGING 0
183 
184 #define UIP_CONF_TCP_SPLIT 0
185 
186 /* include the project config */
187 /* PROJECT_CONF_H might be defined in the project Makefile */
188 #ifdef PROJECT_CONF_H
189 #include PROJECT_CONF_H
190 #endif /* PROJECT_CONF_H */
191 
192 #endif /* __CONTIKI_CONF_H__ */