OpenVisualizer is the primary tool for plugging your OpenWSN network into the Internet.
Package | Role | Installation Notes |
---|---|---|
Python | implementation language | Using v2.7. v3.x not supported yet. |
PySerial | serial to mote | Using v2.6. |
PyWin32 | tunnel dependency (Windows only) | Using Build 218. Be sure to review README.txt at the download site to retrieve the proper version. |
SCons | tool execution | Using v2.3. |
TAP for Windows | IPv6 tunnel driver (Windows only *) | Using v9.9.2. When selecting components, include TAP Utilities as well as the adapter itself. The TUN interface on Windows requires some configuration. Follow our tun/tap for Windows tutorial, specifically the Install tun page and the Configure tun page (perform Computer B steps). |
Bottle web framework | UI library | Using v0.11.6, with Python's WSGI reference web server. Using the built-in template mechanism. Uses several JavaScript/CSS libraries: jQuery v1.10.2, jQueryUI v1.1.0, SlickGrid v2.2 (from this commit), and PocketGrid v1.1. |
serial to mote | ||
Silicon Labs CP2102 UART-to-USB bridge | serial to mote (e.g. GINA) | For Windows, download CP210x VCP Windows driver. Use the default options. If successful, Windows shows two new programs (Control Panel > Programs > Programs and Features):Silicon Laboratories CP320x USB to UART Bridge (Driver Removal) Silicon Laboratories CP320x VCP Drivers for Windows XP/2003 Server/Vista/7 |
pytest | unit test tool | Using v2.3.5. |
* On Linux, TUN/TAP already is included with the operating system, and OpenVisualizer configures it on the fly. See our TUN/TAP in Linux page for more information.
The --trace
option provides internal memory profiling of OpenVisualizer itself, and requires yappi.
Package | Role | Installation Notes |
---|---|---|
openwsn-sw | OpenVisualizer software | Download zip or clone with Git. Typically, we use the develop branch as our common development base. |
openwsn-fw | Firmware header files required by openwsn-sw | Download zip or clone with Git. Must install in a sibling directory to openwsn-sw. So, if software is in C:\develop\openwsn-sw , then firmware must be in C:\develop\openwsn-fw . |
The OpenVisualizer consists of core modules, and several types of user interfaces:
You can use whichever user interface suits you best. The choice of user interface does not impact the function of the core module.
You start the OpenVisualizer in several ways:
You have two options to start it:
openwsn-sw/software/openvisualizer/bin/openVisualizerApp/openVisualizerGui.py
enter the following command from openwsn-sw/software/openvisualizer/
:
scons rungui |
|
The "motes" top menu lists all the motes connected to the OpenVisualizer (either physically over a serial port, or as emulated motes):
By default, none of the motes act as the DAG root. The DAGroot (see RFC6550) is the gateway of your OpenWSN network. It is both the root of the routing and synchronization Directed Acyclic Graphs (DAGs). You need exactly one DAGroot in your OpenWSN network, and it can be any OpenWSN node. |
From the "motes" top menu, select the mote to be used as a DAG root and the "toggle" button. The other motes will now synchronize to it and form a DAG.
You have two options to start it:
openwsn-sw/software/openvisualizer/bin/openVisualizerApp/openVisualizerCli.py
enter the following command from openwsn-sw/software/openvisualizer/
:
scons runcli |
|
The following commands are available:
The web interface is provided by a server application, and of course a browser to view the UI. At present, both server and browser must be on the same host computer.
You have two options to start it:
openwsn-sw/software/openvisualizer/bin/openVisualizerApp/openVisualizerWeb.py
enter the following command from openwsn-sw/software/openvisualizer/
:
scons runweb |
By default, the server listens on port 8080 on all network interfaces. The command line accepts options for alternate values. Run scons --help
for details.
To get started, point your browser to the following URL: http://localhost:8080. The web user interface includes the same information as the GUI described above; however, most of the information is grouped under three tabs. See the screenshot below.
The "motes" dropdown lists all the motes connected to the OpenVisualizer (either physically over a serial port, or as emulated motes):
By default, none of the motes act as the DAG root. The DAGroot (see RFC6550) is the gateway of your OpenWSN network. It is both the root of the routing and synchronization Directed Acyclic Graphs (DAGs). You need exactly one DAGroot in your OpenWSN network, and it can be any OpenWSN node. |
From the "motes" top menu, select the mote to be used as a DAG root and the "toggle" button. The other motes will now synchronize to it and form a DAG.
display*
function from moteState.py.TkInter
, the graphical interface which ships by default with Python. A single semaphore is used to arbitrate the access to the graphic elements.