49#include "net/link-stats.h"
51#if ROUTING_CONF_RPL_LITE
52#include "net/routing/rpl-lite/rpl.h"
53#elif ROUTING_CONF_RPL_CLASSIC
54#include "net/routing/rpl-classic/rpl.h"
55#include "net/routing/rpl-classic/rpl-private.h"
60#define LOG_MODULE "TSCH RPL"
61#define LOG_LEVEL LOG_LEVEL_MAC
68 NETSTACK_ROUTING.
link_callback(packetbuf_addr(PACKETBUF_ADDR_RECEIVER), status, transmissions);
100#if ROUTING_CONF_RPL_LITE
101 dag = &curr_instance.dag;
102 root_rank = ROOT_RANK;
103 dag_rank = DAG_RANK(dag->rank);
106 dag = rpl_get_any_dag();
107 instance = dag != NULL ? dag->instance : NULL;
108 root_rank = ROOT_RANK(instance);
109 dag_rank = DAG_RANK(dag->rank, instance);
112 if(dag != NULL && dag->rank != RPL_INFINITE_RANK) {
114 if(dag->rank == root_rank) {
132 if(tsch_is_associated == 1) {
135 rpl_parent_get_ipaddr(
new)));
void tsch_rpl_callback_parent_switch(rpl_parent_t *old, rpl_parent_t *new)
Set TSCH time source based on current RPL preferred parent.
void tsch_rpl_callback_joining_network(void)
Let RPL know that TSCH joined a new network.
void tsch_rpl_callback_leaving_network(void)
Let RPL know that TSCH joined a new network.
int tsch_queue_update_time_source(const linkaddr_t *new_addr)
Update TSCH time source.
void tsch_rpl_callback_new_dio_interval(clock_time_t dio_interval)
Set TSCH EB period based on current RPL DIO period.
void tsch_rpl_callback_ka_sent(int status, int transmissions)
Report statiscs from KA packet sent in RPL.
void tsch_set_eb_period(uint32_t period)
Set the period at wich TSCH enhanced beacons (EBs) are sent.
void tsch_set_coordinator(int enable)
Set the node as PAN coordinator.
void tsch_set_join_priority(uint8_t jp)
Set the TSCH join priority (JP)
int tsch_rpl_check_dodag_joined(void)
Check RPL has joined DODAG.
const uip_lladdr_t * uip_ds6_nbr_lladdr_from_ipaddr(const uip_ipaddr_t *ipaddr)
Get the link-layer address associated with a specified IPv6 address.
Header file for the logging system.
Routing driver header file.
void(* link_callback)(const linkaddr_t *addr, int status, int numtx)
Called by lower layers after every packet transmission.
int(* node_has_joined)(void)
Tells whether the node is currently part of a network.
void(* local_repair)(const char *str)
Triggers a RPL local topology repair.
Main API declarations for TSCH.