# libnmxp and nmxptool: open-source software for Nanometrics data acquisition

Matteo Quintiliani
Istituto Nazionale di Geofisica e Vulcanologia
Centro Nazionale Terremoti
e-mail: quintiliani@ingv.it

Todo:
  - Extend english version

## Introduction

This is the documentation for the APIs that implement the `Nanometrics Protocols`. They have been developed for interacting with `NaqsServer` and `DataServer`.

The Nanometrics `NaqsServer` provides online access to time-series, serial data, triggers, and state-of-health data via TCP subscription.

The Nanometrics `DataServer` provides local and remote access to nanometrics, serial, and state-of-health data via TCP/IP.

The library offers APIs to:

- interact with `NaqsServer` that uses version 1.4 of the Private Data Stream Protocol
- interact with `DataServer` that uses version 1.0 of the Nanometrics Data Access Protocol
- manage Nanometrics data formats
- request, receive and interpret online and offline data

moreover, you can use them to develop software to:

- analyze data in realtime (waveforms, triggers, ...)
- retrieve and convert on the fly data into the mini-SEED records (optional)
- feed SeedLink server (optional)
- feed Earthworm system (optional)

## Dependencies

An optional library is needed to allow `libnmxp` to save mini-SEED records:

- `libmseed:` http://www.iris.edu/manuals/
  The Mini-SEED library. A C library framework for manipulating and managing SEED data records.
  Author: Chad Trabant, IRIS DMC

## Installation

`nmxp` library has been developed using GNU Build Tools (`automake`, `autoconf` and `configure` script) taking in account the POSIX Cross-Platform aspects. So you should be able to compile and install it everywhere you can launch the following commands:

`./configure`

`make`

`make install`

Please, refer to the file README and INSTALL for more details.

## Tools

Inside the distribution is available a tool which is a client that interact with `NaqsServer` and `DataServer`.

`nmxptool:`

- implements the Nanometrics Private Data Stream Protocol 1.4 and permits to retrieve data in near-realtime.
- implements the Nanometrics Data Access Protocol 1.0 and permits to retrieve backward data.
  Please, refer to the README file or help `nmxptool --help`.

### Examples

etc...

## License

http://www.gnu.org/licenses/gpl.html

## About

Matteo Quintiliani - Istituto Nazionale di Geofisica e Vulcanologia - Italy
Mail bug reports and suggestions to <quintiliani@ingv.it>