]> oss.titaniummirror.com Git - tinyos-2.x.git/commitdiff
The latest Deluge T2 manual is on the wiki: http://docs.tinyos.net/index.php/Deluge_T2
authorrazvanm <razvanm>
Sat, 6 Dec 2008 04:03:23 +0000 (04:03 +0000)
committerrazvanm <razvanm>
Sat, 6 Dec 2008 04:03:23 +0000 (04:03 +0000)
doc/html/deluge-t2-manual.html [deleted file]
doc/pdf/deluge-t2-manual.pdf [deleted file]

diff --git a/doc/html/deluge-t2-manual.html b/doc/html/deluge-t2-manual.html
deleted file mode 100644 (file)
index 8078304..0000000
+++ /dev/null
@@ -1,312 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<title>
-Deluge T2 - Programming Manual
-</title>
-<link rel="stylesheet" type="text/css" href="deluge-t2-manual.css" title=default>
-<meta name=robots content="index,follow">
-</head>
-<body>
-<div id=title>
-<p></p>
-<p>
-
-</p>
-<p>
-</p>
-<p>
-
-
-
-</p>
-<h1 class=title>Deluge T2 - Programming Manual</h1>
-<p></p>
-<div align=center>
-Chieh-Jan Mike Liang<br>
-Razvan Musaloiu-E.<p>January 14, 2008</p>
-</div>
-<p></p>
-<p>
-</p>
-<a name="node_sec_1"></a>
-<h1>1&nbsp;&nbsp;Introduction</h1>
-<p></p>
-<p>
-Deluge is a reliable data dissemination protocol for large objects, such 
-as program binaries. Together with a bootloader, Deluge provides a way 
-to reprogram sensor motes in a network. Deluge is maintained by Jonathan 
-Hui, and Deluge 2.0 is the most recent version. Documentations on Deluge 
-2.0 are available at 
-<a href="http://www.cs.berkeley.edu/~jwhui/research/deluge/">http://www.cs.berkeley.edu/~jwhui/research/deluge/</a>.</p>
-<p>
-Deluge T2 is an effort to port Deluge 2.0 from TinyOS 1 to TinyOS 2. 
-Although the code from Deluge 2.0 is reused as much as possible, the 
-behavior and the usage of Deluge T2 are not entirely identical to Deluge 
-2.0. Having said that, it would still be helpful to read the Deluge 2.0 
-manual and related documentations.</p>
-<p>
-Deluge T2 is still in experimental phase. One current limitation is 
-platform support. Deluge T2 has been developed on Tmote Sky (<i>telosb</i>) 
-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 some minor details that will be improved in future releases.</p>
-<p>
-</p>
-<a name="node_sec_2"></a>
-<h1>2&nbsp;&nbsp;Tools Installation</h1>
-<p>Deluge T2 requires a few Python scripts that not yet included in the
-official <code class=verbatim>tinyos-tools</code> RPM package. On the CVS, the scripts are
-located in <code class=verbatim>tinyos-2.x/tools/tinyos/misc</code>. The steps to install
-them are the following:</p>
-<p>
-</p>
-<pre class=verbatim>  % cd $TOSROOT/tools
-  % ./Bootstrap
-      ...
-  % ./configure
-      ...
-  % cd tinyos/misc
-  % make ; make install
-      ...
-</pre><p></p>
-<p>
-By default, the files will be installed in <code class=verbatim>/usr/local/bin</code>. If
-desired, the <code class=verbatim>--prefix</code> parameter from <code class=verbatim>configure</code> can be
-used to indicate a different path. </p>
-<p>
-</p>
-<a name="node_sec_3"></a>
-<h1>3&nbsp;&nbsp;Quick Start</h1>
-<p></p>
-<p>
-This section introduces the basics of reprogramming with an example. In 
-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.</p>
-<p>
-To start the example, we first compile tosboot provided in <code class=verbatim>tinyos-2.x/tos/lib/tosboot</code>.
-For example,
-</p>
-<pre class=verbatim>   % make telosb
-</pre><p>
-Then, we run the <code class=verbatim>burn</code> script provided in <code class=verbatim>tinyos-2.x/apps/tests/deluge/Blink</code>.
-For example,
-</p>
-<pre class=verbatim>   % ./burn /dev/ttyUSB0 telosb
-</pre><p>
-This <code class=verbatim>burn</code> 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 
-versioning information. The script to interface with the mote is 
-provided in <code class=verbatim>tinyos-2.x/tools/tinyos/misc</code>. For example,
-</p>
-<pre class=verbatim>   % tos-deluge /dev/ttyUSB0 telosb -p 0
-</pre><p>
-You should see something similar to the output below.
-</p>
-<pre class=verbatim>   Pinging node ...
-   --------------------------------------------------
-   Currently Executing:
-     Prog Name:   BlinkAppC
-     UID:         0xA274CBBE
-     Compiled On: Mon Jan 14 13:09:38 2008
-     Node ID:     1
-   
-   Stored image 0
-     Prog Name:   BlinkAppC
-     UID:         0xD7EEFACE
-     Compiled On: Mon Jan 14 12:40:06 2008
-     Platform:    telosb
-     User ID:     tinyos2
-     Host Name:   bluephase
-     User Hash:   0x587C9C16
-     Size:        33504
-     Num Pages:   30
-   --------------------------------------------------
-</pre><p></p>
-<p>
-The usage of <code class=verbatim>tos-deluge</code> is available by running the script without 
-any arguments, and it will be discussed in section <a href="#node_sec_5">5</a>.</p>
-<p>
-</p>
-<a name="node_sec_4"></a>
-<h1>4&nbsp;&nbsp;Reprogramming a Network</h1>
-<p></p>
-<p>
-This section illustrates the procedure to reprogram a network. 
-Specifically, we will see how program images are injected and how 
-versioning information is retrieved.</p>
-<p>
-</p>
-<a name="node_sec_4.1"></a>
-<h2>4.1&nbsp;&nbsp;Setting Up the Motes</h2>
-<p>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 <code class=verbatim>tinyos-2.x/apps/tests/deluge/GoldenImage</code>, and it does 
-nothing except initializing Deluge T2. This step can be done by 
-compiling and programming the mote normally. For example,
-</p>
-<pre class=verbatim>   % CFLAGS=-DDELUGE_BASESTATION make telosb install,0 bsl,/dev/ttyUSB0
-</pre><p>
-<code class=verbatim>CFLAGS=-DDELUGE_BASESTATION</code> 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 <a href="#node_sec_3">3</a>. 
-Deluge T2 makes sure the mote ID remain persistent over image 
-reprogramming. You can test the installation by interacting with the 
-mote through <code class=verbatim>tos-deluge</code>.</p>
-<p>
-</p>
-<a name="node_sec_4.2"></a>
-<h2>4.2&nbsp;&nbsp;Preparing Your Application</h2>
-<p>In most cases, the only two files you need to modify are the top-level
-wiring file and the Makefile. You need to make sure <code class=verbatim>DelugeC</code>
-component is included. In addition, the Makefile should have the
-following line:
-</p>
-<pre class=verbatim>   TINYOS_NP=BNP
-</pre><p>
-Finally, compile your application without installing it on the mote. For 
-example,
-</p>
-<pre class=verbatim>   % make telosb
-</pre><p></p>
-<p>
-</p>
-<a name="node_sec_4.3"></a>
-<h2>4.3&nbsp;&nbsp;Injecting Your Application</h2>
-<p>Before a program image is disseminated in the network, we need to first 
-inject it to the base station. For example,
-</p>
-<pre class=verbatim>   % tos-deluge /dev/ttyUSB0 telosb -i 1 apps/Blink/build/telosb/tos_image.xml
-</pre><p>
-You should see something similar to the output below.</p>
-<p>
-</p>
-<pre class=verbatim>   Pinging node ...
-   Connected to Deluge nodes.
-   No valid image was detected.
-   --------------------------------------------------
-   Create image: /home/tinyos2/local/bin/tos-build-deluge-image -i 1 build/telosb/tos_image.xml
-   Ihex read complete:
-     35916 bytes starting at 0x4A00
-        32 bytes starting at 0xFFE0
-     35948 bytes in 2 sections
-   CRCs:
-     0xCC0E 0xE57B 0xC224 0xE4FA 0x63EB 0xEBA5 0xE50B 
-     0x8073 0x345E 0x3BBF 0xF415 0xA7DB 0xA67C 0x6953 
-     0x6638 0x3D76 0x7218 0x0E8F 0x9C93 0xD679 0x7A50 
-     0xBFCD 0x8B57 0x7A47 0x323E 0x29FF 0x5EFF 0xB0AE 
-     0x1392 0x4A82 0xACFB 0x69D7 0x8C07 
-   --------------------------------------------------
-   36816 bytes in 28.23 seconds (1303.9932 bytes/s)     
-   --------------------------------------------------
-   Replace image with:
-     Prog Name:   BlinkAppC
-     UID:         0x76D2FB1B
-     Compiled On: Sun Jan 13 21:47:54 2008
-     Platform:    telosb
-     User ID:     tinyos2
-     Host Name:   bluephase
-     User Hash:   0x587C9C16
-     Size:        36816
-     Num Pages:   33
-   --------------------------------------------------
-</pre><p></p>
-<p>
-</p>
-<a name="node_sec_4.4"></a>
-<h2>4.4&nbsp;&nbsp;Reprogramming with New Image</h2>
-<p>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,
-</p>
-<pre class=verbatim>   % tos-deluge /dev/ttyUSB0 telosb -r 1
-</pre><p>
-After a few moments, the mote will begin quickly flashing the LEDs to 
-signify the reprogramming process.</p>
-<p>
-Now, you can have the base station disseminate a program image to the rest of 
-the network. For example,
-</p>
-<pre class=verbatim>   % tos-deluge /dev/ttyUSB0 telosb -d 1
-</pre><p>
-This command instructs the base station to notify the whole network of 
-the availability of a new program image. This notification is currently 
-done via TinyOS dissemination service, and it triggers all motes in the 
-network to get the new program image. After all motes receive the image 
-over-the-air, you can instruct the base station to disseminate the 
-command to reprogram in the network. For example,
-</p>
-<pre class=verbatim>   % tos-deluge /dev/ttyUSB0 telosb -dr 1
-</pre><p></p>
-<p>
-</p>
-<a name="node_sec_5"></a>
-<h1>5&nbsp;&nbsp;Deluge T2 Python Toolchain</h1>
-<p></p>
-<p>
-Different from Deluge 2.0, Deluge T2 toolchain is written in Python. 
-However, as demonstrated in the previous section, the usage is similar.</p>
-<p>
-</p>
-<a name="node_sec_5.1"></a>
-<h2>5.1&nbsp;&nbsp;-p -ping</h2>
-<p>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.</p>
-<p>
-</p>
-<a name="node_sec_5.2"></a>
-<h2>5.2&nbsp;&nbsp;-i -inject</h2>
-<p>This command creates a program image from the supplied
-<code class=verbatim>tos_image.xml</code> file, and it injects the image into specified
-volume on the mote. </p>
-<p>
-</p>
-<a name="node_sec_5.3"></a>
-<h2>5.3&nbsp;&nbsp;-r -reprogram</h2>
-<p>This command sets up the directly-connected mote to reprogram itself
-after reboot, and then it reboots the mote.</p>
-<p>
-</p>
-<a name="node_sec_5.4"></a>
-<h2>5.4&nbsp;&nbsp;-d -disseminate</h2>
-<p>This command instructs the base station mote to disseminate an image to 
-the network. This image is specified by the volume ID.</p>
-<p>
-</p>
-<a name="node_sec_5.5"></a>
-<h2>5.5&nbsp;&nbsp;-dr -disseminate-and-reprogram</h2>
-<p>This command asks the motes in the network not only to disseminate an
-image but also to start running it. This is accomplish using a reboot.</p>
-<p>
-</p>
-<a name="node_sec_5.6"></a>
-<h2>5.6&nbsp;&nbsp;-e -erase</h2>
-<p>This command erases a flash volume on the base station mote.</p>
-<p>
-</p>
-<a name="node_sec_5.7"></a>
-<h2>5.7&nbsp;&nbsp;-s -stop</h2>
-<p>The effect of <code class=verbatim>-d</code> and <code class=verbatim>-dr</code> is continuous which means a new
-mote will become ``infected'' if he is nearby. This command stops the
-``infection''.</p>
-<p>
-</p>
-<a name="node_sec_5.8"></a>
-<h2>5.8&nbsp;&nbsp;-ls -local-stop</h2>
-<p>When <code class=verbatim>-d</code> or <code class=verbatim>-dr</code> are in effect, the volume used by them is
-locked. This command can be used to unlock the volume in order to
-erase or inject a new image.</p>
-<p>
-</p>
-<p></p>
-<div align=right class=colophon>Last modified: Monday, January 14th, 2008 2:11:03pm<br><div align=right class=advertisement>HTML conversion by <a href="http://www.ccs.neu.edu/~dorai/tex2page/tex2page-doc.html">TeX2page 20050501</a></div></div>
-</div>
-</body>
-</html>
diff --git a/doc/pdf/deluge-t2-manual.pdf b/doc/pdf/deluge-t2-manual.pdf
deleted file mode 100644 (file)
index 35bb496..0000000
Binary files a/doc/pdf/deluge-t2-manual.pdf and /dev/null differ