90 uint32_t Imin, uint8_t Imax, uint8_t k);
int16_t kernel_pid_t
Unique process identifier.
void trickle_increment_counter(trickle_t *trickle)
increments the counter by one
void trickle_stop(trickle_t *trickle)
stops the trickle timer
void trickle_callback(trickle_t *trickle)
is called after the interval is over and executes callback function
void trickle_reset_timer(trickle_t *trickle)
resets the trickle timer
void trickle_interval(trickle_t *trickle)
is called after the interval is over and calculates the next interval
void trickle_start(kernel_pid_t pid, trickle_t *trickle, uint16_t msg_type, uint32_t Imin, uint8_t Imax, uint8_t k)
start the trickle timer
Describes a message object which can be sent between threads.
Trickle callback function with arguments.
void * args
callback function arguments
all state variables of a trickle timer
uint32_t t
time within the current interval in ms
msg_t msg
the msg_t to use for intervals
uint32_t Imin
minimum interval size in ms
uint8_t k
redundancy constant
uint8_t Imax
maximum interval size, described as of Imin doublings in ms
uint32_t I
current interval size in ms
ztimer_t msg_timer
timer to send a msg_t to the target thread for a new interval
trickle_callback_t callback
callback function and parameter that trickle calls after each interval
kernel_pid_t pid
pid of trickles target thread