X-Git-Url: https://oss.titaniummirror.com/gitweb/?a=blobdiff_plain;f=doc%2Fhtml%2Fdeluge-t2-manual.html;h=d02c01bc822933dae138d255f20e3a99a1feb675;hb=59853e54b15f706a46c50b4335b55885a1733313;hp=a807c8bf5fbcd42a405cceb45d3035117b00489d;hpb=e7b03f1e5e4f410541744b9ebc686f1be1a8054b;p=tinyos-2.x.git diff --git a/doc/html/deluge-t2-manual.html b/doc/html/deluge-t2-manual.html index a807c8bf..d02c01bc 100644 --- a/doc/html/deluge-t2-manual.html +++ b/doc/html/deluge-t2-manual.html @@ -1,3 +1,4 @@ + @@ -22,7 +23,7 @@ Deluge T2 - Programming Manual

Chieh-Jan Mike Liang
-Razvan Musaloiu-E.

May 18, 2007

+Razvan Musaloiu-E.

June 1, 2007

@@ -45,14 +46,37 @@ Having said that, it would be helpful to read the Deluge 2.0 manual and related documentations.

Deluge T2 is still in experimental phase. One current limitation is -platform support. Deluge T2 has been developed and tested on tmote sky -(telosb) only. In addition, Deluge T2 comes with 2 flash volumes by +platform support. Deluge T2 has been developed on Tmote Sky (telosb) +and MicaZ only. In addition, Deluge T2 comes with 2 flash volumes by default. However, more volumes can be added, if necessary. There are -also minor details that will be improved in future releases.

+also some minor details that will be improved in future releases.

-

2  Quick Start

+

2  Tools Installation

+

Deluge T2 requires a few Python scripts that not yet included in the +official tinyos-tools RPM package. On the CVS, the scripts are +located in tinyos-2.x/tools/tinyos/misc. The steps to install +them are the following:

+

+

+
  % cd $TOSROOT
+  % ./Bootstrap
+      ...
+  % ./configure
+      ...
+  % cd tinyos/misc
+  % make ; make install
+      ...
+

+

+By default, the files will be installed in /usr/local/bin. If +desired, the --prefix parameter from configure can be +used to indicate a different path.

+

+

+ +

3  Quick Start

This section introduces the basics of reprogramming with an example. In @@ -60,21 +84,25 @@ addition, it provides a quick test for software prerequisite. The latest TinyOS 2 CVS tree and Python 2.4 with pySerial support are recommended for running Deluge T2.

-To start the example, we run a burn script provided in -tinyos-2.x/apps/tests/deluge/Blink. For example, +To start the example, we first compile TOSBoot provided in tinyos-2.x/tos/lib/TOSBoot. +For example, +

+
   % make telosb
+

+Then, we run the burn script provided in tinyos-2.x/apps/tests/deluge/Blink. +For example,

-
   % ./burn /dev/ttyUSB0
+
   % ./burn /dev/ttyUSB0 telosb
 

This burn script programs the directly-connected mote with one -version of blink. Then, it injects and reprograms the mote with another -version of blink. At this point, you can try to retrieve program image +version of Blink. Then, it injects and reprograms the mote with another +version of Blink. At this point, you can try to retrieve program image versioning information. The script to interface with the mote is -provided in tinyos-2.x/tools/. For example, +provided in tinyos-2.x/tools/tinyos/misc. For example,

-
   % tos-deluge.py /dev/ttyUSB0 -p 0
+
   % tos-deluge /dev/ttyUSB0 telosb -p 0
 

-You should see something similar to the output below.

-

+You should see something similar to the output below.

   Pinging node ...
    Connected to Deluge node.
@@ -94,12 +122,12 @@ You should see something similar to the output below.

--------------------------------------------------

-The usage of delugy.py is available by running the script without -any arguments, and it will be discussed in section 4.

+The usage of tos-deluge is available by running the script without +any arguments, and it will be discussed in section 5.

- -

3  Reprogramming a Network

+ +

4  Reprogramming a Network

This section illustrates the procedure to reprogram a network. @@ -107,30 +135,35 @@ Specifically, we will see how program images are injected and how versioning information is retrieved.

- -

3.1  Setting Up the Motes

+ +

4.1  Setting Up the Motes

