uses {
interface Send as SubSend;
interface CC2420Transmit as Resend;
- interface RadioBackoff[am_id_t amId];
+ interface RadioBackoff;
interface Receive as SubReceive;
interface AMPacket;
interface SplitControl as SubControl;
return 0;
}
- return (DUTY_ON_TIME * (10000 - dutyCycle)) / dutyCycle;
+ return ((uint32_t)DUTY_ON_TIME * (10000 - dutyCycle)) / dutyCycle;
}
/**
return 10000;
}
- return getActualDutyCycle((DUTY_ON_TIME * 10000)
+ return getActualDutyCycle(((uint32_t)DUTY_ON_TIME * 10000)
/ (sleepInterval + DUTY_ON_TIME));
}
return SUCCESS;
}
- return FAIL;
+ return EBUSY;
}
command error_t Send.cancel(message_t *msg) {
/***************** RadioBackoff Events ****************/
- async event void RadioBackoff.requestInitialBackoff[am_id_t amId](message_t *msg) {
+ async event void RadioBackoff.requestInitialBackoff(message_t *msg) {
if((call CC2420PacketBody.getMetadata(msg))->rxInterval
> ONE_MESSAGE) {
- call RadioBackoff.setInitialBackoff[amId]( call Random.rand16()
+ call RadioBackoff.setInitialBackoff( call Random.rand16()
% (0x4 * CC2420_BACKOFF_PERIOD) + CC2420_MIN_BACKOFF);
}
}
- async event void RadioBackoff.requestCongestionBackoff[am_id_t amId](message_t *msg) {
+ async event void RadioBackoff.requestCongestionBackoff(message_t *msg) {
if((call CC2420PacketBody.getMetadata(msg))->rxInterval
> ONE_MESSAGE) {
- call RadioBackoff.setCongestionBackoff[amId]( call Random.rand16()
+ call RadioBackoff.setCongestionBackoff( call Random.rand16()
% (0x3 * CC2420_BACKOFF_PERIOD) + CC2420_MIN_BACKOFF);
}
}
- async event void RadioBackoff.requestCca[am_id_t amId](message_t *msg) {
+ async event void RadioBackoff.requestCca(message_t *msg) {
}