SeisComP released in version 6.0.0

Nov 2, 2023


We have released SeisComP in the new version 6.0.0. A major focus of this release has been on improving the calculation and configuration of amplitudes and magnitudes, a rework of scardac for more efficient scanning of waveform archives and the advancement of scrttv which now allows plotting continues spectrograms and matured browsing of waveforms at any time now and in the past and association of phase picks for adding previously unknown events to SeisComP.

Many more new and valuable features, optimizations and improvements have been added to modules including graphical user interfaces, daemon modules and command-line tools. New or updated chapters in the Concepts section of the SeisComP documentation provide background reading on magnitudes and locators in SeisComP. The database schema upgrades to version 0.13.

Important notice: As of SeisComP in version 6.0.0 we stop any development of gempa modules for SeisComP3.

First some statistics for all changes and bugfixes :

634 files have changed, with 65722 insertions and 23120 deletions.

Important changes in a nutshell

  • The new database schema version is now 0.13.
  • Updated conversion of distances between km in degree assuming the mean radius of WGS84.
  • New event types were added for classifying volcanic tremors.
  • New default amplification parameters of Wood-Anderson torsion seismometers after Uhrhammer et al. (1991) as recommended by the IASPEI committee .
  • Time windows for measuring amplitudes for ML* magnitudes now support configuration by a time grammar.
  • New magnitude features supporting creation of Mw from any magnitude and of aliases involving any combination of amplitude and magnitude.
  • scautopick supports feature extraction for measuring slowness and back azimuth along with pick times.
  • scrttv now provides plotting spectrograms from continuous real-time and non-real-time waveforms.
  • scardac now only scans data files which have been changed since the last update and further allows to restrict the scan operation by time and waveform stream id. This optimization allows for more frequent scans of large archives.
  • Command-line tools like scart, scinv and scdumpcfg now allow creating stream lists from waveforms, inventory or your bindings configuration. These lists can be used for filtering again waveforms, inventory or stream lists in tools like scart, scmssort, invextr, scevtstreams in order to create tailored data sets.

Upgrading to SeisComP in version 6

You may download and install the new SeisComP package from the SeisComP website by GFZ Potsdam or our package server at gempa . The latter provides the documentation included in the package file. When using SeisComP together with gempa modules, then all gempa modules must be upgraded as well. Especially for this kind of installation or upgrade but also in general we recommend to download and use our gempa software manager (gsm) .

Upgrading from SeisComP in version 4.x.x is easy and fast. Read and follow the upgrade instructions of the online documentation for upgrading to a higher release number. When upgrading from SeisComP3, a few more steps must be taken which are also described in the online documentation for upgrading from SeisComP3 in much detail.

Upgrade the database

After installation of this new SeisComP release a database upgrade is required unless you have already worked with a recent version of our nightly SeisComP packages or a recent compilation from source code.

The current and the expected database version will be tested and the required actions will be shown when executing

$ seiscomp update-config

or when pressing the Update Configuration button in scconfig. An upgrade from version 5.0.0 will give:

* starting kernel modules
scmaster is already running
* configure kernel
* configure scmaster
INFO: Checking queue 'production'
  * checking DB schema version
  * check database write access ... passed
  * database schema version is 0.12
  * last migration version is 0.13
  * migration to the current version is required. Apply the following
    database migration scripts in exactly the given order:
    * seiscomp stop
    * mysql -u sysop -h localhost -p seiscomp < /home/sysop/seiscomp/share/db/migrations/mysql/0_12_to_0_12_1.sql
    * mysql -u sysop -h localhost -p seiscomp < /home/sysop/seiscomp/share/db/migrations/mysql/0_12_1_to_0_13.sql
    * seiscomp start
error: updating configuration for scmaster failed

The shown database command can be used in a command-line terminal for upgrading the database schema version:

