Merge branch 'develop' into contrib/default-prefix-as-variable
This commit is contained in:
commit
3e91b32182
@ -136,5 +136,13 @@ tsch_rpl_callback_parent_switch(rpl_parent_t *old, rpl_parent_t *new)
|
|||||||
rpl_parent_get_ipaddr(new)));
|
rpl_parent_get_ipaddr(new)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
/*---------------------------------------------------------------------------*/
|
||||||
|
/* Check RPL has joined DODAG.
|
||||||
|
* To use, set #define TSCH_RPL_CHECK_DODAG_JOINED tsch_rpl_check_dodag_joined */
|
||||||
|
int
|
||||||
|
tsch_rpl_check_dodag_joined(void)
|
||||||
|
{
|
||||||
|
return NETSTACK_ROUTING.node_has_joined();
|
||||||
|
}
|
||||||
#endif /* UIP_CONF_IPV6_RPL */
|
#endif /* UIP_CONF_IPV6_RPL */
|
||||||
/** @} */
|
/** @} */
|
||||||
|
@ -79,6 +79,12 @@ void tsch_rpl_callback_new_dio_interval(clock_time_t dio_interval);
|
|||||||
* \param new The new RPL parent
|
* \param new The new RPL parent
|
||||||
*/
|
*/
|
||||||
void tsch_rpl_callback_parent_switch(rpl_parent_t *old, rpl_parent_t *new);
|
void tsch_rpl_callback_parent_switch(rpl_parent_t *old, rpl_parent_t *new);
|
||||||
|
/**
|
||||||
|
* \brief Check RPL has joined DODAG.
|
||||||
|
* To use, set TSCH_RPL_CHECK_DODAG_JOINED tsch_rpl_check_dodag_joined
|
||||||
|
* \return 1 if joined, 0 otherwise
|
||||||
|
*/
|
||||||
|
int tsch_rpl_check_dodag_joined(void);
|
||||||
|
|
||||||
#endif /* __TSCH_RPL_H__ */
|
#endif /* __TSCH_RPL_H__ */
|
||||||
/** @} */
|
/** @} */
|
||||||
|
@ -861,7 +861,12 @@ PROCESS_THREAD(tsch_send_eb_process, ev, data)
|
|||||||
while(1) {
|
while(1) {
|
||||||
unsigned long delay;
|
unsigned long delay;
|
||||||
|
|
||||||
if(tsch_is_associated && tsch_current_eb_period > 0) {
|
if(tsch_is_associated && tsch_current_eb_period > 0
|
||||||
|
#ifdef TSCH_RPL_CHECK_DODAG_JOINED
|
||||||
|
/* Implementation section 6.3 of RFC 8180 */
|
||||||
|
&& TSCH_RPL_CHECK_DODAG_JOINED()
|
||||||
|
#endif /* TSCH_RPL_CHECK_DODAG_JOINED */
|
||||||
|
) {
|
||||||
/* Enqueue EB only if there isn't already one in queue */
|
/* Enqueue EB only if there isn't already one in queue */
|
||||||
if(tsch_queue_packet_count(&tsch_eb_address) == 0) {
|
if(tsch_queue_packet_count(&tsch_eb_address) == 0) {
|
||||||
uint8_t hdr_len = 0;
|
uint8_t hdr_len = 0;
|
||||||
|
@ -88,6 +88,10 @@ frequency hopping for enhanced reliability.
|
|||||||
#define TSCH_CALLBACK_KA_SENT tsch_rpl_callback_ka_sent
|
#define TSCH_CALLBACK_KA_SENT tsch_rpl_callback_ka_sent
|
||||||
#endif /* TSCH_CALLBACK_KA_SENT */
|
#endif /* TSCH_CALLBACK_KA_SENT */
|
||||||
|
|
||||||
|
#ifndef TSCH_RPL_CHECK_DODAG_JOINED
|
||||||
|
#define TSCH_RPL_CHECK_DODAG_JOINED tsch_rpl_check_dodag_joined
|
||||||
|
#endif /* TSCH_RPL_CHECK_DODAG_JOINED */
|
||||||
|
|
||||||
#endif /* UIP_CONF_IPV6_RPL */
|
#endif /* UIP_CONF_IPV6_RPL */
|
||||||
|
|
||||||
#if BUILD_WITH_ORCHESTRA
|
#if BUILD_WITH_ORCHESTRA
|
||||||
@ -117,6 +121,11 @@ void TSCH_CALLBACK_LEAVING_NETWORK();
|
|||||||
void TSCH_CALLBACK_KA_SENT();
|
void TSCH_CALLBACK_KA_SENT();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* Called by TSCH before sending a EB */
|
||||||
|
#ifdef TSCH_RPL_CHECK_DODAG_JOINED
|
||||||
|
int TSCH_RPL_CHECK_DODAG_JOINED();
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Called by TSCH form interrupt after receiving a frame, enabled upper-layer to decide
|
/* Called by TSCH form interrupt after receiving a frame, enabled upper-layer to decide
|
||||||
* whether to ACK or NACK */
|
* whether to ACK or NACK */
|
||||||
#ifdef TSCH_CALLBACK_DO_NACK
|
#ifdef TSCH_CALLBACK_DO_NACK
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
<project EXPORT="discard">[APPS_DIR]/powertracker</project>
|
<project EXPORT="discard">[APPS_DIR]/powertracker</project>
|
||||||
<simulation>
|
<simulation>
|
||||||
<title>RPL+TSCH (Z1)</title>
|
<title>RPL+TSCH (Z1)</title>
|
||||||
<randomseed>123456</randomseed>
|
<randomseed>1</randomseed>
|
||||||
<motedelay_us>1000000</motedelay_us>
|
<motedelay_us>1000000</motedelay_us>
|
||||||
<radiomedium>
|
<radiomedium>
|
||||||
org.contikios.cooja.radiomediums.UDGM
|
org.contikios.cooja.radiomediums.UDGM
|
||||||
@ -108,20 +108,6 @@
|
|||||||
</interface_config>
|
</interface_config>
|
||||||
<motetype_identifier>z11</motetype_identifier>
|
<motetype_identifier>z11</motetype_identifier>
|
||||||
</mote>
|
</mote>
|
||||||
<mote>
|
|
||||||
<breakpoints />
|
|
||||||
<interface_config>
|
|
||||||
org.contikios.cooja.interfaces.Position
|
|
||||||
<x>10.622284947035123</x>
|
|
||||||
<y>109.81862399725188</y>
|
|
||||||
<z>0.0</z>
|
|
||||||
</interface_config>
|
|
||||||
<interface_config>
|
|
||||||
org.contikios.cooja.mspmote.interfaces.MspMoteID
|
|
||||||
<id>6</id>
|
|
||||||
</interface_config>
|
|
||||||
<motetype_identifier>z11</motetype_identifier>
|
|
||||||
</mote>
|
|
||||||
</simulation>
|
</simulation>
|
||||||
<plugin>
|
<plugin>
|
||||||
org.contikios.cooja.plugins.SimControl
|
org.contikios.cooja.plugins.SimControl
|
||||||
@ -168,7 +154,6 @@
|
|||||||
<mote>2</mote>
|
<mote>2</mote>
|
||||||
<mote>3</mote>
|
<mote>3</mote>
|
||||||
<mote>4</mote>
|
<mote>4</mote>
|
||||||
<mote>5</mote>
|
|
||||||
<showRadioRXTX />
|
<showRadioRXTX />
|
||||||
<showRadioHW />
|
<showRadioHW />
|
||||||
<showLEDs />
|
<showLEDs />
|
||||||
|
Loading…
Reference in New Issue
Block a user