Go to the documentation of this file.
40 #ifndef __TSCH_CONF_H__
41 #define __TSCH_CONF_H__
51 #define TSCH_HOPPING_SEQUENCE_16_16 (uint8_t[]){ 16, 17, 23, 18, 26, 15, 25, 22, 19, 11, 12, 13, 24, 14, 20, 21 }
53 #define TSCH_HOPPING_SEQUENCE_4_16 (uint8_t[]){ 20, 26, 25, 26, 15, 15, 25, 20, 26, 15, 26, 25, 20, 15, 20, 25 }
55 #define TSCH_HOPPING_SEQUENCE_4_4 (uint8_t[]){ 15, 25, 26, 20 }
57 #define TSCH_HOPPING_SEQUENCE_1_1 (uint8_t[]){ 20 }
60 #ifdef TSCH_CONF_DEFAULT_HOPPING_SEQUENCE
61 #define TSCH_DEFAULT_HOPPING_SEQUENCE TSCH_CONF_DEFAULT_HOPPING_SEQUENCE
63 #define TSCH_DEFAULT_HOPPING_SEQUENCE TSCH_HOPPING_SEQUENCE_4_4
67 #ifdef TSCH_CONF_JOIN_HOPPING_SEQUENCE
68 #define TSCH_JOIN_HOPPING_SEQUENCE TSCH_CONF_JOIN_HOPPING_SEQUENCE
70 #define TSCH_JOIN_HOPPING_SEQUENCE TSCH_DEFAULT_HOPPING_SEQUENCE
75 #ifdef TSCH_CONF_HOPPING_SEQUENCE_MAX_LEN
76 #define TSCH_HOPPING_SEQUENCE_MAX_LEN TSCH_CONF_HOPPING_SEQUENCE_MAX_LEN
78 #define TSCH_HOPPING_SEQUENCE_MAX_LEN 16
83 #ifndef TSCH_CONF_DEFAULT_TIMESLOT_LENGTH
84 #define TSCH_CONF_DEFAULT_TIMESLOT_LENGTH 10000
88 #ifndef TSCH_CONF_RX_WAIT
89 #define TSCH_CONF_RX_WAIT 2200
106 #if TSCH_CONF_DEFAULT_TIMESLOT_LENGTH == 10000
109 #define TSCH_DEFAULT_TS_CCA_OFFSET 1800
110 #define TSCH_DEFAULT_TS_CCA 128
111 #define TSCH_DEFAULT_TS_TX_OFFSET 2120
112 #define TSCH_DEFAULT_TS_RX_OFFSET (TSCH_DEFAULT_TS_TX_OFFSET - (TSCH_CONF_RX_WAIT / 2))
113 #define TSCH_DEFAULT_TS_RX_ACK_DELAY 800
114 #define TSCH_DEFAULT_TS_TX_ACK_DELAY 1000
115 #define TSCH_DEFAULT_TS_RX_WAIT TSCH_CONF_RX_WAIT
116 #define TSCH_DEFAULT_TS_ACK_WAIT 400
117 #define TSCH_DEFAULT_TS_RX_TX 192
118 #define TSCH_DEFAULT_TS_MAX_ACK 2400
119 #define TSCH_DEFAULT_TS_MAX_TX 4256
120 #define TSCH_DEFAULT_TS_TIMESLOT_LENGTH 10000
122 #elif TSCH_CONF_DEFAULT_TIMESLOT_LENGTH == 15000
125 #define TSCH_DEFAULT_TS_CCA_OFFSET 1800
126 #define TSCH_DEFAULT_TS_CCA 128
127 #define TSCH_DEFAULT_TS_TX_OFFSET 4000
128 #define TSCH_DEFAULT_TS_RX_OFFSET (TSCH_DEFAULT_TS_TX_OFFSET - (TSCH_CONF_RX_WAIT / 2))
129 #define TSCH_DEFAULT_TS_RX_ACK_DELAY 3600
130 #define TSCH_DEFAULT_TS_TX_ACK_DELAY 4000
131 #define TSCH_DEFAULT_TS_RX_WAIT TSCH_CONF_RX_WAIT
132 #define TSCH_DEFAULT_TS_ACK_WAIT 800
133 #define TSCH_DEFAULT_TS_RX_TX 2072
134 #define TSCH_DEFAULT_TS_MAX_ACK 2400
135 #define TSCH_DEFAULT_TS_MAX_TX 4256
136 #define TSCH_DEFAULT_TS_TIMESLOT_LENGTH 15000
138 #elif TSCH_CONF_DEFAULT_TIMESLOT_LENGTH == 65000U
146 #define TSCH_DEFAULT_TS_CCA_OFFSET 1800
147 #define TSCH_DEFAULT_TS_CCA 128
148 #define TSCH_DEFAULT_TS_TX_OFFSET 52000
149 #define TSCH_DEFAULT_TS_RX_OFFSET (TSCH_DEFAULT_TS_TX_OFFSET - (TSCH_CONF_RX_WAIT / 2))
150 #define TSCH_DEFAULT_TS_RX_ACK_DELAY 58600
151 #define TSCH_DEFAULT_TS_TX_ACK_DELAY 59000
152 #define TSCH_DEFAULT_TS_RX_WAIT TSCH_CONF_RX_WAIT
153 #define TSCH_DEFAULT_TS_ACK_WAIT 800
154 #define TSCH_DEFAULT_TS_RX_TX 2072
155 #define TSCH_DEFAULT_TS_MAX_ACK 2400
156 #define TSCH_DEFAULT_TS_MAX_TX 4256
157 #define TSCH_DEFAULT_TS_TIMESLOT_LENGTH 65000
160 #error "TSCH: Unsupported default timeslot length"
165 #ifdef TSCH_CONF_WITH_LINK_SELECTOR
166 #define TSCH_WITH_LINK_SELECTOR TSCH_CONF_WITH_LINK_SELECTOR
168 #define TSCH_WITH_LINK_SELECTOR 0
172 #ifdef TSCH_CONF_ADAPTIVE_TIMESYNC
173 #define TSCH_ADAPTIVE_TIMESYNC TSCH_CONF_ADAPTIVE_TIMESYNC
175 #define TSCH_ADAPTIVE_TIMESYNC 0
179 #ifdef TSCH_CONF_HW_FRAME_FILTERING
180 #define TSCH_HW_FRAME_FILTERING TSCH_CONF_HW_FRAME_FILTERING
182 #define TSCH_HW_FRAME_FILTERING 1