We first install both TOSBoot and a program that runs Deluge T2. For simplicity, we use the golden image as the program. The golden image is provided in tinyos-2.x/apps/tests/deluge/GoldenImage, and it does nothing except initializing Deluge T2. This step can be done by compiling and programming the mote normally. For example,

-
   % make telosb install,0 bsl,/dev/ttyUSB0
+
   % CFLAGS=-DDELUGE_BASESTATION make telosb install,0 bsl,/dev/ttyUSB0
 

+CFLAGS=-DDELUGE_BASESTATION indicates that the current mote will +act as a base station, which requires an additional component to accept +user commands from the serial port. Normally, only one mote in the +network needs to be the base station, and other motes are reprogrammed +over-the-air. If error occurs when running the command above, you might +need to compile TOSBoot as shown in section 3. Deluge T2 makes sure the mote ID remain persistent over image reprogramming. You can test the installation by interacting with the -mote through deluge.py.

+mote through tos-deluge.

- -

3.2  Preparing Your Application

+ +

4.2  Preparing Your Application

In most cases, the only two files you need to modify are the top-level -wiring file and the Make file. You need to make sure DelugeC -component is included. In addition, the Make file should have the -following lines: +wiring file and the Makefile. You need to make sure DelugeC +component is included. In addition, the Makefile should have the +following line:

   TINYOS_NP=BNP
-   CFLAGS += -DTOSH_DATA_LENGTH=100
 

Finally, compile your application without installing it on the mote. For example, @@ -139,12 +172,12 @@ example,

- -

3.3  Injecting Your Application

+ +

4.3  Injecting Your Application

Before a program image is disseminated in the network, we need to first inject it to the base station. For example,

-
   % tos-deluge.py /dev/ttyUSB0 -i 1 apps/Blink/build/telosb/tos_image.xml
+
   % tos-deluge /dev/ttyUSB0 telosb -i 1 apps/Blink/build/telosb/tos_image.xml
 

You should see something similar to the output below.

@@ -175,13 +208,13 @@ You should see something similar to the output below.

- -

3.4  Reprogramming with New Image

+ +

4.4  Reprogramming with New Image

After you decide which program image you want to reprogram, you can first test on the base station by issuing the reboot command. For example,

-
   % tos-deluge.py /dev/ttyUSB0 -r 1
+
   % tos-deluge /dev/ttyUSB0 telosb -r 1
 

After a few moments, the mote will begin quickly flashing the LEDs to signify the reprogramming process.

@@ -189,7 +222,7 @@ signify the reprogramming process.

Now, you can have the base station disseminate a program image to the rest of the network. For example,

-
   % tos-deluge.py /dev/ttyUSB0 -d 1
+
   % tos-deluge /dev/ttyUSB0 telosb -d 1
 

This command instructs the base station to notify the whole network of the availablility of a new program image. This notification is currently @@ -198,8 +231,8 @@ network to get the new program image. Upon receiving the complete image over-the-air, each node automatically reboots and reprograms itself.

- -

4  Deluge T2 Python Toolchain

+ +

5  Deluge T2 Python Toolchain

Different from Deluge 2.0, Deluge T2 toolchain is written in Python. @@ -207,49 +240,49 @@ However, as demonstrated in the previous section, the usage is very similar.

- -

4.1  -p -ping

+ +

5.1  -p -ping

This command is useful for checking the status of program images on a mote. It provides information such as program name, compile time, size of the image, and so on.

- -

4.2  -i -inject

+ +

5.2  -i -inject

This command creates a program image from the supplied tos_image.xml file, and it injects the image into specified volume on the mote. All versioning information is kept on the mote, so no state is stored on the PC.

- -

4.3  -r -reboot

+ +

5.3  -r -reboot

This command sets up the mote to reprogram itself after reboot, and then it reboots the mote. This command is applicable only to the directly connected mote.

- -

4.4  -d -dissemination

+ +

5.4  -d -dissemination

This command instructs the directly connected mote to disseminate an image to the network. This image is specified by the volume ID. Upon successfully receiving an image, motes in the network automatically reprogram themselves.

- -

4.5  -e -erase

+ +

5.5  -e -erase

This command erases a flash volume on the directly connected mote.

- -

4.6  -s -reset

+ +

5.6  -s -reset

This command resets versioning information of a specific image on the directly connected mote.

-Last modified: Friday, May 18th, 2007
+Last modified: Friday, June 1st, 2007
HTML conversion by TeX2page 2004-09-11