Ken Bannister edited this page Jun 22, 2015 · 39 revisions

Nethead implements CoAP-based monitoring for a low-power/lossy network (LLN), and uses the Adagios/Nagios family of network monitoring tools for reporting and storage. Below is a screenshot of Adagios with a map of a three-node network, showing link-layer connectivity and RSS values.

Below is a graphic of the elements of the system, followed by a brief feature description and links to implementations.

Nethead includes three components. The Agent resides on the motes and border router, and collects and forwards monitored state to the Manager via CoAP messages. The Manager translates the Agent data into NSCA messages to the Adagios/Nagios server. The Adagios UI then presents the motes and border router as hosts, and monitored state as services.


Presently, the Agent reports RSS readings once per minute, starting at bootup. Nethead Manager accepts the readings, and automatically creates the Nagios host and service records (screenshot). Adagios provides a nice graph of the RSS readings (screenshot) as well as the map shown above. Presently the size of the message payload limits the number of neighbors per mote to two or three.

See the Roadmap page for next steps and development goals.

Motes and Border Router

Presently, the mote-level Agent elements are built on the OpenWSN project.


Firmware is provided by the nethead branch of openwsn-fw repository clone. The Agent is activated when the mote boots (apps=cnethead when build). We use OpenMote hardware.

Border Router

Software is provided by the nethead branch of openwsn-sw repository clone, in the OpenVisualizer application. OpenVisualizer is an interactive development and debugging tool, implemented in Python, that includes router functionality. The Agent is implemented as a package within OpenVisualizer, and is activated when the DAGroot mote is selected. The Agent uses the SOS CoAP library.

We routinely use a BeagleBone to host OpenVisualizer. See the setup instructions.

Monitoring/Management Web Server

Nethead Manager

Software is provided in the master branch of the project that hosts this wiki. The Manager is a standalone Python application, and we run it from the command line. It uses the pynag library to format and send NSCA messages to Nagios, as well as the SOS CoAP library.

Adagios, etc.

Software is provided by a nethead branch of the Adagios source. We captured the details of installation. The LLN Map in the graphic above is based on the D3 library. The source is a fork of directed-graph-creator, adapted to display network state.

We install Nagios 3 from the Debian package. We also use the Django 1.6 package from the Debian Snapshots repository, since Adagios was not compatible with 1.7 at the time of installation.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.