OpenADMS Node

The Open Automatic Deformation Monitoring System (OpenADMS) is a free and open-source software for sensor control, observation data processing, data storage, and data exchange in the Internet of Things (IoT). The OpenADMS Node software is used for automating geodetical and geotechnical control measurements within sensor networks.


Some of the features of OpenADMS Node are:

  • platform-independent
  • supports geodetic, geotechnical, and meteorological sensors
  • enables IoT sensor networks based on the MQTT messaging protocol
  • compatible to the Raspberry Pi and other single-board computers
  • export of observation data to CSV files
  • support for NoSQL databases (PostgreSQL, Apache CouchDB, TinyDB)
  • automated alarming system (e-mail, SMS, IRC, RSS, Mastodon, optical/acoustical)
  • processing of total station measurements (polar transformation, Helmert transformation, atmospheric distance correction, serial measurements in two faces)
  • virtual sensors
  • JSON-based configuration and data exchange
  • data validation with JSON Schema
  • web-based user interface
  • transmission of observations, log messages, and heartbeats to OpenADMS Server
  • open source (BSD-2-Clause)
Raspberry Pi 2
The ARM-based single-board computer Raspberry Pi is supported too


The latest development version is available on GitHub:

$ git clone

Or download the master branch directly as a Zip file. Release versions are available for download as well, but slightly outdated.

Please refer to the OpenADMS Node manual for further instructions.

Platforms and Operating Systems

OpenADMS Node runs on a broad range of computer platforms, like x86, x86-64, ARM, and MIPS. The software is compatible to all modern operating systems, including:

  • GNU/Linux,
  • Unix (FreeBSD, NetBSD, OpenBSD, …),
  • Microsoft Windows Vista/7/8/10,
  • macOS,
  • Android.

OpenADMS Node requires a recent Python 3 interpreter, either CPython 3.6+ or PyPy3.5+.


A list of all previous, current, and upcoming versions of OpenADMS Node.

Version Code Name Date Description
0.1 Anchorage 28.02.2014 First implementation in Go
0.2 Brisbane 19.09.2015 Scheduler, FTP and SMTP support
0.3 Copenhagen 19.11.2016 Re-implementation in Python 3
0.4 Dar es Salaam 24.04.2017 Minor improvements and fixes
0.5 Eindhoven 06.09.2017 JSON schema, graphical launcher
0.6 Fukuyama 05.10.2017 Apache CouchDB, further means of alerting
0.7 Geneva 29.08.2018 Database caching, signal handler
0.8 Hanoi TBA PostgreSQL support

Screen Shots

Some screen shots of different versions of OpenADMS Node.

screen shot
Graphical launcher for OpenADMS 0.5 on Microsoft Windows 7
screen shot
OpenADMS 0.4 on Microsoft Windows 7
screen shot
First version of the graphical launcher on Microsoft Windows 7
screen shot
OpenADMS 0.3 running on a Raspberry Pi 2 with NetBSD 7