[Tinyos-help] [Tinyos-devel] DelugeT2 and MIB600, serialforwarder

Razvan Musaloiu-E. razvanm at cs.jhu.edu
Wed Sep 10 16:35:29 PDT 2008


Hi!

On Wed, 10 Sep 2008, Vincent Borrel wrote:

> Basically I stopped trying using deluge T2. I couldn't get past injecting an 
> image. Disseminate or disseminate and reprogram couldn't be got to 
> effectively do anything useful.
>
> I quit losing my time on that one after 2 all nighters. That's been far more 
> than all the time I could spend exchanging motes for my project, and I feel 
> like having wasted a lot of time with that superb tool.

Sorry to hear that. :-(

> If someone got the magical procedure to make Deluge T2 work, could they 
> please indicate me the correct shaman sequence of sorts ?

A clarification question: you we were not able to run it using MIB600? 
It should work using MIB510 and MIB520.

--
Razvan ME

> OK, rant over, back to work ;).
>
> Vincent.
>
> Le 4 sept. 08 à 15:53, Razvan Musaloiu-E. a écrit :
>
>> Hi!
>> 
>> Thanks for the patch! There is one thing I would like to warn about: the
>> serial upload protocol for Deluge T2 doesn't use any user level acks and
>> the SF TCP protocol doesn't indicate the failure of a failure of a serial
>> write. I argue for adding support for this as part of this thread:
>> 	https://www.millennium.berkeley.edu/pipermail/tinyos-devel/2008-June/thread.html#3052
>> 
>> Because of this limitation I stop trying to made Deluge T2 work using
>> the SF protocol.
>> 
>> Note: a good news is that MIG600 is using a serial speed of 57600 which
>> should make serial writer failure very infrequent. :-)
>> 
>> --
>> Razvan ME
>> 
>> On Thu, 21 Aug 2008, Vincent Borrel wrote:
>> 
>>> Hi,
>>> 
>>> I have been trying to get Deluge T2 to work with an MIB600 programming 
>>> board.
>>> 
>>> I finally managed to get it to work using a serialforwarder (on default port
>>> 9002), and adding two modifications:
>>> 
>>> in $TOSROOT/tinyos-2.x/support/sdk/python/tos.py, I added the timeout
>>> parameter to SFClient.write()
>>> @line 713
>>> def write(self, payload, timeout):
>>> instead of
>>> def write(self, payload):
>>> (hoping it doesn't break havoc, which normally shouldn't)
>>> 
>>> 
>>> the python script tos-deluge has also been modified. Here is the diff:
>>> 
>>> 402,403c402,403
>>> <     if sys.argv[2] == 'sf':
>>> <         baudrate = 0
>>> ---
>>>>   if sys.argv[2] in BAUDRATES:
>>>>       baudrate = BAUDRATES[sys.argv[2]]
>>> 405,428c405,417
>>> <       if sys.argv[2] in BAUDRATES:
>>> <           baudrate = BAUDRATES[sys.argv[2]]
>>> <       else:
>>> <           try:
>>> <               baudrate = int(sys.argv[2])
>>> <           except:
>>> <               print "ERROR: Wrong baudrate"
>>> <               sys.exit(-1)
>>> <
>>> <     # Initializes serial or serialforwarder port communication
>>> <     if baudrate == 0:
>>> <       try:
>>> <           s = tos.SFClient(sys.argv[1], 9002)
>>> <           am = tos.AM(s)
>>> <       except:
>>> <           print "ERROR: Unable to initialize network port connection to", sys.argv[1]
>>> <           sys.exit(-1)
>>> <     else:
>>> <       try:
>>> <           s = tos.Serial(sys.argv[1], baudrate, flush=True, debug=False)
>>> <           am = tos.AM(s)
>>> <       except:
>>> <           print "ERROR: Unable to initialize serial port connection to",  sys.argv[1]
>>> <           sys.exit(-1)
>>> ---
>>>>       try:
>>>>           baudrate = int(sys.argv[2])
>>>>       except:
>>>>           print "ERROR: Wrong baudrate"
>>>>           sys.exit(-1)
>>>>
>>>>   # Initializes serial port communication
>>>>   try:
>>>>       s = tos.Serial(sys.argv[1], baudrate, flush=True, debug=False)
>>>>       am = tos.AM(s)
>>>>   except:
>>>>       print "ERROR: Unable to initialize serial port connection to", 
>>>> sys.argv[1]
>>>>       sys.exit(-1)
>>> 
>>> I hope this can be useful to the community.
>>> 
>>> Vincent.
>>> 
>


More information about the Tinyos-help mailing list