seiscomp stop
mysql -u sysop -h localhost -p seiscomp < /home/dirk/seiscomp/share/db/migrations/mysql/0_12_to_0_12_1.sql
mysql -u sysop -h localhost -p seiscomp < /home/sysop/seiscomp/share/db/migrations/mysql/0_12_1_to_0_13.sql
seiscomp update-config
seiscomp start

Test your configuration

Since some parameters from previous SeisComP version have been renamed, removed or deprecated we recommend to test your configuration and adjust if required. For testing we provide the script which you may download and use at your convenience. As the script is maintained and new parameters may be added we recommend to always download and work with the latest version. After downloading read the command-line help first

$ python3 -h

The output will tell you the recommended actions.

Ending support for SeisComP3

As of SeisComP in version 6.0.0 we stop supporting SeisComP3 by gempa modules and plugins. This means that no new versions of our packages will be provided for SeisComP3 and we will successively remove all dependencies of Python and C++ modules on SeisComP3. This may also affect your custom Python scripts, e.g., for GDS, Moment Tensors, SIGMA or SHARD.

When running Python modules which still use the SeisComP3 API, a deprecation warning will be issued such as for dump_picks which ships with scanloc:

sysop@proc:~$ dump_picks -h
/home/sysop/seiscomp/bin/dump_picks:25: DeprecationWarning: The SeisComP3 python API compatibility layer is deprecated and will be removed with SeisComP 7. Change your imports from 'seiscomp3' to 'seiscomp'.
  from seiscomp3 import Core, DataModel, Logging, IO

We will adjust all Python scripts which ship with SeisComP or gempa packages in the near future. If this affects your own custom modules, you should adjust your source code, e.g., replacing

import seiscomp3.Core


import seiscomp.core

This important change is of course announced and described in the Changelog .

Amplitudes and magnitudes

Wood-Anderson torsion seismometer parameters assumed by default for correcting waveforms and measuring amplitudes for local magnitudes such as ML, MLv and MLc have been adjusted after Uhrhammer et al. (1991) as recommended by the IASPEI committee . The default gain and damping value are now 2080 and 0.7, respectively. The change will reduce the concerned magnitudes systematically by 0.13 unless the values have been explicitly configured.

Time windows for measuring amplitudes of any type can now be accurately configured using a time grammar. As an example, the end of a time window can be defined based on the predicted arrival time of S phases or the epicentral or hypocentral distance corrected with some velocity plus some margin. The grammar is explained in detail in the new documentation section Time grammar. The grammar includes functions for getting the distance-dependent phase arrival times from custom travel-times or minimum and maximum.

For defining the end time of signal windows from arrival times of S phases with iasp91 travel-time tables a margin of 5 s configure:

amplitudes.ttt.interface = LOCSAT
amplitudes.ttt.model = iasp91
amplitudes.MLc.signalEnd="tt(S) + 5"

or with just hypocentral distance in km corrected by 5 km/s

amplitudes.MLc.signalEnd="h / 3 + 5"

Add the parameters above to your global binding parameters. When configuring in global module configuration instead of bindings, prepend “".

IASPEI recommendations have been implemented for measuring amplitudes for mb amplitudes as well as in single cycles from peak to trough or trough to peak when selecting the peak-to-trough method.

Regionalization of any magnitude was introduced and announced in SeisComP in version 5.0.0 . Now we have simplified the configuration by global module configuration parameters where you only have to create a single magnitude profile per magnitude. The regionalization is configured by global module configuration parameters in the magnitudes section.

Aliases can now be created from amplitude and magnitude types for creating new magnitude types. In this way, different configurations can be considered in parallel or magnitudes be used simply with different names. For example, in order to create a new magnitude of type MLc01 considering MLc magnitude and ML amplitude configuration parameters configure the alias as

magnitudes.aliases = MLc01:MLc:ML

Mw moment magnitudes can now be derived from any magnitude by applying a linear correction. The mapping from an original magnitude, M*, to the corresponding moment magnitude, Mw(M*), is configured in the global configuration of Magnitude-type profiles such as for MLv where linear interpolation is applied in between nodes:

