Hi, I *didn't* look at your code and I'm not sure about the #define TOSH_DATA_LENGTH to 35 in message.h.
Try add: CFLAGS += -DTOSH_DATA_LENGTH=35 in your Makefile. Please let me know how it goes. Ittipong 2009/3/4 BAI LI <libai0...@gmail.com> > Hi All, > > I am currenting doing a very simple network test. I designed the message > structure in ****.h file and some sending functions in the following. > > typedef nx_struct HashMsg { > nx_uint16_t nodeid; > nx_uint8_t flag; > nx_uint32_t payload_MD1; > nx_uint32_t payload_MD2; > nx_uint64_t payload_M; > nx_uint64_t payload_R; > nx_uint16_t payload_ID; > } HashMsg; > > > Part of the sending code is as folows: > > > event void Timer0.fired() { > > uint16_t destinationMote=0x0002; > if (!busy) { > HashMsg* hmpkt = > (HashMsg*)(call Packet.getPayload(&pkt, sizeof(HashMsg))); > if (hmpkt == NULL) { > return; > } > hmpkt->flag=1; > hmpkt->nodeid = TOS_NODE_ID; > hmpkt->payload_MD1 = 0x12345678; > hmpkt->payload_MD2 = 0x90ABCDEF; // disable this line, it will work > hmpkt->payload_M=0x0000000000000000; > hmpkt->payload_R=0x0000000000000000; > hmpkt->payload_ID=0x0000000000000000; > if (call AMSend.send(destinationMote, > &pkt, sizeof(HashMsg)) == SUCCESS) { > call Leds.led0On(); > busy = TRUE; > } > } > > } > > When the program loads the data to send. The program is dead with one more > line "hmpkt->payload_MD2 = 0x90ABCDEF";. I don't know what the problem is as > I have changed the #define TOSH_DATA_LENGTH to 35 in message.h which is > enough to handle the data. However it didn't work still. I suspect that it > could be message size problem. But I can't work it out. THanks. > > Regards, > Bai > > _______________________________________________ > Tinyos-help mailing list > Tinyos-help@millennium.berkeley.edu > https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help >
_______________________________________________ Tinyos-help mailing list Tinyos-help@millennium.berkeley.edu https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help