[Tinyos-devel] create T2 platform variants or sensor apps?

Steve McKown rsmckown at yahoo.com
Fri Jun 29 16:56:02 PDT 2007

On Friday 29 June 2007 04:52:27 pm John Griessen wrote:
> I've worked through some of the platform tutorial for TinyOS 2.0 and am
> looking for some guide about the meaning of TOSH_ASSIGN_PINS(name, 1, 2). 
> Is it just microprocessor ports and bits that the two numbers describe? 

Yes, at least for msp430 based platforms (that's all I've worked on so far).

> I'm making a telosb platform variant.
> The TinyOS Programming guide seems 
> aimed at higher levels of abstraction than that.

I don't think TOSH_ pin macros are used in TinyOS 2.0.  There's a TEP that 
describes low-level IO which uses a component-based interface instead.  For 
the platforms I've written, I don't use those macros at all.  The advantage 
of the component approach over the macro approach is that it's far easier to 
link components to platforms using an HPL layer.  Most of the mainline tos2 
components, like the radios, use the approach.

> Should you make a platform variant for adding more used IO's and allowing
> form more sensor apps?  From Phil Levis's remark, "In TinyOS, if you don't
> have a hardware resource, you don't have it; the system won't let you
> compile.", I think yes, you make a platform variant rather than just a
> sensor app for  a 12 channel soil moisture sensor board.

Yes.  But that 12-channel board could be a sensorboard.  There's a TEP that 
talks about sensorboards.  They offer a way to expand upon a base platform 
through add-on boards.  I'm not fully up to speed on the concept of 
sensorboards yet, but I think you could use them for different assemblies on 
the same circuit board.  There's a base assembly that doesn't populate all 
the hardware that's the platform, and sensorboards can address the other 
configurations of the assembly based upon what other combinations of parts 
get populated.

> Where do you draw the line on creating a platform or a sensor app?

Basically, if you are changing hardware, you're changing the platform.  If you 
are changing what the software is doing with that hardware, you're changing 
the application.  The actual line between platform and application is 
somewhat arbitrary, but conceptually it's pretty straight forward.

All the best,

> A T2 example of a sensor that uses outputs to set up and ADC inputs to
> take readings (like a humidity sensor) would help me
> make the 12 channel soil moisture sensor app that times the excitation of
> one bank of six, then reads in, then changes banks,times the excitation of
> bank 2, reads in and completes.  So, I'm going to look at
> tinyos-2.x/tos/chips/sht11 and tinyos-2.x/tos/platforms/telosa/chips/sht11.
>  Any other pointers to T2 sensor examples much appreciated.
> John Griessen
> Ecosensory
> Austin Texas
> ecosensory.com
> _______________________________________________
> Tinyos-devel mailing list
> Tinyos-devel at Millennium.Berkeley.EDU
> https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-devel
> !DSPAM:46859089255011804284693!

More information about the Tinyos-devel mailing list