<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Senslab</title>
	<atom:link href="http://www.senslab.info/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.senslab.info</link>
	<description>Very large scale open wireless sensor network testbed</description>
	<lastBuildDate>Wed, 27 Mar 2013 11:49:47 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Experimental Evaluation of RPL routing protocol</title>
		<link>http://www.senslab.info/2013/03/experimental-evaluation-of-rpl-routing-protocol/</link>
		<comments>http://www.senslab.info/2013/03/experimental-evaluation-of-rpl-routing-protocol/#comments</comments>
		<pubDate>Wed, 27 Mar 2013 11:49:47 +0000</pubDate>
		<dc:creator>Karel Heurtefeux</dc:creator>
				<category><![CDATA[Experiments]]></category>

		<guid isPermaLink="false">http://www.senslab.info/2013/03/experimental-evaluation-of-rpl-routing-protocol/</guid>
		<description><![CDATA[Title Experimental Evaluation of RPL routing protocol Conducted by Author Karel Heurtefeux Contributors Karel Heurtefeux Laboratory QMIC Ressources Operating System Contiki Status Achieved Radio CC2420 Sites Lille Number of nodes involved 100 Time of platforms usage Days Description Experimental Evaluation &#8230;<p class="read-more"><a href="http://www.senslab.info/2013/03/experimental-evaluation-of-rpl-routing-protocol/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<h1>Title</h1>
<p>Experimental Evaluation of RPL routing protocol</p>
<h1>Conducted by</h1>
<table>
<tr>
<td style="font-weight:bold">Author</td>
<td><a href="http://www.senslab.info/?author=31">Karel Heurtefeux</a></td>
</tr>
<tr>
<td style="font-weight:bold">Contributors</td>
<td>Karel Heurtefeux</td>
</tr>
<tr>
<td style="font-weight:bold">Laboratory</td>
<td>QMIC</td>
</tr>
</table>
<h1>Ressources</h1>
<table>
<tr>
<td style="font-weight:bold">Operating System</td>
<td>Contiki</td>
</tr>
<tr>
<td style="font-weight:bold">Status</td>
<td>Achieved</td>
</tr>
<tr>
<td style="font-weight:bold">Radio</td>
<td>CC2420</td>
</tr>
<tr>
<td style="font-weight:bold">Sites</td>
<td>Lille</td>
</tr>
<tr>
<td style="font-weight:bold">Number of nodes involved</td>
<td>100</td>
</tr>
<tr>
<td style="font-weight:bold">Time of platforms usage</td>
<td>Days</td>
</tr>
</table>
<h1>Description</h1>
<p>Experimental Evaluation of RPL routing protocol (with the default OF) to evaluate the dynamics of the logical topology, the overhead and the delivery rate. </p>
<h1>Significant results</h1>
<p>- A strong stability of the path length despite an instability<br />
of the physical topology;<br />
- the stabilization of the logical routing structure takes<br />
time and is subject to change;<br />
- despite the efficiency of the routing protocol to find shortest path, the delivery rate is quite low in particular for very dense networks;<br />
- the major part of the IPv6 traffic is composed by control packets ;<br />
- Presence of important bottlenecks in the network </p>
<h1>Illustrating chart picture</h1>
<p><a href="http://www.heurtefeux.info/images/Graph_RPL_Logical_Topology.jpg"><img src="http://www.heurtefeux.info/images/Graph_RPL_Logical_Topology.jpg" alt="" width="620" class="alignleft size-large" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.senslab.info/2013/03/experimental-evaluation-of-rpl-routing-protocol/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IEEE 802.15.4 experimental evaluation</title>
		<link>http://www.senslab.info/2012/12/ieee-802-15-4-experimental-evaluation/</link>
		<comments>http://www.senslab.info/2012/12/ieee-802-15-4-experimental-evaluation/#comments</comments>
		<pubDate>Fri, 07 Dec 2012 07:42:30 +0000</pubDate>
		<dc:creator>Fabrice Theoleyre</dc:creator>
				<category><![CDATA[Experiments]]></category>

		<guid isPermaLink="false">http://www.senslab.info/2012/12/ieee-802-15-4-experimental-evaluation/</guid>
		<description><![CDATA[Title IEEE 802.15.4 experimental evaluation Conducted by Author F. Theoleyre Contributors F. Theoleyre, Laboratory LSIIT, Basu Univ. Ressources Operating System tinyos Status In progress Radio CC2420 Sites Lille Number of nodes involved 256 Time of platforms usage Days Description We &#8230;<p class="read-more"><a href="http://www.senslab.info/2012/12/ieee-802-15-4-experimental-evaluation/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<h1>Title</h1>
<p>IEEE 802.15.4 experimental evaluation</p>
<h1>Conducted by</h1>
<table>
<tbody>
<tr>
<td style="font-weight: bold;">Author</td>
<td><a href="http://www.senslab.info/?author=28">F. Theoleyre</a></td>
</tr>
<tr>
<td style="font-weight: bold;">Contributors</td>
<td>F. Theoleyre,</td>
</tr>
<tr>
<td style="font-weight: bold;">Laboratory</td>
<td>LSIIT, Basu Univ.</td>
</tr>
</tbody>
</table>
<h1>Ressources</h1>
<table>
<tbody>
<tr>
<td style="font-weight: bold;">Operating System</td>
<td>tinyos</td>
</tr>
<tr>
<td style="font-weight: bold;">Status</td>
<td>In progress</td>
</tr>
<tr>
<td style="font-weight: bold;">Radio</td>
<td>CC2420</td>
</tr>
<tr>
<td style="font-weight: bold;">Sites</td>
<td>Lille</td>
</tr>
<tr>
<td style="font-weight: bold;">Number of nodes involved</td>
<td>256</td>
</tr>
<tr>
<td style="font-weight: bold;">Time of platforms usage</td>
<td>Days</td>
</tr>
</tbody>
</table>
<h1>Description</h1>
<p>We aim here at experimentally measure the performance of IEEE 802.15.4 in multihop topologies (pdr, QoS, etc.)</p>
<h1>Significant results</h1>
<p>in progress</p>
]]></content:encoded>
			<wfw:commentRss>http://www.senslab.info/2012/12/ieee-802-15-4-experimental-evaluation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Evolution of the SensLAB Testbed</title>
		<link>http://www.senslab.info/2012/09/evolution-of-the-senslab-testbed/</link>
		<comments>http://www.senslab.info/2012/09/evolution-of-the-senslab-testbed/#comments</comments>
		<pubDate>Wed, 05 Sep 2012 09:40:47 +0000</pubDate>
		<dc:creator>Gaëtan Harter</dc:creator>
				<category><![CDATA[Advertisement]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://www.senslab.info/?p=1678</guid>
		<description><![CDATA[A new platform architecture for the SensLAB testbed Even if the SensLAB ANR project ended last december, the SensLAB testbed is still in development through the FIT project (http://fit-equipex.fr/). Before extending the testbed in terms of number and types of &#8230;<p class="read-more"><a href="http://www.senslab.info/2012/09/evolution-of-the-senslab-testbed/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<h1><span style="font-size: medium;">A new platform architecture for the SensLAB testbed</span></h1>
<div>Even if the SensLAB ANR project ended last december, the SensLAB testbed is still in development through the FIT project (<a href="http://fit-equipex.fr/">http://fit-equipex.fr/</a>).</div>
<div>Before extending the testbed in terms of number and types of nodes (planned for early 2013), our first goal is to interconnect the four SensLAB sites, providing a single entry point to the users and allowing multi-sites experiments with one user account.</div>
<div>For this, we are developing a new back-end architecture, which exposes a RESTful API. We are also working on a new version of the web portal and the command line client.</div>
<h1></h1>
<h1><span style="font-size: medium;">Migration of the existing sites from September to December</span></h1>
<p>We will proceed by steps for the transition to this new architecture.</p>
<ol>
<li>In <strong>September</strong>, Grenoble and Rennes sites will be closed, then re-opened with the new architecture in alpha-test version. This version will be private to the dev team and some selected users.</li>
<li>In <strong>October</strong>, the beta-test version will be deployed in Grenoble and Rennes. This beta-test phase will be public.</li>
<li>In <strong>December</strong>, Lille and Strasbourg sites will also run under the new architecture. We will then have a beta-test phase with all SensLAB sites.</li>
</ol>
<h1><span style="font-size: medium;">Keep working during the migration</span></h1>
<div>One week before the closure of a site, we will send an email to alert you. You will then have time to finish your experiments and retrieve your data from your SensLAB home directory.</div>
<div>
<ul>
<li>During steps 1 and 2 you will be able to continue your experiments with the two radio chips (CC2420 in Lille, CC1101 in Strasbourg) thanks to their actual web portal, back-end architecture and your user Virtual Machine.</li>
<li>From step 2, you will be able to run experiments with the two radio chips (CC1101 in Grenoble, CC2420 in Rennes) with the new architecture and the new tools.</li>
<li>From step 3, with a unique user account, you will be able to run experiments on any SensLAB site, and potentially on several sites at once.</li>
</ul>
</div>
<div>Best regards,<br />
SensLAB team</div>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.senslab.info/2012/09/evolution-of-the-senslab-testbed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Public IPv6 addresses on nodes with servers on an IPv4 connected private network.</title>
		<link>http://www.senslab.info/2012/05/public-ipv6-addresses-on-nodes-with-servers-on-an-ipv4-connected-private-network/</link>
		<comments>http://www.senslab.info/2012/05/public-ipv6-addresses-on-nodes-with-servers-on-an-ipv4-connected-private-network/#comments</comments>
		<pubDate>Tue, 29 May 2012 15:58:27 +0000</pubDate>
		<dc:creator>Gaëtan Harter</dc:creator>
				<category><![CDATA[Experiments]]></category>

		<guid isPermaLink="false">http://www.senslab.info/2012/05/public-ipv6%c2%a0addresses-on-nodes-with-servers-on-an-ipv4%c2%a0connected-private-network/</guid>
		<description><![CDATA[Title Public IPv6 addresses on nodes with servers on an IPv4 connected private network. Conducted by Author Gaëtan Harter Laboratory Inria Ressources Operating System Contiki Status Achieved Radio CC1101 Sites Grenoble Number of nodes involved Around 10 Time of platforms usage Hours &#8230;<p class="read-more"><a href="http://www.senslab.info/2012/05/public-ipv6-addresses-on-nodes-with-servers-on-an-ipv4-connected-private-network/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<h1>Title</h1>
<p>Public IPv6 addresses on nodes with servers on an IPv4 connected private network.</p>
<h1>Conducted by</h1>
<table>
<tbody>
<tr>
<td style="font-weight: bold;">Author</td>
<td><a href="http://www.senslab.info/?author=13">Gaëtan Harter</a></td>
</tr>
<tr>
<td style="font-weight: bold;">Laboratory</td>
<td>Inria</td>
</tr>
</tbody>
</table>
<h1>Ressources</h1>
<table>
<tbody>
<tr>
<td style="font-weight: bold;">Operating System</td>
<td>Contiki</td>
</tr>
<tr>
<td style="font-weight: bold;">Status</td>
<td>Achieved</td>
</tr>
<tr>
<td style="font-weight: bold;">Radio</td>
<td>CC1101</td>
</tr>
<tr>
<td style="font-weight: bold;">Sites</td>
<td>Grenoble</td>
</tr>
<tr>
<td style="font-weight: bold;">Number of nodes involved</td>
<td>Around 10</td>
</tr>
<tr>
<td style="font-weight: bold;">Time of platforms usage</td>
<td>Hours</td>
</tr>
<tr>
<td style="font-weight: bold;">External documentation</td>
<td>In the <a href="http://www.senslab.info/2012/04/senslab-git-repository/">git repository</a> in &#8216;user_contributions&#8217; folder</td>
</tr>
</tbody>
</table>
<h1>Description</h1>
<p>I gave an IPv6 access from the internet to a sensor network. Where the virtual machine, acting as router between internet and the sensor network has only an IPv4 connectivity.</p>
<p>On the senslab platform, a network was built with RPL routing and a border router making the link between the wireless network and the virtual machine using SLIP.</p>
<p>To get public IPv6 addresses, I used a IPv6 over IPv4 tunnel offered by <a href="http://www.gogo6.com/freenet6/tunnelbroker">http://www.gogo6.com/freenet6/tunnelbroker</a>.</p>
<p>I got a /56 tunnel, that allowed me to give a /64 prefix for the sensor network and use another /64 prefix for the configuration.</p>
<p>So each node on the network was accessible from the outside with public IPv6 addresses.</p>
<h1>Significant results</h1>
<p>I could ping all the nodes on the platform from the internet using their IPv6 addresses, and I could access the webserver that was running on the border router node.</p>
<p>It also work when setting up one virtual machine from another senslab site as an IPv6 router, and route the packets for the sensor network to the VM where the experiment is running.<br />
It is a scenario that may be what the IPv6 deployment on senslab will be: One IPv6 router that gives prefixes to running experiments and routes the packets.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.senslab.info/2012/05/public-ipv6-addresses-on-nodes-with-servers-on-an-ipv4-connected-private-network/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>IPv6 Communication between nodes from different sites</title>
		<link>http://www.senslab.info/2012/03/ipv6-communication-beetween-nodes-from-different-sites/</link>
		<comments>http://www.senslab.info/2012/03/ipv6-communication-beetween-nodes-from-different-sites/#comments</comments>
		<pubDate>Thu, 29 Mar 2012 14:01:49 +0000</pubDate>
		<dc:creator>Gaëtan Harter</dc:creator>
				<category><![CDATA[Experiments]]></category>

		<guid isPermaLink="false">http://www.senslab.info/?p=1479</guid>
		<description><![CDATA[Title IPv6 Communication between nodes from different sites Conducted by Author Gaëtan Harter Laboratory inria Ressources Operating System Contiki Status Achieved Radio CC1101 Sites Several sites Number of nodes involved Around 10, 5 on each site Time of platforms usage &#8230;<p class="read-more"><a href="http://www.senslab.info/2012/03/ipv6-communication-beetween-nodes-from-different-sites/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<h1>Title</h1>
<p>IPv6 Communication between nodes from different sites</p>
<h1>Conducted by</h1>
<table>
<tbody>
<tr>
<td style="font-weight: bold;">Author</td>
<td><a href="http://www.senslab.info/?author=13">Gaëtan Harter</a></td>
</tr>
<tr>
<td style="font-weight: bold;">Laboratory</td>
<td>inria</td>
</tr>
</tbody>
</table>
<h1>Ressources</h1>
<table>
<tbody>
<tr>
<td style="font-weight: bold;">Operating System</td>
<td>Contiki</td>
</tr>
<tr>
<td style="font-weight: bold;">Status</td>
<td>Achieved</td>
</tr>
<tr>
<td style="font-weight: bold;">Radio</td>
<td>CC1101</td>
</tr>
<tr>
<td style="font-weight: bold;">Sites</td>
<td>Several sites</td>
</tr>
<tr>
<td style="font-weight: bold;">Number of nodes involved</td>
<td>Around 10, 5 on each site</td>
</tr>
<tr>
<td style="font-weight: bold;">Time of platforms usage</td>
<td>Hours</td>
</tr>
</tbody>
</table>
<h1>Description</h1>
<p>I tried to establish communication between a node from Grenoble and a node from Strasbourg using IPv6.</p>
<p>On each platform, a network was built with RPL routing and a border router making the link between the wireless network and the virtual machine using SLIP. The nodes in the network where idle, except one on Grenoble running a ’ping6’ application with one node from Strasbourg as destination.</p>
<p>The difficulty is that the virtual machines are on private networks only accessible trough ssh.</p>
<h1>Significant results</h1>
<p>It works with the following setup:</p>
<p>I looked at ways to built vpn over SSH. It is not possible to use the tunneling feature of ssh because there is no direct access to root account with ssh. So I ended up building a PPP tunnel over SSH like described in this tutorial <a href="http://www.tldp.org/HOWTO/ppp-ssh/index.html">http://www.tldp.org/HOWTO/ppp-ssh/index.html</a>.</p>
<p>I set up 3 different subnets, one for each part of the network, the wireless networks and the VPN. And I established routes going through the VPN to link the two platforms.</p>
<p>The route of packet is:<br />
Subnet: ”aaaa::\64”<br />
Ping6 Node -&gt; Node -&gt; Node -&gt; Border router: via Radio<br />
Border router -&gt; Virtual Machine: via the serial link<br />
Subnet: ”cccc::\64”<br />
Virtual Machine -&gt; Virtual Machine: via PPP tunnel<br />
Subnet: ”bbbb::\64”<br />
Virtual Machine -&gt; Border router: via the serial link<br />
Border router -&gt; Node -&gt; Destination Node: via Radio<br />
I only wanted to test if a route could be established, I didn’t checked the quality of the connection.</p>
<p>Softwares used:<br />
Contiki + ping6 app (senslab site version)<br />
tunslip6<br />
ip linux command<br />
ssh + ppp</p>
<h1>Illustrating chart picture</h1>
<p><a href="http://www.senslab.info/wp-content/uploads/2012/03/ipv6_routing.png"><img class="alignleft size-large" title="chart_picture" src="http://www.senslab.info/wp-content/uploads/2012/03/ipv6_routing.png" alt="" width="620" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.senslab.info/2012/03/ipv6-communication-beetween-nodes-from-different-sites/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Using the debugger with the senslab boards</title>
		<link>http://www.senslab.info/2011/12/using-the-debugger-with-the-senslab-boards/</link>
		<comments>http://www.senslab.info/2011/12/using-the-debugger-with-the-senslab-boards/#comments</comments>
		<pubDate>Wed, 07 Dec 2011 09:56:39 +0000</pubDate>
		<dc:creator>Gaëtan Harter</dc:creator>
				<category><![CDATA[Hardware]]></category>

		<guid isPermaLink="false">http://www.senslab.info/?p=1133</guid>
		<description><![CDATA[This post is written for users that have a real node and the programmation hardware. If you are only using the senslab platform this won&#8217;t be of any use for you. This page will describe how to perform programming and &#8230;<p class="read-more"><a href="http://www.senslab.info/2011/12/using-the-debugger-with-the-senslab-boards/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<div style="float: right;"></div>
<div style="text-align: left;">
<p style="color: #ff0000;"><em><strong><br />
This post is written for users that have a real node and the programmation hardware. If you are only using the senslab platform this won&#8217;t be of any use for you.<br />
</strong></em></p>
</div>
<p>This page will describe how to perform programming and debugging on a senslab node using a dedicated board and a JTAG debug interface with a Linux operating system. This guide will start with the description of the different hardware systems and the required software, then explain how to setup the different parts. And finally a demonstration of how to do debugging and interact with the serial interface based on an example.</p>
<p>The first picture shows the complete hardware programming/debugging system<br />
<img title="debug_system.png" src="http://www.senslab.info/wp-content/uploads/2011/12/debug_system.png" alt="" /></p>
<h1>Hardware Description</h1>
<h2>Senslab nodes</h2>
<p>There are two types of nodes, with two types of radio chip.</p>
<p>They can be differentiated with their antenna, the cc1101 has a PCB antenna and the cc2420 an antenna in a chip</p>
<ul>
<li>The first is a Senslabv13b node with cc1101 radio chip</li>
<li>The second is a Senslabv14 node with cc2420 radio chip</li>
</ul>
<p><img title="senslabv13b.png" src="http://www.senslab.info/wp-content/uploads/2011/12/senslabv13b.png" alt="" /> <img class="alignnone" title="senslabv14.png" src="http://www.senslab.info/wp-content/uploads/2011/12/senslabv14.png" alt="" width="400" height="279" /></p>
<h3>Node power supply methods</h3>
<p>You can power the nodes by 3 ways.</p>
<ol>
<li><strong>Non rechargeable battery (Nominal voltage = 4V)<br />
</strong>Plug the positive and negative battery pins to the JP4 connector (bottom side)<br />
Put a jumper in the &#8220;pile&#8221; position on JP5 (top side)</li>
<li><strong>Rechargeable battery (Varta Polyflex 383562)<br />
</strong>Plug the positive and negative battery pins to the JP4 connector (bottom side)<br />
Put a jumper in the &#8220;bat&#8221; position on JP5 (top side)<br />
or<br />
Connect the positive pin of the battery to JP1:1 and the negative pin to JP1:25<br />
No jumpers are needed on the node.</li>
<li><strong>External DC (5V to 6.5V)<br />
</strong>Apply a DC voltage between 5V and 6.5V at JP1:26 (Ext supply) and JP1:25 (GND)<br />
No jumpers are needed on the node.</li>
</ol>
<h2>Dock board</h2>
<p>The Dock board does the interface between the senslab node and the PC + JTAG</p>
<ul>
<li>The first is the new generation usb dock board</li>
<li>The second is the first generation serial dock board (with a senslabv13b node and a battery plugged)</li>
</ul>
<p><img title="dock_board_usb.png" src="http://www.senslab.info/wp-content/uploads/2011/12/dock_board_usb.png" alt="" /> <img title="dock_parallel.jpg" src="http://www.senslab.info/wp-content/uploads/2011/12/dock_parallel.jpg" alt="" /></p>
<h3>Jumpers configuration</h3>
<p>For the new generation usb dock boards, in order to have external DC from USB connector to power up the node, jumpers should be put on VCC and VEXT.</p>
<h2>TI MSP-FET430UIF programmer</h2>
<p><img title="msp-fet430uif_50.jpg" src="http://www.senslab.info/wp-content/uploads/2011/12/msp-fet430uif_50.jpg" alt="" /></p>
<p>&#8220;The MSP-FET430UIF is a powerful flash emulation tool to quickly begin application development on the MSP430 MCU. It includes USB debugging interface used to program and debug the MSP430 in-system through the JTAG interface or the pin saving Spy Bi-Wire (2-wire JTAG) protocol. The flash memory can be erased and programmed in seconds with only a few keystrokes, and since the MSP430 flash is ultra-low power, no external power supply is required.&#8221;<br />
Source: <a href="http://processors.wiki.ti.com/index.php/MSP-FET430UIF">http://processors.wiki.ti.com/index.php/MSP-FET430UIF</a></p>
<p>It can be ordered at the usual electronic components retailers for less than 100€, like for example:<br />
Digikey : <a href="http://www.digikey.fr/">http://www.digikey.fr/</a><br />
Farnell : <a href="http://fr.farnell.com">http://fr.farnell.com</a><br />
Radiospares: <a href="http://radiospares-fr.rs-online.com/">http://radiospares-fr.rs-online.com/</a></p>
<h1>Software description</h1>
<h2>Compilation toolchain</h2>
<p>Compiling programs requires &#8216;<tt>msp430-gcc</tt>&#8216; (version 3.X.X), &#8216;<tt>msp430-libc</tt>&#8216; and &#8216;<tt>msp430-binutils'</tt> packages.<br />
msp430-gcc with versions &gt;= 4.X.X are not supported. If you cannot find the correct packages for your system, you can use your senslab virtual machine to compile programs.</p>
<h2>Connection to the board JTAG interface</h2>
<p>Connecting to the MSP-FET430UIF debug interface requires two things:</p>
<ol>
<li>&#8216;<tt>ti_usb_3410_5052</tt>&#8216; driver which provides a <tt>/dev</tt> serial interface for the programmer to the operating system</li>
<li>&#8216;<tt>mspdebug</tt>&#8216; uses this serial interface to control the jtag port of the board and provides the basic commands for debugging, but it doesn&#8217;t directly make the link with the C sources files. Therefore it can act as a proxy for msp430-gdb which is able to do it.</li>
</ol>
<p>There is a &#8220;Connection closing&#8221; issue with version 0.17, so gdb will not know when a breakpoint is reached without interrupting it with &#8216;Ctrl+c&#8217;. I would advice you to use an older or newer one (like the git version)</p>
<h2>Access the uart of the node</h2>
<p>The second usb cable provides power to the board and gives the PC access to the node uart. The system should recognize it as a <tt>/dev</tt> tty interface and the communication can be done with a software like &#8216;<tt>gtkterm</tt>&#8216; or &#8216;<tt>moserial</tt>&#8216; which can receive and send characters to the serial interface.</p>
<h2>The debugger</h2>
<p>The &#8216;<tt>msp430-gdb</tt>&#8216; debugger can use &#8216;<tt>mspdebug</tt>&#8216; as a remote target and do C-level debugging.<br />
The &#8216;<tt>ddd</tt>&#8216; can be used as a graphical interface to any gdb software.</p>
<h1>Development tools configuration/installation</h1>
<h3>MSP-FET430UIF</h3>
<h3>Plugging the programmer</h3>
<p>Plug the JTAG usb at first and then the usb alimentation cable to guaranty the &#8216;<tt>/dev/ttyUSB#</tt>&#8216; interface numbers that will be assigned to each cable.<br />
The output from <tt>dmesg</tt> command should look like the followings.</p>
<ul>
<li>After plugging the JTAG interface MSP-FET430UIF:</li>
</ul>
<pre>$ dmesg
....
usb 5-2: new full speed USB device using uhci_hcd and address 10
usb 5-2: New USB device found, idVendor=0451, idProduct=f430
usb 5-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 5-2: Product: MSP-FET430UIF JTAG Tool
usb 5-2: Manufacturer: Texas Instruments
usb 5-2: SerialNumber: TUSB34103D464945D858FFAF
usb 5-2: configuration #1 chosen from 1 choice
ti_usb_3410_5052 5-2:1.0: TI USB 3410 1 port adapter converter detected
usb 5-2: firmware: requesting ti_usb-v0451-pf430.fw
usb 5-2: firmware: requesting ti_3410.fw
usb 5-2: reset full speed USB device using uhci_hcd and address 10
usb 5-2: device firmware changed
ti_usb_3410_5052: probe of 5-2:1.0 failed with error -5
usb 5-2: USB disconnect, address 10
usb 5-2: new full speed USB device using uhci_hcd and address 11
usb 5-2: New USB device found, idVendor=0451, idProduct=f430
usb 5-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 5-2: Product: MSP-FET430UIF JTAG Tool
usb 5-2: Manufacturer: Texas Instruments
usb 5-2: SerialNumber: TUSB34103D464945D858FFAF
usb 5-2: configuration #1 chosen from 2 choices
ti_usb_3410_5052 5-2:1.0: TI USB 3410 1 port adapter converter detected
ti_usb_3410_5052: probe of 5-2:1.0 failed with error -5
ti_usb_3410_5052 5-2:2.0: TI USB 3410 1 port adapter converter detected
usb 5-2: TI USB 3410 1 port adapter converter now attached to ttyUSB0</pre>
<p>Don&#8217;t care about the &#8220;<tt>ti_usb_3410_5052: probe of 5-2:1.0 failed with error -5</tt>&#8221; error message.</p>
<ul>
<li>After plugging the alimentation + serial USB cable:</li>
</ul>
<pre>$ dmesg
....
usb 5-1: new full speed USB device using uhci_hcd and address 12
usb 5-1: New USB device found, idVendor=0403, idProduct=6001
usb 5-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
usb 5-1: Product: USB  Serial
usb 5-1: Manufacturer: FTDI
usb 5-1: configuration #1 chosen from 1 choice
ftdi_sio 5-1:1.0: FTDI USB Serial Device converter detected
usb 5-1: Detected FT232BM
usb 5-1: Number of endpoints 2
usb 5-1: Endpoint 1 MaxPacketSize 64
usb 5-1: Endpoint 2 MaxPacketSize 64
usb 5-1: Setting MaxPacketSize 64
usb 5-1: FTDI USB Serial Device converter now attached to ttyUSB1</pre>
<h3>Problems solving</h3>
<p>He are the different issues we were confronted to</p>
<ul>
<li>Everything looks good, but it does not work. It happened the first time the interface was used on a computer or it happened sometimes for no specific reasons Try to unplug/re-plug both cables, it fixes the problem in most cases.<br />
The time it did not worked, changing the dock board fixed the problem.</li>
<li>The ti_usb_3410_5052 driver is not installed. I can&#8217;t be of any help on this issue as I did not got the problem. I would advice you to take a look to the Low-Level USB VCP Drivers at <a href="http://processors.wiki.ti.com/index.php/MSP430_JTAG_Interface_USB_Driver">http://processors.wiki.ti.com/index.php/MSP430_JTAG_Interface_USB_Driver</a> and give us feedback if you got the problem.</li>
<li>If you get a message in dmesg outputs saying</li>
</ul>
<pre>usb 1-2.1: ti_download_firmware - firmware not found</pre>
<p style="padding-left: 30px;">the system is looking for a file called &#8216;<tt>ti_usb-3410.bin</tt>&#8216; which is in practice called &#8216;<tt>ti_3410.fw</tt>&#8216;. The solution is to create a symbolic link with the command:</p>
<pre> sudo ln -s /lib/firmware/ti_3410.fw /lib/firmware/ti_usb-3410.bin</pre>
<p>Source: <a href="http://sourceforge.net/apps/mediawiki/mspgcc/index.php?title=Windows_msp430-gdbproxy_on_Linux_Howto">MSPGCC Wiki/Windows msp430-gdbproxy on Linux Howto</a></p>
<h2>msp430-gdb, mspdebug and ddd</h2>
<h3>Installation</h3>
<p>You can install them from your distribution package repository if they are available. Or install them from mspgcc and mspdebug sourceforges <a href="http://sourceforge.net/apps/mediawiki/mspgcc/index.php?title=MSPGCC_Wiki">mspgcc</a>, <a href="http://sourceforge.net/projects/mspdebug/ ">mspgebug</a> (there is an issue with version 0.17, so use another one)<br />
For &#8216;<tt>ddd</tt>&#8216; every version should work.</p>
<p>I personally installed msp430-gdb from the sources and I advice you to change the installation prefix to an empty folder like &#8216;<tt>/usr/local/msp430</tt>&#8216; either than only /usr/local, so it won&#8217;t mix with others installed programs and it will be easier to remove all the files if needed. At the end don&#8217;t forget to add /usr/local/msp430/bin (or your installation folder) to the PATH variable.</p>
<h3>Using mspdebug as a regular user</h3>
<p>The user should have the right to read and write on the &#8216;<tt>/dev/ttyUSB#</tt>&#8216; interfaces</p>
<ul>
<li>The easiest way is to add the <tt>user</tt> in the <tt>dialout</tt> group.<br />
Edit the <tt>/etc/group</tt> file as root and add your username to the <tt>dialout</tt> group</li>
</ul>
<pre>…
dialout:x:18:user_name
…</pre>
<p style="padding-left: 30px;">Once this has been done you must logout and login again for the changes to take effect.<br />
And to check that everything went fine,</p>
<pre>$ id
uid=53542(harter) gid=50101(sed) groups=50101(sed),14(uucp),18(dialout)</pre>
<ul>
<li>Another solution is to give RW rights on the interfaces to all users. To make the procedure easier add the command to the &#8216;<tt>.bashrc</tt>&#8216; file and execute the command after plugging the programmer</li>
</ul>
<pre>alias chmod_tty='sudo chmod 666 /dev/ttyUSB0; sudo chmod 666 /dev/ttyUSB1'</pre>
<h3>Useful commands sum up</h3>
<pre>mspdebug -j -d /dev/ttyUSB0 uif                    # run in interactive mode
mspdebug -j -d /dev/ttyUSB0 uif "prog example.elf" # program and run a program on the board
mspdebug -j -d /dev/ttyUSB0 uif reset              # reset the board
mspdebug -j -d /dev/ttyUSB0 uif gdb                # listen to incoming gdb connections on port 2000

alias msp='mspdebug -j -d /dev/ttyUSB0 uif'        # be lazy, put this in your .bashrc file</pre>
<pre># after running 'msp gdb'
msp430-gdb --tui --ex="target remote localhost:2000" example.elf  # Connect gdb to mspgebug
# inside msp430-gdb
(gdb) load example.elf                             # program the device with example.elf
(gdb) br main                                      # Set a breakpoint at 'main'
(gdb) continue                                     # like 'run' but gdb has the control of the execution
(gdb) monitor             # do mspdebug execute the command, gdb cannot interrupt
(gdb) monitor erase
(gdb) monitor reset

alias mgdb='msp430-gdb --tui --ex="target remote localhost:2000"' # be lazy, put this in your .bashrc file</pre>
<p><a href="www.cs.colorado.edu/~jrblack/class/csci7000/s11/gdb.pdf">Gdb commands quick reference.pdf</a></p>
<pre># ddd graphical interface
ddd --debugger msp430-gdb -ex="target remote localhost:2000" example.elf

alias sddd='ddd --debugger msp430-gdb -ex="target remote localhost:2000"'</pre>
<h3>Usage</h3>
<p>If you want to do some debug, you will want to use the interactive mode and the &#8216;<tt>prog</tt>&#8216;, &#8216;<tt>setbreak</tt>&#8216;, &#8216;<tt>run</tt>&#8216;, &#8216;<tt>step</tt>&#8216; commands. However you won&#8217;t have any C-source integration with &#8216;<tt>mspdebug</tt>&#8216;</p>
<p>But, one of the important feature of &#8216;<tt>mspdebug</tt>&#8216; is that it implements the gbd stubs and can be used as a remote target for &#8216;<tt>msp430-gdb</tt>&#8216;. Then all the debugging can be done from within gdb using the gdb debug commands and the &#8216;<tt>monitor</tt>&#8216; command which allows running &#8216;<tt>mspdebug</tt>&#8216; commands in gdb.</p>
<p>And if you want, you can use ddd as a graphical interface for &#8216;<tt>msp430-gdb</tt>&#8216;.</p>
<h3>Known problems</h3>
<ul>
<li>With mspdebug 0.17: On GDB, when you do a &#8220;<tt>continue</tt>&#8220;, the connection closes and gdb must be interrupted with a &#8216;<tt>Ctrl + c </tt>&#8216; to get the control back, even if a breakpoint is reached.</li>
</ul>
<h2>Serial Terminal</h2>
<p>It must be connected to /dev/ttyUSB1 (if the plugging order was respected) with, by default a 115200 baud rate.</p>
<h3>Gtkterm</h3>
<p><tt>gtkterm</tt> window and configuration<br />
<img title="gtkterm_window.png" src="http://www.senslab.info/wp-content/uploads/2011/12/gtkterm_window.png" alt="" /> <img title="gtkterm.png" src="http://www.senslab.info/wp-content/uploads/2011/12/gtkterm.png" alt="" /></p>
<ul>
<li>In &#8220;Wait for this special character before passing to the next line:&#8221; text field, paste a line-break.</li>
<li>Check Configuration-&gt;&#8221;Local echo&#8221;</li>
<li>Check Configuration-&gt;&#8221;CR LF&#8221;</li>
<li>Overwrite the &#8216;default&#8217; configuration with Configuration-&gt;&#8221;Save Configuration&#8221; with the name &#8216;default&#8217;</li>
</ul>
<p>Unfortunately, Configuration-&gt;&#8221;CR LF&#8221; must be re-enabled after each launch.</p>
<h3>Moserial</h3>
<p>Unlike gtkterm, &#8220;Local echo&#8221; must be disabled</p>
<p><tt>moserial</tt> window and configuration<br />
<img title="moserial_window.png" src="http://www.senslab.info/wp-content/uploads/2011/12/moserial_window.png" alt="" /> <img title="moserial.png" src="http://www.senslab.info/wp-content/uploads/2011/12/moserial.png" alt="" /></p>
<h2>Parallel JTAG debugger case</h2>
<p>Contrary to the usb jtag debugger, &#8216;<tt>mspdebug</tt>&#8216; functionality are separated in two software:</p>
<ul>
<li>msp430-jtag to program the board</li>
<li>msp430-gdbproxy implements the gdb stubs and can be used as a remote target for &#8216;<tt>msp430-gdb</tt>&#8216;</li>
</ul>
<p>The official documentation for the tools can be found at http://mspgcc.sourceforge.net/tools.html</p>
<h3>Programming -&gt; msp430-jtag</h3>
<p>Tutorial to install the software: <a href="http://www.senslab.info/wp-content/uploads/2012/01/msp430-jtag-installation.txt" target="_blank">msp430-jtag-installation.txt</a></p>
<p>Usage:</p>
<pre># Download
$ msp430-jtag -e example.elf

# Restarting the node
$ msp430-jtag -r</pre>
<h3>Debugging remote target -&gt; msp430-gdbproxy</h3>
<p>Take a look at the mspgcc introduction: <a href="http://mspgcc.sourceforge.net/tools.html">http://mspgcc.sourceforge.net/tools.html</a><br />
It can be dowloaded at <a href="http://sourceforge.net/projects/mspgcc/files/Outdated/msp430-gdbproxy/2006-11-14/">http://sourceforge.net/projects/mspgcc/files/Outdated/msp430-gdbproxy/2006-11-14/</a></p>
<pre># Start the remote target for msp430-gdb
msp430-gdbproxy --port=2000 msp430</pre>
<h1>Doing everything with eclipse</h1>
<p>Once you will have understood the overall working and get bored of launching each tools manually you can get a look at this tutorial that presents how to do all the development and debugging with eclipse on windows. It must be adapted to your OS and configuration but it is a good startup to know what to configure.<br />
<a href="http://springuin.nl/en/articles/launchpadwindows">http://springuin.nl/en/articles/launchpadwindows</a></p>
<h1>Usage</h1>
<p>In this section, I assume that you have defined the alias presented before</p>
<h2>TP_01 example</h2>
<p>Blinkings leds and command through the serial link (with the bug fix applied to the example of v1.7 drivers).<br />
<strong><a>tp_01.tar.gz</a></strong></p>
<h3>Preparation</h3>
<pre># Execute the commands from within the source folder

# in a first terminal
msp gdb

# in a second terminal
mgdb example.elf

# Launch gtkterm and enable CR-LF auto</pre>
<h3>Timeline</h3>
<pre># Execution of all the initial commands

(gdb) monitor erase
(gdb) load
(gdb) monitor reset
(gdb) br main
# Breakpoint set at 0x40d8
(gdb) continue
# Running
# Target halted
# gdb is stoped at the beginning of main function
(gdb) br 103
# Breakpoint set at 0x4204
(gdb) continue
# Gtkterm prints the help lines
Type "l" in gtkterm                                   # prints luminosity output
Type "l" in gtkterm                                   # prints luminosity output
Type "t" in gtkterm
# Breakpoint 2, main () at main.c:103
# mspdebug Target halted
# gdb is on the line 103</pre>
<h3>msp430-gdb window</h3>
<p>The &#8220;<tt>(gdb)</tt>&#8221; lines are lines where commands are executed</p>
<pre>Reading symbols from /home/sed/harter/work/senstools_svn/trunk/software/drivers/wsn430/examples/tp_01/tp.elf...done.
Remote debugging using localhost:2000
Cannot access memory at address 0xffff
(gdb) monitor erase all
Erasing...
(gdb) load
Loading section .text, size 0x12c4 lma 0x4000
Loading section .data, size 0x2 lma 0x52c4
Loading section .vectors, size 0x20 lma 0xffe0
Start address 0x4000, load size	4838
Transfer rate: 2 KB/sec, 1612 bytes/write.
(gdb) monitor reset                                 # this line is not printed in gdb
(gdb) br main
Breakpoint 1 at	0x40d8:	file main.c, line 40.
(gdb) continue
Continuing.

Breakpoint 1, main () at main.c:40
(gdb) br 103                                           # "break;" line in the character case for the letter "t"
Breakpoint 2 at	0x4204:	file main.c, line 103.
(gdb) continue
Continuing.

Breakpoint 2, main () at main.c:103
(gdb)</pre>
<h3>GtkTerm output</h3>
<pre>Senslab Simple Demo program
Type command
	t:	temperature measure
	l:	luminosity measure
cmd &gt; lLuminosity measure: 0.0
cmd &gt; lLuminosity measure: 0.0
cmd &gt; t</pre>
<h3>mspdebug output</h3>
<pre>MSPDebug version 0.15 - debugging tool for MSP430 MCUs
Copyright (C) 2009-2011 Daniel Beer
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Trying to open UIF on /dev/ttyUSB0...
Initializing FET...
FET protocol version is 20107000
Configured for JTAG (2)
Set Vcc: 3000 mV
Device: MSP430F1611
Code memory starts at 0x4000
Number of breakpoints: 8
Bound to port 2000. Now waiting for connection...
Client connected from 127.0.0.1:46925
Clearing all breakpoints...
Reading    2 bytes from 0x4000
Monitor command received: erase all
Erasing...
Writing 4804 bytes to 0x4000
Writing    2 bytes to 0x52c4
Writing   32 bytes to 0xffe0
Monitor command received: reset
Reading    2 bytes from 0x4000
Reading    2 bytes from 0x40d4
Reading    2 bytes from 0x40d4
Reading    2 bytes from 0x40d6
Reading    2 bytes from 0x40d8
Reading    2 bytes from 0x40d4
Reading    2 bytes from 0x40d4
Reading    2 bytes from 0x40d6
Reading    2 bytes from 0x40d8
Reading    2 bytes from 0x40d8
Breakpoint set at 0x40d8
Running
Target halted
Breakpoint cleared at 0x40d8
Reading    2 bytes from 0x40d8
Reading    2 bytes from 0x40d8
Reading    2 bytes from 0x40d4
Reading    2 bytes from 0x40d6
Reading    2 bytes from 0x40d8
Reading    2 bytes from 0x40d4
Reading    2 bytes from 0x40d4
Reading    2 bytes from 0x40d6
Reading    2 bytes from 0x40d8
Reading    2 bytes from 0x40d4
Reading    2 bytes from 0x40d4
Reading    2 bytes from 0x40d6
Reading    2 bytes from 0x40d8
Reading    2 bytes from 0x4204
Single stepping
Breakpoint set at 0x40d8
Breakpoint set at 0x4204
Running
Target halted
Breakpoint cleared at 0x40d8
Breakpoint cleared at 0x4204
Reading    2 bytes from 0x4204</pre>
<h2>TP_01 example with the bug</h2>
<p>Blinkings leds and command through the serial link (without the bug fix).<br />
<a href="http://www.senslab.info/wp-content/uploads/2011/12/tp_01_with_bug.tar.gz">tp_01_with_bug.tar.gz</a></p>
<p>If you haven&#8217;t done the example without bug, please do it, I will not repeat everything.</p>
<h3>Bug detection</h3>
<pre># Launch gtkterm and enable CR-LF auto

# Execute the commands from within the source folder
msp erase        # just to ensure that the outputs will be the same
msp reset

# clear gtkterm screen, because it's now that it is important
msp "prog tp_with_bug.elf"</pre>
<p>The led should blink on the board and there should have been some outputs on gtkterm. But nothing happend.<br />
If you redo the &#8220;prog&#8221; command, nothing changes, there is the good outputs and then some crap while programming but does not work. If you do a &#8216;<tt>msp reset</tt>&#8216; it starts working.</p>
<pre>msp reset
# Now the outputs are good.</pre>
<h3>Debugging</h3>
<p>Let&#8217;s find where does the problem come from.</p>
<pre>msp erase
msp reset
msp
# now from within the text interface
(mspdebug) prog tp_with_bug.elf
Erasing...
Programming...
Writing 4096 bytes to 4000...
Writing  958 bytes to 5000...
Writing   32 bytes to ffe0...
(mspdebug) run
Running. Press Ctrl+C to interrupt...
# Let it run a few seconds and see that nothing goes on gtkterm and that the link does not blink
^C
^C
    ( PC: 04a84)  ( R4: 01f24)  ( R8: 01fb1)  (R12: 00000)
    ( SP: 038f8)  ( R5: 0000e)  ( R9: 00001)  (R13: 00006)
    ( SR: 00002)  ( R6: 01002)  (R10: 00000)  (R14: 038fa)
    ( R3: 00000)  ( R7: 00000)  (R11: 04064)  (R15: 00039)
i2c0_read_single+0x28:
    04a84: fc 27                     JZ      i2c0_read_single+0x22
    04a86: de 42 76 00 00 00         MOV.B   &amp;0x0076, 0x0000(R14)
    04a8c: f2 b0 20 00 72 00         BIT.B   #0x0020, &amp;0x0072
    04a92: fc 23                     JNZ     i2c0_read_single+0x30
(mspdebug) step
    ( PC: 04a7e)  ( R4: 01f24)  ( R8: 01fb1)  (R12: 00000)
    ( SP: 038f8)  ( R5: 0000e)  ( R9: 00001)  (R13: 00006)
    ( SR: 00002)  ( R6: 01002)  (R10: 00000)  (R14: 038fa)
    ( R3: 00000)  ( R7: 00000)  (R11: 04064)  (R15: 00039)
i2c0_read_single+0x22:
    04a7e: f2 b0 10 00 51 00         BIT.B   #0x0010, &amp;0x0051
    04a84: fc 27                     JZ      i2c0_read_single+0x22
    04a86: de 42 76 00 00 00         MOV.B   &amp;0x0076, 0x0000(R14)
    04a8c: f2 b0
(mspdebug) step
    ( PC: 04a84)  ( R4: 01f24)  ( R8: 01fb1)  (R12: 00000)
    ( SP: 038f8)  ( R5: 0000e)  ( R9: 00001)  (R13: 00006)
    ( SR: 00002)  ( R6: 01002)  (R10: 00000)  (R14: 038fa)
    ( R3: 00000)  ( R7: 00000)  (R11: 04064)  (R15: 00039)
i2c0_read_single+0x28:
    04a84: fc 27                     JZ      i2c0_read_single+0x22
    04a86: de 42 76 00 00 00         MOV.B   &amp;0x0076, 0x0000(R14)
    04a8c: f2 b0 20 00 72 00         BIT.B   #0x0020, &amp;0x0072
    04a92: fc 23                     JNZ     i2c0_read_single+0x30
(mspdebug)
# we are stuck in an infinit loop but who did called this i2c0_read_single function ?
(mspdebug) gdb
Bound to port 2000. Now waiting for connection...          # launch gdb in another terminal
Client connected from 127.0.0.1:50505
Clearing all breakpoints...
...</pre>
<pre>mgdb tp_with_bug.elf
Remote debugging using localhost:2000
0x00004a84 in i2c0_read_single (slaveAddr=57 '9', value=0x38fa "\306L\003")
    at /home/sed/harter/work/senstools_svn/trunk/software/drivers/wsn430/i2c0.c:153
(gdb) backtrace
#0  0x00004a84 in i2c0_read_single (slaveAddr=57 '9', value=0x38fa "\306L\003")
    at /home/sed/harter/work/senstools_svn/trunk/software/drivers/wsn430/i2c0.c:153
#1  0x00004d06 in tsl2550_read_adc1 ()
    at /home/sed/harter/work/senstools_svn/trunk/software/drivers/wsn430/tsl2550.c:118
#2  0x00004cc6 in tsl2550_set_standard ()
    at /home/sed/harter/work/senstools_svn/trunk/software/drivers/wsn430/tsl2550.c:103
#3  0x00004120 in main () at main.c:59
(gdb)</pre>
<p>I do not understand what the #2 function does here, but if you drop it you see main.c:59 -&gt; tsl2550_read_adc1 -&gt; i2c0_read_single</p>
<pre>main.c

 55         // Initialize the Luminosity sensor
 56         tsl2550_init();
 57         tsl2550_powerup();
 58         tsl2550_set_standard();
 59         tsl2550_read_adc1();    // problematic line
 60</pre>
<p>By reading the tp_01 and some other tsl2550 example, I found that this line was useless and that in the rest of the code before each &#8216;tsl2550_read_*&#8217; call, a &#8216;tsl255_init&#8217; was done. Adding an &#8216;init&#8217; call just before the &#8216;read&#8217; call or removing this line fixed the problem.</p>
<h3>What is the reason ?</h3>
<p>What I read in the drivers documentation and even the hardware documentation didn&#8217;t gave me any piece of information.</p>
<p>Why wasn&#8217;t the problem detected before ? On the senslab platform, the nodes are reset automatically after programming, so it didn&#8217;t appeared.</p>
<h1>Conclusion</h1>
<p>Having a debugger does not give the bugs fixes, but it helps finding where they are located.<br />
Also, keep in mind that there is code which is time dependent and which will work without debugger but not with.<br />
Wish you good luck !</p>
]]></content:encoded>
			<wfw:commentRss>http://www.senslab.info/2011/12/using-the-debugger-with-the-senslab-boards/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Opening day for Rennes SENSLAB site, December 1th</title>
		<link>http://www.senslab.info/2011/11/opening-day-for-rennes-senslab-site/</link>
		<comments>http://www.senslab.info/2011/11/opening-day-for-rennes-senslab-site/#comments</comments>
		<pubDate>Wed, 09 Nov 2011 07:30:23 +0000</pubDate>
		<dc:creator>fsaintma</dc:creator>
				<category><![CDATA[Advertisement]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://www.senslab.info/?p=1018</guid>
		<description><![CDATA[We are pleased to announce the opening of the fourth SENSLAB site. This event will take place at INRIA Rennes research center Thursday, December 1. For this event, we organize one day with presentation (morning) and tutorial (afternoon) on the &#8230;<p class="read-more"><a href="http://www.senslab.info/2011/11/opening-day-for-rennes-senslab-site/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>We are pleased to announce the opening of the fourth SENSLAB site.</p>
<p>This event will take place at INRIA Rennes research center Thursday, December 1.</p>
<p>For this event, we organize one day with presentation (morning) and tutorial (afternoon) on the SensLab testbed.</p>
<p>The participation in the tutorial is free but requires registration for organizational reasons. If you want to participate in this tutorial, thank you to register <a href="https://docs.google.com/spreadsheet/viewform?formkey=dHFYRTlzOXFvaFlXS0xSWkJwZVlnWUE6MQ">using this link</a> (for logistical reasons, the tutorial will be limited to first registered)</p>
<ul>
<li><a href="http://www.inria.fr/centre/rennes/agenda/inauguration-de-la-plateforme-senslab-rennes">official announcement</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.senslab.info/2011/11/opening-day-for-rennes-senslab-site/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A SensLab tutorial in Strasbourg October, 13th</title>
		<link>http://www.senslab.info/2011/10/a-senslab-tutorial-at-strasbourg-october-13th/</link>
		<comments>http://www.senslab.info/2011/10/a-senslab-tutorial-at-strasbourg-october-13th/#comments</comments>
		<pubDate>Wed, 05 Oct 2011 08:23:37 +0000</pubDate>
		<dc:creator>evalentin</dc:creator>
				<category><![CDATA[Events]]></category>

		<guid isPermaLink="false">http://www.senslab.info/?p=763</guid>
		<description><![CDATA[The next  RGE event [1] will take place in Strasbourg LSIIT [2] Thursday, October 13. For this event, we organize a half-day tutorial on the SensLab testbed . The tutorial will offer: - An overview of the testbed - The &#8230;<p class="read-more"><a href="http://www.senslab.info/2011/10/a-senslab-tutorial-at-strasbourg-october-13th/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>The next  RGE event [1] will take place in Strasbourg LSIIT [2] Thursday, October 13. For this event, we organize a half-day tutorial on the SensLab testbed .</p>
<p>The tutorial will offer:<br />
- An overview of the testbed<br />
- The handling of the development environment<br />
- Examples testing</p>
<p>The participation in the tutorial is free but requires registration for organizational reasons. If you want to participate in this tutorial, thank you to register using the link:<br />
<a href="http://studs.u-strasbg.fr/studs.php?sondage=emkhpipel7nrxar4">http://studs.u-strasbg.fr/studs.php?sondage=emkhpipel7nrxar4</a></p>
<p>For logistical reasons, the tutorial will be limited to first 40 registered.</p>
<p>The tutorial should begin at 14:00 to close around 17:00.</p>
<ul>
<li>[1] <a href="http://rge.u-strasbg.fr/">http://rge.u-strasbg.fr</a></li>
<li>[2] <a href="http://lsiit.unistra.fr/">http://lsiit.unistra.fr</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.senslab.info/2011/10/a-senslab-tutorial-at-strasbourg-october-13th/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FIT (Future Internet of Things)</title>
		<link>http://www.senslab.info/2011/09/fit-future-internet-of-things/</link>
		<comments>http://www.senslab.info/2011/09/fit-future-internet-of-things/#comments</comments>
		<pubDate>Tue, 27 Sep 2011 19:34:40 +0000</pubDate>
		<dc:creator>Eric Fleury</dc:creator>
				<category><![CDATA[Advertisement]]></category>
		<category><![CDATA[Events]]></category>

		<guid isPermaLink="false">http://www.senslab.info/?p=740</guid>
		<description><![CDATA[Building a competitive and innovative experimental facility that brings France to the forefront of Future Internet research. FIT (Future Internet of Things) aims to develop an experimental facility, a federated and competitive infrastructure with international visibility and a broad panel &#8230;<p class="read-more"><a href="http://www.senslab.info/2011/09/fit-future-internet-of-things/">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<h2>Building a competitive and innovative experimental facility that brings France to the forefront of Future Internet research.</h2>
<p>FIT (Future Internet of Things) aims to develop an experimental facility, a federated and competitive infrastructure with international visibility and a broad panel of customers. It will provide this facility with a set of complementary components that enable experimentation on innovative services for academic and industrial users. The project will give French Internet stakeholders a means to experiment on mobile wireless communications at the network and application layers thereby accelerating the design of advanced networking technologies for the Future Internet.</p>
<p>FIT is one of 52 winning projects from the first wave of the French Ministry of Higher Education and Research&#8217;s &#8220;Équipements d&#8217;Excellence&#8221; (<a href="http://www.enseignementsup-recherche.gouv.fr/cid54722/340-millions-d-euros-pour-les-52-laureats-de-la-premiere-vague-de-l-appel-a-projets-equipex.html">Equipex</a>) research grant programme, will run over a nine-year period, the project will benefit from a 5.8 million euro grant from the French government.</p>
<p>The FIT project, through its ECO (“embedded communicating objects”) component, will go beyond the existing <a href="http://www.senslab.info/">SensLAB</a> testbed and provide a very large-scale infrastructure suitable for testing heterogeneous embedded communicating objects of all sorts. The ECO testbeds will encompass:  Internet, wireless networks, mobile networks, sensor and actuator networks (SANETs), home gateways and access networks, and low power and lossy networks (LLNs).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.senslab.info/2011/09/fit-future-internet-of-things/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HiKoB OpenLab website opening</title>
		<link>http://www.senslab.info/2011/09/hikob-openlab-website-opening/</link>
		<comments>http://www.senslab.info/2011/09/hikob-openlab-website-opening/#comments</comments>
		<pubDate>Tue, 27 Sep 2011 19:23:28 +0000</pubDate>
		<dc:creator>Eric Fleury</dc:creator>
				<category><![CDATA[Advertisement]]></category>
		<category><![CDATA[Events]]></category>

		<guid isPermaLink="false">http://www.senslab.info/?p=736</guid>
		<description><![CDATA[HiKoB OpenLab is promoted by the HiKoB SAS company. More information on their web site.]]></description>
			<content:encoded><![CDATA[<p><strong>HiKoB OpenLab</strong> is promoted by the <strong>HiKoB SAS</strong> company.</p>
<p>More information on their <a href="http://openlab.hikob.com/index.html">web site</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.senslab.info/2011/09/hikob-openlab-website-opening/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
