Earthworm Modules:
nmxptool overview

(beta revision, last revised 10 December, 2007)

nmxptool is a client for Nanometrics Server and a module for Earthworm as well. It is based on libnmxp that provides a set of documented APIs which allow to develop software capable of interacting with Nanometrics Servers:

nmxptool allows to retrieve or monitor real-time and off-line data. Mainly, it can be used:

Dependencies: nmxptool have been developed in C using the GNU Build Tools (automake, autoconf) and taking in account the POSIX Cross-Platform aspects.
It has been compiled with success on Solaris, Linux, Mac OS X, Windows (MinGW), FreeBSD.

Why a new software client for Nanometrics Server?
When we connect to a NaqsServer by a Short-term data stream connection we get a gap for each retransmitted packet. Unfortunately, previous available software were not able to reorder retransmitted packets. nmxptool is capable to manage a buffer of packets and order them chronologically when is needed, that is when a retransmission occurs. The management of this buffer reduce number of gaps in spite of the increment of latency. However, some tests showed that almost all packets are retrivied maximum within 60 seconds.

Main parameter to set for Raw Stream is the max tolerable latency you can accept, a sort of short-term-completion but managed by the client and not by the server.

The maxium size of the TRACEBUF messages created by nmxptool is limited to the maximum number of samples that can fit into a Nanometrics compressed packet (???? samples = ???? bytes) plus the size of the TRACEBUF header (64 bytes). So ???? bytes is a good estimate of the maximum size of TRACEBUF messages created by nmxptool.

nmxptool supports the creation of either TRACEBUF or TRACEBUF2 messages depending on which version of Earthworm the module was built for. By default the module will create TRACEBUF2 messages if the system supports them and TRACEBUF messages otherwise. Additionally there is an optional command ForceTraceBuf1 that will force the use of TRACEBUF messages on systems that support TRACEBUF2.

nmxptool is open-source and actively supported by the Istituto Nazionale di Geofisica e Vulcanologia.

Module Index | nmxptool Commands


Contact: quintiliani at ingv.it