}
#ifndef SOFTWAREACK_TIMEOUT
-#define SOFTWAREACK_TIMEOUT 1000
+#define SOFTWAREACK_TIMEOUT 20000
#endif
async command uint16_t SoftwareAckConfig.getAckTimeout()
* congestion backoff = 0x7 * CC2420_BACKOFF_PERIOD = 70 jiffies = 2240 microsec
*/
+#ifndef LOW_POWER_LISTENING
+
async command uint16_t RandomCollisionConfig.getMinimumBackoff()
{
return (uint16_t)(320 * RADIO_ALARM_MICROSEC);
return (uint16_t)(2240 * RADIO_ALARM_MICROSEC);
}
+#endif
+
async command uint16_t RandomCollisionConfig.getTransmitBarrier(message_t* msg)
{
uint16_t time;
#ifdef LOW_POWER_LISTENING
- async command bool LowPowerListeningConfig.getAckRequired(message_t* msg)
+ command bool LowPowerListeningConfig.needsAutoAckRequest(message_t* msg)
+ {
+ return call Ieee154PacketLayer.getDestAddr(msg) != TOS_BCAST_ADDR;
+ }
+
+ command bool LowPowerListeningConfig.ackRequested(message_t* msg)
{
return call Ieee154PacketLayer.getAckRequired(msg);
}
+ command uint16_t LowPowerListeningConfig.getListenLength()
+ {
+ return 5;
+ }
+
+ async command uint16_t RandomCollisionConfig.getMinimumBackoff()
+ {
+ return (uint16_t)(320 * RADIO_ALARM_MICROSEC);
+ }
+
+ async command uint16_t RandomCollisionConfig.getInitialBackoff(message_t* msg)
+ {
+ return (uint16_t)(1600 * RADIO_ALARM_MICROSEC);
+ }
+
+ async command uint16_t RandomCollisionConfig.getCongestionBackoff(message_t* msg)
+ {
+ return (uint16_t)(3200 * RADIO_ALARM_MICROSEC);
+ }
+
#endif
}