[Tinyos-devel] C++ serial forwarder for tinyos 2

Andreas Koepke koepke at tkn.tu-berlin.de
Tue Jul 3 00:59:51 PDT 2007


We have re-implemented the serial forwarder for T2 in C++, this may be a
valuable contribution, because:

1. it does not loose packets while waiting for an ACK

2. it can handle the traffic (TestSerialBandwidth, PC side app sending
every 30ms) to and from eight telosb motes running at 115 kbit/s on our
NSLU2s (133MHz ARM). Loss rate from NSLU2 to mote is about 0.2% - the
telos motes are the bottleneck now ;-). No packets are lost the other
way around.

3. the SFs run as threads under a single process -- each additional mote
consumes only a negligible amount of memory instead of a whole process
context. (The NSLU2s have only 32M RAM, so we had to be a bit careful
with it).

4. it has a control interface where you can telnet and ask it for
various statistics (no costly printf dumping), start and stop SFs for
individual motes etc.

5. it uses the TCP flow control to tell a PC side app to slow down, if
the mote can not handle it.

6. it is slightly more readable because it uses the STL -- but that is a
personal opinion ;-)

The disadvantage is that it relies on posix threads and is tested only
on Linux.

Comments?

Andreas



More information about the Tinyos-devel mailing list