Hello David : Maybe i have asked the question to you , but i still have some puzzles . 1. about the command setLocalSleepInterval(uint16_t sleepIntervalMs) . in my opinion , it is used the set that how long the mote sleep . for example , we set sleepIntervalMs to 250 , which mean the mote will sleep 250ms and wake up automatically , then check whether there is carrier . if yes , it will keep awake for a long time to receive the data packet , if no , it will go to sleep . i want to know , how long does the mote take to check whether there is carrier wave ? if there is carrier, how long does the mote keep awake in order to receive the data packet ?(maybe there is no data packet sended to it , so i thick there could be a "time upper limit" that the mote keep awake ) 2. about the command setRxSleepInterval(message_t *msg, uint16_t sleepIntervalMs) i don't know what the function of this command is , can you explain to me ,David ? In Lesson 16: Writing Low Power Sensing Applications , there is some introduction to LowPowerListening . it demonstrates the usage pattern :
event void Boot.booted() { call LPL.setLocalSleepInterval(LPL_INTERVAL); call AMControl.start(); } event void AMControl.startDone(error_t e) { if(e != SUCCESS) call AMControl.start(); } ... void sendMsg() { call LPL.setRxSleepInterval(&msg, LPL_INTERVAL); if(call Send.send(dest_addr, &msg, sizeof(my_msg_t)) != SUCCESS) post retrySendTask(); } before we call Send.send , we will call LPL.setRxSleepInterval(&msg, LPL_INTERVAL) . what is the reason ? -- zhang jiwen
_______________________________________________ Tinyos-help mailing list Tinyos-help@millennium.berkeley.edu https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help