[Tinyos-devel] lost packets from PC to the mote

Jeongyeup Paek jpaek at usc.edu
Tue Apr 29 16:30:18 PDT 2008


Hi Razvan,

The "write fail" errors you get while sending packet from PC to mote
are very-very device dependent, in my experience.

Which usb port you use on your PC, usb hub type, usb extension cables,
etc...all of these matters.
And it is better (less dependent) if you use 57600 compared to 115200.
For example, I have 6 usb ports on my desktop, and I can use only 2 of
them as BaseStation if I use 115200, but I can use all 6 if I'm on 57600.

Kevin said that there seems to be some timing issue while
handling the uart interrupt... but we decided not to solve that...
we've used 57600 for the tosthreads work.

Thanks

- Jeongyeup



On Fri, Apr 25, 2008 at 6:31 PM, Razvan Musaloiu-E. <razvanm at cs.jhu.edu> wrote:
> Hi!
>
>
>  On Fri, 25 Apr 2008, Philip Levis wrote:
>
>  >
>  > On Apr 18, 2008, at 6:47 PM, Razvan Musaloiu-E. wrote:
>  >> Hi!
>  >>
>  >> I just noticed that when a mote sends a lot of packets to a the PC, the
>  >> packets from the PC to the mote doesn't go reach the user application layer
>  >> some of the time. In the attached archive there is a test program that is
>  >> exposing this. The mote program is sending packets back-to-back while the
>  >> PC program (in Java) is receiving the packets and sends to the mote one
>  >> packets each second. I run the program on telosb in the following way:
>  >>
>  >> (console 1)$ ./sf 9001 /dev/ttyUSB0 115200
>  >> (console 2)$ java StressSerialTest -comm sf at localhost:9001
>  >>
>  >> The mote is toggling the blue led each time it receives a packet and it
>  >> should change state each time the RX led from the USB blinks. This doesn't
>  >> always happen: the RX led indicates a receive but the blue doesn't always
>  >> change its state. The (console 1) also shows lines like this:
>  >>      Note: write failed
>  >>      Note: write failed
>  >>      Note: write failed
>  >>      Note: write failed
>  >>
>  >> Did anyone else notice this behavior?
>  >
>  > Razvan,
>  >
>  > When I run your test application on my machine, I do not see this behavior. I
>  > was able to send 100 packets (the program ran for 100 seconds) with no write
>  > fails. What write fail rate do you observe?
>
>  Here are the loss rates I got so far:
>
>  Python in Linux:
>               115200        57600
>               PC   Laptop   PC Laptop
>         MoteA 20%   18%     0%  0%
>         MoteB 33%   20%     0%  0%
>         MoteC 34%   17%     0%  0%
>
>  Native Python in Windows:
>               115200  57600
>         MoteD 68%     88%
>
>  Java application using C sf in Linux:
>                115200  57600
>                PC      PC
>          MoteC 18%     0%
>
>  I all the test I send between 100-120 packets.
>
>  I haven't check the serial hardware overflow indicator yet but that's what
>  I'm going to do next.
>
>  --
>  Razvan ME
>
>
>
>  > I ran your Java application connected to a C serial forwarder.
>  >
>  > Phil
>  _______________________________________________
>  Tinyos-devel mailing list
>  Tinyos-devel at millennium.berkeley.edu
>  https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-devel
>



-- 
Jeongyeup Paek
Ph.D. student
Embedded Networks Laboratory
Department of Computer Science
University of Southern California
http://enl.usc.edu/~jpaek


More information about the Tinyos-devel mailing list