Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

OpenVisualizer is the primary tool for developed plugging your OpenWSN network into the Internet.

Table of Contents
maxLevel2

Features

  • Connects your OpenWSN network to the Internet over a virtual interface (both Windows and Linux).
  • Thanks to Python, portable across popular operating systems.
  • Shows the internal state (neighbor table, scheduling table, queue, etc.) of each node physically connected to the OpenVisualizer.
  • Displays errors reported by motes.
  • can run with either physical motes, or emulated motes (for details, see OpenSim)

...

Gliffy
size700
nameOpenVisualizerArch

Implementation modules

  • openVisualizerGui.py is  is the master module. It can be run in "against real " or "simulator" modeor simulated motes (see OpenSim). It lists all the connected nodes (real or emulated) through a serial port motes and, for each, spawns a different execution thread.
  • moteProbe.py contains the code which is executed by each thread. Whenever data is received from the mote, it is passed along to Parser.py.
  • Parser.py dispatch  dispatches all the data it receives to respective parser module. In case a frame of Status/Error/ErrorCritical is received from the serial port, ParserInfoErrorCritical.py calls the corresponding display* function from moteState.py. In case it receives a request to send data from a mote (see Serial Format thread in this section), it asks the correct openSerial.py thread to answer accordingly.moteState
  • openVisualizerGui.py handles  handles everything which is related to the graphical user interface. It is solely based on TkInter, the graphical interface which ships by default with Python. A single semaphore is used to arbitrate the access to the graphic elements.openType.py  lists the variables which need to be accessed by multiple modules, such as the handlers of the different threads.
  • StackDefines.py is used by ParserInfoErrorCritical.py to translate error and status code into human-readable text.

...