Hi to everybody, I'm sorry for my English... I have a problem on start radio on telosb platform with TinyOs 2.1.0. I find this message: http://www.mail-archive.com/[email protected]/msg29889.html but there isn't a solution.
I use a LPL, not the default one but a modified one that do the same thing to send, the problem occurs sometimes when the radio must be turned on. The LPL component call SplitControl.start function in CC2420CsmaP components, and wait for a startDone event to initialize the send but this event doesn't occurs. I try to follow the code and the start procedure was: 1) in SplitControl.start Radio state is changed to S_STARTING 2) call CC2420Power.statVreg() 3) in event CC2420Power.startVRegDone() call Resource.request() 4) in event Resource.granted() call CC2420Power.startOscillator() 5) in event CC2420Power.startOscillatorDone() post startDone_task() that finish the initialization phase, change Radio state to S_STARTED and signal SplitControl.startDone() event The problem is that sequence in some case don't finish correctly and the task wasn't posted. The result is the Radio State is S_STARTING and the following call to start method return SUCCESS without do nothing to resolve the situation. This reasonable because component waits the first start sequence finish. I must solve the problem. I know that in old versione of TinyOs there is a bus concurrency problem between radio and flash memory (that I use) and I find it's solved in TinyOS 2.1.0. Can be a similar problem? I compared the code for TinyOS 2.1.1 and TinyOS 2.1.0 and I didn't find nothing that solve this problem. A possible solution for me can be a timeout that fired if startDone event isn't signal, but in this case how can I reset the radio? I think to use a stop-start sequence but stop command when the component is in S_STARTING state return EBUSY without do nothing. Someone find the same situation? Or know a solution? Every help is appreciated Davide _______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
