[Tinyos-devel] tmote P3.6 / P3.7 direction
Geoffrey Werner-Allen
geoffrey.werner.allen at gmail.com
Wed Jul 2 15:22:18 PDT 2008
Phil:
IIRC on the TMote one of the USB power lines controls whether or not the
serial input buffer is active. If it's active it's driving the line feeding
into Port 3.7 and if the port isn't configured to catch it, then you have
the port conflict causing unnecessary power consumption and possible
lockup. Currently the serial stack sets up 3.7, so if its not included and
the mote is plugged in to USB, you have the problem. I don't think the
ordering of reprogramming/plugging in matters, just the inclusion of the
serial stack in the running binary and whether or not the mote is plugged in
to USB. Does that make sense?
Best,
-gwa-
geoffrey werner-allen :: 617.694.7261 :: www.eecs.harvard.edu/~werner
On Wed, Jul 2, 2008 at 6:12 PM, Philip Levis <pal at cs.stanford.edu> wrote:
>
> On Jul 2, 2008, at 2:49 PM, David Moss wrote:
>
> > This has been sitting on my plate for awhile, and I haven't had time
> > to do anything about it. Thank Geoff Werner-Allen for finding and
> > bringing this up long ago.
> >
> >
> >
> > Summary of the problem: "Essentially on the TMote Sky (and probably
> > TelosA), when the serial port is enabled (i.e. the node is plugged
> > in via USB) but serial support is not enabled in the binary this
> > creates a port conflict between the MSP430 UART1RX port, which is by
> > default configured as an output low, and the buffer between it and
> > the FTDI chip, which is trying to drive the line high. Not only does
> > this sink ~30mA of extra current into the MSP430 (which is how we
> > found it, trying to do current measurements with the node plugged in
> > via USB), we're also suspicious that it may cause a port latch-up
> > which causes the TMote to fail subsequent reprogramming cycles
> > (until power cycled)."
> >
> > Proposed solution: "A better/robust approach might be to have
> > MotePlatformC check the state of P1.2. If it's low, the mote is
> > running off batteries and the default configuration is fine. If it's
> > high, the mote is running off USB so P3.6 should be made output-high
> > and P3.7 should be made into an input.
> >
> > I think you could effectively argue that this approach would:
> > - Have a *very* small impact on code size
> > - Not create any incompatibilities for motes running off batteries
> > - Make life a lot better for motes running off USB, regardless of
> > the use of the serial stack or its configuration"
> >
> >
>
> Is there an issue if a mote is reprogrammed, then plugged in, or vice
> versa? Why note have MotePlatformC configure the ports as you suggest
> above in PlatformInit, then the serial stack can reconfigure them as
> needed if it's included?
>
> Phil
> _______________________________________________
> Tinyos-devel mailing list
> Tinyos-devel at millennium.berkeley.edu
> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-devel
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://www.millennium.berkeley.edu/pipermail/tinyos-devel/attachments/20080702/46d0fd2d/attachment-0001.htm
More information about the Tinyos-devel
mailing list