[Tinyos-devel] C++ serial forwarder for tinyos 2
David Gay
dgay42 at gmail.com
Tue Jul 3 08:54:59 PDT 2007
On 7/3/07, Andreas Koepke <koepke at tkn.tu-berlin.de> wrote:
> 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?
Sounds like a good idea to me :-) If you want to distribute it to the
community, there's two obvious choices:
- add it to the tinyos2 contrib stuff
- create tinyos-2.x/support/sdk/c++ - some caveats:
* we may or may not have a policy that core stuff works in both
Linux and Windows/cygwin
- Phil?
* I can't remember if we've set any guidelines on core contributions - Phil?
In both cases, there is an expectation that you will provide (or get
someone else to provide) at least medium-term support (bug fixes,
etc).
David Gay
More information about the Tinyos-devel
mailing list