Hi everyone, I have been stuck by this issue for quite a few days and tried many options. Still, none of them works as PIP<http://www.cse.unl.edu/~zzhong/F12CSCE990/paper/PIPMACSenSys10.pdf>does. Can anyone please help?
On Fri, Sep 14, 2012 at 1:20 AM, Xiaohui Liu <whu...@gmail.com> wrote: > Hi, > > I removed the default resource arbitration of SPI bus. More specifically, > all SPI resources are provided by a single instance of CC2420SpiC. SPI > resource is only requested for the first time, after that, it is never > released. > > But CC2420ReceiveP gets stuck. In particular, calls to RXFIFO.beginRead() > or RXFIFO.continueRead() sometimes fail to signal RXFIFO.readDone() later. > > Can anyone please give me some hint on where things may go wrong? Thanks > very much in advance. > > > On Tue, Sep 11, 2012 at 2:31 AM, Eric Decker <cire...@gmail.com> wrote: > >> >> >> On Mon, Sep 10, 2012 at 11:28 PM, Eric Decker <cire...@gmail.com> wrote: >> >>> >>> 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. >>> >> >> The simplest way to do this is to use Resource.immediateRequest and then >> never release it. >> >> >>> >>> 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. >>> >> >> The current architecture of the code may not be capable of doing what you >> are trying to do. I said "MAY NOT". It depends on the timing >> constraints/requirements that you need for your algorithm to work >> properly. >> >> >> >>> eric >>> >>> >>> On Mon, Sep 10, 2012 at 8:44 PM, Xiaohui Liu <whu...@gmail.com> 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 <whu...@gmail.com> 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 >>> >>> >>> >> >> >> -- >> Eric B. Decker >> Senior (over 50 :-) Researcher >> >> >> > > > -- > -Xiaohui Liu > -- -Xiaohui Liu
_______________________________________________ Tinyos-help mailing list Tinyos-help@millennium.berkeley.edu https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help