The first time that powercycle() runs, cycle_start is incremented
by CHECK_TIME twice which causes the second cycle to be late.
This commit fixes this.
It is possible that packetbuf is modified by the call to
mac_call_sent_callback. If this occurs ContikiMAC will not be able to
recognize that a packet is pending.
This fixes this problem by storing pending status in a local variable before
calling mac_call_sent_callback.
Replaced a cast of the funciton pointer to powercycle with a
wrapper calling powercycle which has the correct signature.
The previous implementation was an instance of undefined behaviour
according to the C standard.
../..//core/net/mac/contikimac/contikimac.c:503:11: warning: variable
‘seqno’ set but not used [-Wunused-but-set-variable]
../..//core/net/mac/contikimac/contikimac.c:496:7: warning: variable
‘len’ set but not used [-Wunused-but-set-variable]
Both of these variables are only used if RDC_CONF_HARDWARE_ACK is not
true.
Their definitions and use have been moved into #ifdef guards so they do
not appear if RDC_CONF_HARDWARE_ACK is set.
Allow the project / platform to provide values for CCA_SLEEP_TIME and LISTEN_TIME_AFTER_PACKET_DETECTED.
This is useful for sub-ghz operation.
This has been shamelessly stolen from the [Mountain Sensing project](https://github.com/feshie/contiki)
@heliosfa @kmartinez
to allow for creating and securing frames in advance; Create and secure frames in advance when sending bursts; Do neither recreate nor resecure frames that come from phase