[Tinyos-devel] tmote P3.6 / P3.7 direction

Philip Levis pal at cs.stanford.edu
Wed Jul 2 15:12:40 PDT 2008


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


More information about the Tinyos-devel mailing list