Just some things to try... I'd bet that the message buffer gets reused or erased before your second send can complete. You may also have trouble calling the send directly from the done, since done is in an "event" context which is sometimes tantamount to an interrupt, perhaps try copying the message and posting a task to resend?
Another possibility is that you are walking over the "normal" send process. You should check the result of the second send to see if it's giving you an error. And you may need to put in some condition variable to block simultaneous sends. All that said, TOSBase seems to be a bit of a hack-to-get-things-to-work so it might not be easy to modify.... MS ram kishore wrote: > Hi all, > I am using TOS1.1.10 .In the standard receiver application > TOSBase. I am trying to retransmit the message.I sent a message by > calling > > call RadioSend.send(gpTxMsg);. > > For this RadioSend.sendDone(TOS_MsgPtr Msg, result_t success) > event is generated. > Hoping that Msg is a pointer to the already transmitted > message,I call > > call RadioSend.send(Msg); to retransmit the same message again. > > But the message is not being re-transmitted . > > Can somebody tell me what is wrong or how to accomplish > retransmission? > > Regards, > Kishore > _______________________________________________ > Tinyos-help mailing list > [email protected] > https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help _______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
