[Tinyos-devel] lost packets from PC to the mote
Razvan Musaloiu-E.
razvanm at cs.jhu.edu
Fri Apr 25 18:31:14 PDT 2008
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
More information about the Tinyos-devel
mailing list