42 #ifndef __TSCH_PRIVATE_H__
43 #define __TSCH_PRIVATE_H__
56 enum tsch_timeslot_timing_elements {
68 tsch_ts_timeslot_length,
69 tsch_ts_elements_count,
75 extern const linkaddr_t tsch_broadcast_address;
77 extern const linkaddr_t tsch_eb_address;
79 extern struct asn_t current_asn;
80 extern uint8_t tsch_join_priority;
81 extern struct tsch_link *current_link;
83 extern uint8_t tsch_hopping_sequence[TSCH_HOPPING_SEQUENCE_MAX_LEN];
84 extern struct asn_divisor_t tsch_hopping_sequence_length;
86 extern rtimer_clock_t tsch_timing[tsch_ts_elements_count];
96 void tsch_schedule_keepalive(
void);
98 void tsch_disassociate(
void);
105 #define TSCH_PACKET_DURATION(len) US_TO_RTIMERTICKS(32 * ((len) + 3))
108 #define TSCH_CLOCK_TO_TICKS(c) (((c) * RTIMER_SECOND) / CLOCK_SECOND)
109 #define TSCH_CLOCK_TO_SLOTS(c, timeslot_length) (TSCH_CLOCK_TO_TICKS(c) / timeslot_length)
112 #define BUSYWAIT_UNTIL_ABS(cond, t0, offset) \
113 while(!(cond) && RTIMER_CLOCK_LT(RTIMER_NOW(), (t0) + (offset))) ;
TSCH 5-Byte Absolute Slot Number (ASN) management
Header file for the Rime address representation
PROCESS_NAME(sample_process)
Process the sampler runs as.