Reputation: 199
I want to write a mote-mote radio communication program, and want the receiver acknowledges back to the sender. I know the PacketAcknowledgements
is recommended, but there are some questions I'm not sure about this interface.
1. If I use it in the sender mote,should i also uses interface Receive in the module of the sender mote
2. Should I write extra code in the receiver mote? Should I use interface PacketAcknowledgements too?
3. command error_t requestAck(message_t *msg) and command bool wasAcked(message_t *msg) should be used when and where
Upvotes: 0
Views: 363
Reputation: 1471
requestAck
on a packet you're about to send just before calling send
from interface AMSend
or Send
. Be sure to check an error code returned by requestAck
, because FAIL
indicates that the communication layer doesn't support synchronous acknowledgements (it depends on the radio chip and driver you use). Once the packet is sent, i.e., inside event sendDone
(or later), call wasAcked
, which returns true if the packet was acknowledged by the receiver.More info in: https://github.com/tinyos/tinyos-main/blob/master/tos/interfaces/PacketAcknowledgements.nc
Upvotes: 1