On Tue, Apr 15, 2008 at 7:26 PM, Michael Schippling <[EMAIL PROTECTED]> wrote:
> AFAIK there is no list, nor any reason to have one.
>  Since mote systems are usually self-contained and
>  independent of one-another they are unlikely to
>  cross-pollinate.
>

Hi, thanks for your reply.

My problem is not with motes cross-polinating, it's with making sure
that individual apps which use an arbitrary set of (possibly complex,
eg Deluge) networking components won't have problems where those
components use the same AM ID numbers?

How do TinyOS developers (for core as well as contrib) do this? Also,
is there a certain range they leave open (eg: below 100) so that user
app's AM IDs won't collide?

It seems that there is an informal convention that user components use
lower numbers and tinyos/contrib use higher numbers, but this
convention isn't documented anywhere that I can see (in theory it
should be in the message_t TEP). For me this is a big unknown - I try
to keep my IDs (I use a lot of them) near to the values used in the
test and tutorial apps, but I don't know how safe my ID values are.

When a clash does occur, will the compiler complain? ie, when 2
components in an app declare an AMSenderC with the same AM ID (I'm at
home now and can't check this at the moment). Hopefully this is the
case, so users are aware of the problem and have the option of
redefining the IDs.

This could also be a problem for other IDs used in TinyOS, eg unique
keys used for dissemination. Hopefully the compiler does flag warnings
(for any duplicate "new ComponentC(ID_NUM)" declarations).

Also, I hope it is possible to list the already-used IDs in a given
app by adding printf lines.

David.
_______________________________________________
Tinyos-help mailing list
Tinyos-help@millennium.berkeley.edu
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to