Overview

OpenVisualizer is the OpenWSN visualization/debugging tool. It's a set of python scripts designed to aid in the debugging process, or simply serve as a visualization platform. OpenVisualizer supports the following features:

Running it

Important: OpenVisualizer is sensitive to its directory structure. OpenVisualizer displays any potential errors that a mote may throw over serial or IP. It does this efficiently by scanning the openWSN.h file for error codes. The best way to make sure that this setup works, is by simply checking out the entire OpenWSN project from the SVN. Otherwise, please make sure that the following holds:

OpenVisualizer should be placed in: (your openWSN directory)/software/openvisualizer

openWSN.h should be located in: (your openWSN directory)/firmware/openos/openwsn

The OpenVisualizer Window is depicted on the right. By default, the right pannel is closed. The numbers under the graph at the 16-bit short identifiers of the nodes connected via USB to the application. Click on any checkbutton will open the corresponding frame in the right panel. Each of these frames shows the internals of the nodes, including a few button to force it to send an ICMPv6 echo, a UDP or a TCP packet. In each table, the line which was just updated is displayed with a yellow background. The lower-left part of the window contains the errors reported by the nodes.

Code Organization

The image to the left shows how the code is organized. Each rectangle represents a file in the OpenVisualizer directory:

OpenVisualizer Probes

As new feature added as of r707 are OpenVisualizer probes. The idea is that is that the interface can now display status information coming from motes attached to different computers/OpenLBRs. This feature is included in the default OpenLBR configuration (see OpenLbrRunIt).

By default, OpenVisualizer will display information about all the motes connected directly over a serial interface. In addition, you can add the host name or IPv4 address of your OpenLBR(s) by editing openVisualizer.py.