]> oss.titaniummirror.com Git - tinyos-2.x.git/blobdiff - doc/html/upgrade-tinyos.html
This commit from Chieh-Jan (Mike) Liang fixes the following issues:
[tinyos-2.x.git] / doc / html / upgrade-tinyos.html
index 50fbfaa9f867562880e92eb4f8c02002ec381ddf..97a630b71084317915078e0f3214b3ea882a20fc 100644 (file)
@@ -8,7 +8,7 @@
   <body>
 
     <div class="title">Upgrading from TinyOS 1.x to TinyOS 2.x</div>
-    <div class="subtitle">Last updated 5 November 2006</div>
+    <div class="subtitle">Last updated 1 May 2007</div>
 <p>
 This document describes how to upgrade your TinyOS 1.x environment to
 a TinyOS 2.x environment. This requires that you not only install the 
@@ -157,11 +157,17 @@ only installing a 2.x tree, you can use <code>rpm -Uvh</code>.
 If you using the Cygwin version recommended
 in these install
 instructions, you should install the "Recommended" Windows/Cygwin
-nesC RPM. 
-Try installing it and if it does not work (e.g., you
-get strange errors when you try to execute it), this may be due
+nesC RPM.
+If you
+get strange errors when you try to compile TinyOS programs,
+such as the error message "the procedure entry point basename could not be located
+in the dynamic link library cygwin1.dll", this is likely due
 to a Cygwin version incompatibility: try the "Other" Windows/Cygwin 
-RPM (1.2.7a). 
+RPM. If you are using Cygwin and installing the nesC RPM 
+causes an error that the RPM was built for Cygwin, add the <tt>--ignoreos</tt>
+option.
+
+
 
 <p>
 
@@ -178,9 +184,9 @@ RPM (1.2.7a).
 
 <tr>
   <td>NesC</td>
-  <td><a href="http://www.tinyos.net/dist-1.2.0/tinyos/windows/nesc-1.2.7b-1.cygwin.i386.rpm">nesc-1.2.7b-1.cygwin.i386.rpm</a></td>
-  <td><a href="http://www.tinyos.net/dist-1.2.0/tinyos/windows/nesc-1.2.7a-1.cygwin.i386.rpm">nesc-1.2.7a-1.cygwin.i386.rpm</a></td>
-  <td><a href="http://www.tinyos.net/dist-1.2.0/tinyos/linux/nesc-1.2.7a-1.i386.rpm">nesc-1.2.7a-1.i386.rpm </a></td>
+  <td><a href="http://www.tinyos.net/dist-1.2.0/tinyos/windows/nesc-1.2.8a-1.cygwin.i386.rpm">nesc-1.2.8a-1.cygwin.i386.rpm</a></td>
+  <td><a href="http://www.tinyos.net/dist-1.2.0/tinyos/windows/nesc-1.2.8b-1.cygwin.i386.rpm">nesc-1.2.8b-1.cygwin.i386.rpm</a></td>
+  <td><a href="http://www.tinyos.net/dist-1.2.0/tinyos/linux/nesc-1.2.8a-1.i386.rpm">nesc-1.2.8a-1.i386.rpm </a></td>
   <td><a href=""></a><code>rpm -Uvh</code><br><code>rpm -Uvh --ignoreos</code> (if Cygwin complains)</td>
 </tr>
 
@@ -231,8 +237,8 @@ recommend removing it before installing the new one with a forced install.</p>
 
 <tr>
   <td>TinyOS</td>
-  <td><a href="http://www.tinyos.net/dist-2.0.0/tinyos/windows/tinyos-2.0.0-1.cygwin.noarch.rpm">tinyos-2.0.0-1.cygwin.noarch.rpm</a></td>
-  <td><a href="http://www.tinyos.net/dist-2.0.0/tinyos/linux/tinyos-2.0.0-1.noarch.rpm">tinyos-2.0.0-1.noarch.rpm</a></td>
+  <td><a href="http://www.tinyos.net/dist-2.0.0/tinyos/windows/tinyos-2.0.1-5.cygwin.noarch.rpm">tinyos-2.0.1-5.cygwin.noarch.rpm</a></td>
+  <td><a href="http://www.tinyos.net/dist-2.0.0/tinyos/linux/tinyos-2.0.1-5.noarch.rpm">tinyos-2.0.1-5.noarch.rpm</a></td>
   <td><tt>rpm -Uvh</tt> (to upgrade)<br>
       <tt>rpm -ivh</tt> (to install)<br>
       <tt>rpm -ivh --force</tt> (to force install)<br>
@@ -315,6 +321,22 @@ are going to use: <code>chmod 666 /dev/&lt;devicename&gt;<code>
 groups: </li>
 -->
 </code></code></li></ol>
+<li><p>Finally, if you have installed TinyOS 2.0.1, there is a bug in TOSSIM (which will be fixed in 2.0.2).
+The bug is in file <tt>tos/chips/atm128/sim/atm128_sim.h</tt>. Change these lines 22 and 23 from:
+
+<pre>
+#define _SFR_IO8(io_addr) _MMIO_BYTE((io_addr) + 0x20)
+#define _SFR_IO16(io_addr) _MMIO_WORD((io_addr) + 0x20)
+</pre>
+
+to
+
+<pre>
+#define _SFR_IO8(io_addr) _MMIO_BYTE((io_addr))
+#define _SFR_IO16(io_addr) _MMIO_WORD((io_addr))
+</pre>
+
+If you do not do this, then timers will not work correctly.
 
 </li></ul>
 <a name="tinyos1"><h1>Switching back to a TinyOS 1.x tree</h1></a>