40 #include "net/mac/tsch/tsch-security.h"
45 #ifdef TSCH_CONF_KEEPALIVE_TIMEOUT
46 #define TSCH_KEEPALIVE_TIMEOUT TSCH_CONF_KEEPALIVE_TIMEOUT
49 #define TSCH_KEEPALIVE_TIMEOUT (12 * CLOCK_SECOND)
53 #ifdef TSCH_CONF_DESYNC_THRESHOLD
54 #define TSCH_DESYNC_THRESHOLD TSCH_CONF_DESYNC_THRESHOLD
56 #define TSCH_DESYNC_THRESHOLD (4 * TSCH_KEEPALIVE_TIMEOUT)
60 #ifdef TSCH_CONF_EB_PERIOD
61 #define TSCH_EB_PERIOD TSCH_CONF_EB_PERIOD
63 #define TSCH_EB_PERIOD (4 * CLOCK_SECOND)
67 #ifdef TSCH_CONF_MAX_JOIN_PRIORITY
68 #define TSCH_MAX_JOIN_PRIORITY TSCH_CONF_MAX_JOIN_PRIORITY
70 #define TSCH_MAX_JOIN_PRIORITY 32
77 #ifdef TSCH_CONF_AUTOSTART
78 #define TSCH_AUTOSTART TSCH_CONF_AUTOSTART
80 #define TSCH_AUTOSTART 1
84 #ifdef TSCH_CONF_JOIN_SECURED_ONLY
85 #define TSCH_JOIN_SECURED_ONLY TSCH_CONF_JOIN_SECURED_ONLY
88 #define TSCH_JOIN_SECURED_ONLY LLSEC802154_ENABLED
92 #ifdef TSCH_CONF_JOIN_MY_PANID_ONLY
93 #define TSCH_JOIN_MY_PANID_ONLY TSCH_CONF_JOIN_MY_PANID_ONLY
95 #define TSCH_JOIN_MY_PANID_ONLY 0
99 #ifdef TSCH_CONF_ASSOCIATION_POLL_FREQUENCY
100 #define TSCH_ASSOCIATION_POLL_FREQUENCY TSCH_CONF_ASSOCIATION_POLL_FREQUENCY
102 #define TSCH_ASSOCIATION_POLL_FREQUENCY 100
108 #ifdef TSCH_CONF_CHECK_TIME_AT_ASSOCIATION
109 #define TSCH_CHECK_TIME_AT_ASSOCIATION TSCH_CONF_CHECK_TIME_AT_ASSOCIATION
111 #define TSCH_CHECK_TIME_AT_ASSOCIATION 0
116 #ifdef TSCH_CONF_INIT_SCHEDULE_FROM_EB
117 #define TSCH_INIT_SCHEDULE_FROM_EB TSCH_CONF_INIT_SCHEDULE_FROM_EB
119 #define TSCH_INIT_SCHEDULE_FROM_EB 1
127 #ifdef TSCH_CONF_AUTOSELECT_TIME_SOURCE
128 #define TSCH_AUTOSELECT_TIME_SOURCE TSCH_CONF_AUTOSELECT_TIME_SOURCE
130 #define TSCH_AUTOSELECT_TIME_SOURCE 0
136 #ifdef TSCH_CALLBACK_JOINING_NETWORK
137 void TSCH_CALLBACK_JOINING_NETWORK();
141 #ifdef TSCH_CALLBACK_LEAVING_NETWORK
142 void TSCH_CALLBACK_LEAVING_NETWORK();
148 extern int tsch_is_coordinator;
150 extern int tsch_is_associated;
152 extern int tsch_is_pan_secured;
154 extern const struct mac_driver tschmac_driver;
159 void tsch_set_join_priority(uint8_t jp);
161 void tsch_set_eb_period(uint32_t period);
163 void tsch_set_coordinator(
int enable);
165 void tsch_set_pan_secured(
int enable);
The structure of a MAC protocol driver in Contiki.