you might try getting rid of the arbitration that is used by default. That is make sure that the only thing hanging off USART0 is the CC2420 and then get rid of the resource arbiter that by default is used on the TelosB code.
As long as your code is running as a task (the default programming paradigm in TinyOS (for very good reasons)) you will have potentially non-deterministic timing. It depends on what else has already been posted to the task queue. eric On Mon, Sep 10, 2012 at 8:44 PM, Xiaohui Liu <[email protected]> wrote: > Hi, > > To be precise, my channel switch delay is defined as the interval from > when CC2420Config.sync() is called to CC2420Config.syncDone() event is > triggered. > > On Mon, Sep 10, 2012 at 11:02 PM, Xiaohui Liu <[email protected]> wrote: > >> Hi everyone, >> >> I'm developing a protocol which requires fast switch between two >> channels. But I find the channel switch delay varies significantly from 16 >> to 600 jiffies, causing the sender and receiver out of sync. The major >> cause is the non-deterministic delay to access the SPI bus, whose >> distribution is long-tailed. Can anyone please share his/her experience on >> how to make channel switch delay more deterministic? This may be a basic >> issue for multi-channel protocols as discussed in related threads >> here<http://mail.millennium.berkeley.edu/pipermail/tinyos-help/2012-May/054737.html> >> and >> here<https://www.millennium.berkeley.edu/pipermail/tinyos-help/2010-October/048160.html> >> . >> >> One way I'm trying is to circumvent the resource arbitration of SPI bus >> since it is merely used to access cc2420 in TelosB as seen in the >> schematic<http://webs.cs.berkeley.edu/tos/hardware/telos/telos-revb-2004-09-27.pdf> >> . >> >> Any hint will be sincerely appreciated. >> >> Cheers, >> -Xiaohui Liu >> > > > > -- > -Xiaohui Liu > -- Eric B. Decker Senior (over 50 :-) Researcher
_______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