magnitudes.MLv.MwMapping = -1:-1,1:1,6:6

Graphical user interfaces

Some novelties may affect multiple graphical tools such as scolv, scmv, scrttv, scqcv, scesv.

  • Already with SeisComP in version 5.4.0 we have introduced homogeneous menus for important actions. They include:

    • File for loading files in SCML format or quitting.
    • View for toggling full screen or for more specific actions.
    • Settings for adjusting the connection to the messaging. This in particular useful in case of emergency situations and redundant systems.
    • Help for accessing locally installed help of the module and of SeisComP in general.
  • Some custom text may be rendered on maps next to symbols defined by geo features, e.g., points defined in GeoJSON file,


scrttv has undergone significant updates:

  • You may view spectra for real-time data and data from archive: Use the View menu or press Shift + S for activating or deactivating spectrograms. Controlling the spectrogram is available interactively by a new settings window which can be activated from the Windows menu.
  • Already as of SeisComP in version 5.4.0 scrttv shows picks associated to origins in darker color than unassociated ones. Operators may activate the picks association mode in the Mode menu and then drag a rectangle across the data to associate picks. Also hold Shift or Ctrl keys to add or remove picks. A new origin will be formed which can be processed further or send to the messaging.
  • Also released with SeisComP 5.4.0 data from any time window can now be loaded interactively. Use Alt + left or Alt + right for moving in time or simply select a time window and press Ctrl + R. To switch back to standard real-time mode press Ctrl + Shift + R. The actions can also be access from the Edit menu.


You may now restore default amplitude-time windows in the amplitude picker (Shift + W) for recovering from previous modification and reset the length of the zoom trace to the trace overview in amplitude picker. Time windows configured for particular amplitude types based on time grammar are considered. Already as of version 5.4.0 the onset attribute can be set in the phase picker window and the determined values are visualized there or listed in the arrival table.


scesv now also shows the event type if any is set.

Automatic modules and command-line tools


The seiscomp tool itself has received an informative documentation and the new command

seiscomp print variables

for listing important internal SeisComP variables of your installation.


Our new tool for scanning waveform archives for data availability has been reworked to improve its performance. Instead of re-scanning entire archives in every run, scardac now only evaluates data files in archives which have been changed since the last run. In addition start and end times and waveform stream ID filters may now be configured or set on the command line to further limit the data set to analyze. The changes results in much higher speed allowing to regularly scan entire archives. As before, the availability information may be fetched from the database using scxmldump or fdsnws.


New option --print-query-only for simply printing the database query.


New option --nslc for filtering the read phase picks by stream IDs. The list of IDs can be generated beforehand from miniSEED data, inventory or bindings configurations by tools like scart, scinv or scdumpcfg.


The new option --nslc was added allowing to filter inventory by list of stream IDs given in a file. The list of IDs can be generated beforehand from miniSEED data, inventory or bindings configurations by tools like scart, scinv or scdumpcfg.


scmapcut can now generate maps with multiple events given by their IDs.


scdispatch can now send notifiers to the messaging, which where created, e.g., by bindings2cfg in order to update bindings from custom key directories.


By default, no objects are now stripped from the database but times must be set. This reduces the risk of false actions. The new option --time-window allows removing or keeping objects based on a time window instead of a single time.

scevtls / scorgls

Both modules have received the option -i for reading event parameters from XML files instead of the database only. The option allows extracting the IDs of events and origins from XML files.


Log files are now rotated and kept for 7 days by default. Before, new entries were added resulting in ever growing log files on your disk.

Event types

For better supporting the classification of volcanic tremor we have added types of events which can be assigned to events in scolv or by other means such as the region check plugin for scevent. The new event types include: “volcano-tectonic”, “volcanic long-period”, “volcanic very-long-period”, “volcanic hybrid”, “volcanic rockfall”, “volcanic tremor”, “pyroclastic flow”, “lahar”.