mirror of
https://github.com/oliverschmidt/contiki.git
synced 2024-12-23 01:29:33 +00:00
No need to send strobes for broadcast packets: just send the actual packet instead
This commit is contained in:
parent
35261f5208
commit
c0c26262c4
@ -28,7 +28,7 @@
|
|||||||
*
|
*
|
||||||
* This file is part of the Contiki operating system.
|
* This file is part of the Contiki operating system.
|
||||||
*
|
*
|
||||||
* $Id: xmac.c,v 1.19 2008/06/30 08:10:02 adamdunkels Exp $
|
* $Id: xmac.c,v 1.20 2008/07/07 23:25:12 adamdunkels Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -336,8 +336,14 @@ send_packet(void)
|
|||||||
TIMETABLE_TIMESTAMP(xmac_timetable, "send strobe");
|
TIMETABLE_TIMESTAMP(xmac_timetable, "send strobe");
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
if(is_broadcast) {
|
||||||
|
/* If we are sending a broadcast, we don't send strobes, we
|
||||||
|
simply send the data packet repetedly */
|
||||||
|
radio->send(rimebuf_hdrptr(), rimebuf_totlen());
|
||||||
|
} else {
|
||||||
/* Send the strobe packet. */
|
/* Send the strobe packet. */
|
||||||
radio->send((const uint8_t *)&msg, sizeof(struct xmac_hdr));
|
radio->send((const uint8_t *)&msg, sizeof(struct xmac_hdr));
|
||||||
|
}
|
||||||
CPRINTF("+");
|
CPRINTF("+");
|
||||||
|
|
||||||
while(got_ack == 0 &&
|
while(got_ack == 0 &&
|
||||||
@ -383,7 +389,7 @@ send_packet(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Send the data packet. */
|
/* Send the data packet. */
|
||||||
if(rimeaddr_cmp(&hdr->receiver, &rimeaddr_null) || got_ack) {
|
if(is_broadcast || got_ack) {
|
||||||
#if WITH_TIMETABLE
|
#if WITH_TIMETABLE
|
||||||
TIMETABLE_TIMESTAMP(xmac_timetable, "send packet");
|
TIMETABLE_TIMESTAMP(xmac_timetable, "send packet");
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user