# EARTHWORM MODULES

Last revised June 3, 2019
Version 7.10

## Modules Index

SYSTEM
STATUS AND ERROR REPORTING
DATA SOURCE
SEISMIC PROCESSING
DATA EXCHANGE
ARCHIVING AND PLAYBACK
DISPLAY
HELPFUL UTILITIES

## SYSTEM MODULES

Module name | Its function, briefly | more info (note 1)
--- | --- | ---
startstop | Starts & stops all `EARTHWORM` modules on a computer. This module is the core of the earthworm system. | overview | commands: Windows Solaris Linux
restart | Allows manual restarting of individual modules. | overview | commands
reconfigure | Allows adding new modules or rings to a running `EARTHWORM` | overview | commands
pau | Completely shuts down `EARTHWORM` and all modules/ rings | overview | commands
stopmodule | Given an `EARTHWORM` module process ID, stopmodule stops it, and startstop marks it as "Stop" to prevent statmgr from restarting it. | overview | commands
pidpau | Given an `EARTHWORM` module process ID, pidpau stops it. | overview | commands
StarstopPipeConsole | Provides a way to interact with the 'startstop' process using a console window. This is useful on Windows installations with 'startstop' service installed. (New in EW v7.8) | overview | none

## STATUS AND ERROR REPORTING MODULES

Module name | Its function, briefly | more info (note 1)
--- | --- | ---
statmgr | Monitors `EARTHWORM` system integrity via heartbeat and error messages. Sends email and pager messages as required | overview | commands
copystatus | Copies heartbeats and error messages from one shared memory region to another | overview | commands
diskmgr | Monitors the amount of free disk space available | overview | commands
status | Outputs to the screen `EARTHWORM` status of rings and modules. | overview | commands
ewhtmlemail | Listens for HYP2000ARC event messages and sends graphical alert emails | overview | commands
ewhtmlreport | Generates interactive html reports from HYP2000ARC files | overview | commands

## DATA SOURCE MODULES

Module name | Its function, briefly | more info (note 1)
--- | --- | ---
adsend | Digitizes analog seismic signals on Win2000 system only using National Instruments digitizer boards. | overview | commands
gcf2ew | Guralp Digitizers Earthworm feed via direct connection to serial port or TCP terminal server. (Solaris and Linux only) | overview | commands
| geojson2ew | Receives data from an AMQP server. (New in EW v7.8) | overview | commands
grf2ew | NetDas Digitizers Earthworm feed via direct connection to GRF server. (Solaris, Linux, Windows) | overview | commands
k2ew | Receives data packets from a Kinemetrics K2 Strong Motion Accelerograph via serial port or TCP on either Solaris or Win2000. | overview | commands
naqs2ew | Naqs2ew is an interface through which waveform data collected by the Nanometrics data acquisition software, NaqsServer, can be fed into an Earthworm system in near-real-time. | overview | commands
nmxptool | nmxptool is an IMPROVED interface through which waveform data collected by the Nanometrics data acquisition software, NaqsServer, can be fed into an Earthworm system in near-real-time. (Contributed by INGV) | overview | commands
psnadsend | PSNadsend for Public Seismic Network (webtronics digitizer) | overview | commands
q2ew | A Quanterra/COMSERV data feeding program. | overview | commands
q3302ew | A Quanterra Q330 data feeding program, rewritten by ISTI using Lib330 from Quanterra (not MountainAir). | overview | commands
reftek2ew | A Reftek data feeding program | overview | commands
samtac2ew | Imports data from SAMTAC-802U over tcp/ip or serial on windows | overview | commands
rock2ew | Provides a data relay from a Kinemetrics-Rockhound-compatible instrument into Earthworm via export/import. | overview | commands
saraadsend | A SARA digitizer earthworm data feeding module (serial input, windows only). | overview | commands
scream2ew | Scream2ew converts data from Guralp SCREAM server to trace_buf earthworm messages and puts them into an earthworm ring. | overview | commands
srpar2ew | Symmetric Research Digitzer module for parallel port digitizers, formerly known as srparxchewsend. | overview | commands
srusb2ew | Symmetric Research Digitzer module for usb port digitizers. | overview | commands
windsr2ew | Receives data packets from a windsr digitizer (webtronics) using TCP/IP. | overview | commands

## PROCESSING MODULES

Module name | Its function, briefly | more info (note 1)
--- | --- | ---
pick_ew | Picks P-arrivals and makes coda measurements | overview tuning info | commands
pick_FP | Picks phase arrivals using a multiband picking algorithm | overview | commands
pkfilter | A duplicate pick removal filter. | overview | commands
coda_aav | Produces 2s coda avg absolute values (aav) (Menlo contrib) | overview | commands
coda_dur | Reads picks and coda avg absolute values (aav) and then determines the coda duration for each pick (Menlo contrib) | overview | commands
binder_ew | Associates P-arrivals into events | overview /setup | commands
eqproc | Initiates final event processing (head of mega-module). | overview | commands
eqprelim | Initiates preliminary event processing (alternate head of mega-module). | overview | commands
eqassemble | Initiates event processing multiple times (CISN contrib) | overview | commands
eqbuf | Buffers events (part of mega-module) | overview | commands
eqcoda | Performs coda calculations (part of mega-module) | overview | commands
eqverify | Passes only events verified as earthquakes (part of mega-module) | overview | commands
eqverify_assemble | Passes only events verified as earthquakes (part of mega-module with eqassemble) | overview | commands
gegqproc | Clone of eqproc designed to work with glass. | overview | commands
glass | Carl Johnson's Global Associator. See the overview for the Glass Manual written for Hydra by Dave Kragness. | overview | commands
hyp2000_mgr | Relocates earthquakes using Hypoinverse (tail of mega-module) | overview | commands
hyp2000 | Hyp2000 is the stand-alone version of hypoinverse, an earthquake location program, written and maintained by Fred Klein at USGS, Menlo Park | overview | commands
nll_mgr | Relocates earthquakes using NonLinLoc from Anthony Lomax (tail of mega-module) | overview | commands
evanstrig and evansassoc | Evanstrig monitors waveforms for long-period signals; evansassoc associates LP triggers into events. | overview | Evanstrig Commands Evansassoc Commands
carl*trig | The Carl Johnson coincidence trigger for Earthworm consists of two programs. CarlStaTrig produces station trigger messages on a transport ring. CarlSubTrig reads these and writes a TRIGLIST message. | overview | CarlStaTrig CarlSubTrig
rayloc_ew | Ray Buland's global earthquake locator. | overview | commands
raypicker | Ray Buland's global picker. | overview | commands
statrigfilter | A pkfilter like module for filtering out duplicate station triggers. | overview | commands
compress_UA and decompress_UA | The compress_UA and decompress_UA modules implement the gencompress algorithm which is used with permission from Boulder Real Time Technologies, Inc., copyright 1997. | overview | Compress_UA Decompress_UA
decimate | Implements filter and decimate routines. | overview | commands
fir | Implements a general-purpose FIR filter for trace data. | overview | commands
arc2trig | Takes a hypo arc message as input, and produces a .trg file (also puts trig message on out ring). | overview | commands
eqfilter | Performs parameter tests on Hypoinverse ARC messages. | overview | commands
eqfilterII | Clone of eqfilterII to work with any of TYPE_HYP2000ARC, TYPE_LOC_GLOBAL, and TYPE_RAYLOC | overview | commands
localmag | Calculates the Local Magnitude | overview | commands
gmew | Calculates strong motion parameters | overview | commands
wftimefilter | Sanitizer of waveform packets to eliminate out of order and badly timed packets (overlaps and dups etc). | overview | commands
wftimeshifter | Adds a fixed time offset to waveform packets. | overview | commands
ewintegrate | Realtime computation of integration of waveforms, useful for taking acceleration to velocity or velocity to displacement. Also allows filtering. | overview | commands
ewdrift | Realtime computation of drift between 2 channels of waveforms. | overview | commands
ewspectra | Takes data from one or more waveservers, computes and processes their spectra | overview | commands
compute_spectra | Posts a message for ewspectra to begin processing. (Deprecated 5/5/2011; use activate_module instead.) | overview | none
ewthresh | Monitors a ring for TRACEBUF2X messages and generates an alarm message when a SCNL-specific threshold is exceeded. | overview | commands
ewnotify | Monitors a ring for ACTIVATE_MODULE or alarm messages; generates email and posts a message to a ring for an instance of activated_scripts. | overview | commands
ewaccel | An acceleration threshold monitor; reads TRACEBUF2 packets from sensors on different floors of a building, compares the sum of their forces w/ a threshold which, if exceeded, causes an alarm message to be written to a ring. | overview | commands
ewshear | A shear wave velocity monitor; reads TRACEBUF2 packets from sensors on different floors of a building, compares the change in velocity w/ a percentage threshold which, if exceeded, causes an alarm message to be written to a ring. | overview | commands
ew_rsamalarm | An RSAM monitor; reads TRACEBUF and TRACEBUF2 as would be produced by ew2rsam. Recognizes when identified stations have an event, logging and producing messages with statistics on each event. Groups stations into subnets; when enough stations in a subnet participate in an event concurrently, an alarm message is produced. | overview | commands

## DATA EXCHANGE MODULES

Module name | Its function, briefly | more info (note 1)
--- | --- | ---
coaxtoring | Reads `EARTHWORM` messages from Ethernet and places them into shared memory | overview | commands
condenselogo | Reads messages from a list of logos from one transport ring and writes them to another ring using its own installation and module id in the logo. | overview | commands
ringtocoax | Reads `EARTHWORM` messages from shared memory and broadcasts them onto Ethernet | overview | commands
ringtocoaxII | Same as ringtocoax but with an input queue | overview | commands
menlo_report | Transfers single-event HYPOINVERSE archive files to a remote machine | overview | commands
export_generic export_scn export_scnl export_scn_pri export_ack export_scnl_ack export_gen_actv | Exports `EARTHWORM` messages over Internet (partner to import_generic) | overview | export_generic export_scn export_scn_pri export_ack export_scnl export_scnl_ack export_gen_actv
ew2file | Converts `EARTHWORM` messages into files. | overview | commands
file2ew | Inserts `EARTHWORM` messages files onto rings. | overview | commands
import_generic import_pasv | Imports `EARTHWORM` messages over Internet (partner to export_generic) | overview | import_generic commands import_pasv commands
vdl_ew | This is the Earthworm encapsulation of the USNSN code written by Dave Ketchum, USNSN. | overview | commands
import_ida | This program enables an Earthworm to retrieve and process continuous trace data from numerous IDA data servers. | overview | commands
rcv_ew | The module permits turn-key, two-way trace data exchange between the USNSN and regional networks. | overview | commands
liss2ew | Liss2ew is the earthworm module for receiving trace data from the Live Internet Seismic Server. | overview | commands
liss2ew_scnl | Liss2ew_scnl is the earthworm module for receiving trace data from the Live Internet Seismic Server. This is a rewrite of liss2ew for SCNL and has only been tested under windows | overview | commands
ew2liss | Ew2liss is the Earthworm module for serving Earthworm trace data in LISS (Live Internet Seismic Server) format. | overview | commands
ringdup | Ringdup reads messages from one ring and deposits them into another. | overview | Ringdup_generic Ringdup_scn
tbuf2mseed | Reads TRACEBUF2 messages from one ring, converts them to MiniSEED messages, and deposits them into another ring. (New in EW v7.7) | overview | commands
mseed2tbuf | Reads MiniSEED messages from one ring, converts them to TRACEBUF2 messages, and deposits them into another ring. (New in EW v7.7) | overview | commands
ew2ringserver | Collects TRACEBUF2 or TYPE_MSEED messages from an Earthworm ring and sends miniSEED records to an IRIS ringserver SeedLink server. (New in EW v7.7) | overview | commands
ewexport2ringserver | Collects data from an Earthworm export process and sends the data to an IRIS ringserver SeedLink server. (New in EW v7.7) | overview | none
seisan_report | Watches for TYPE_HYP2000ARC type messages and generates seisan s-files. | overview | commands
scn2scnl scnl2scn | SCN 2 SCNL converters for waveform packets | overview | scn2scnl scnl2scn
pickwasher | Pick format (scnl to global) converter from NEIC(Windows and Solaris compat) | overview | commands
slink2ew | Seedlink importer module from Chad Trabant (Windows and Solaris compat) | overview | commands
sendfileII getfileII makehbfile | Set of programs used to transfer files between computers running Windows 2000 and/or Sun Solaris. These programs do not require an Earthworm setup. | overview | ----

## ARCHIVING/PLAYBACK MODULES

Module name | Its function, briefly | more info (note 1)
--- | --- | ---
archman | archman provides a wrapper for waveman2disk for continuous output of data to file. | overview | commands
wave_serverV | Wave_serverV provides a network-based service for trace data. It acquires Earthworm trace data messages for specified channels and maintains a disk-based circular buffer for each channel. | overview | commands
ew2mseed | ew2mseed is a standalone module that builds continuous miniSEED day files from a wave_serverV connection. | overview | commands
ewmseedarchiver | Reads TYPE_MSEED messages from a transport ring and writes the miniSEED records to the file system. (New in EW v7.7) | overview | commands
tankplayer | Simulates an adsend module: reads a waveform file and puts waveform messages in shared memory in pseudo-real-time. | overview | commands
tankplayer_tools | Tools to assist the user in building a tank. Converters like sac2tb, ms2tank, ring2tank, remux_tbuf and utilities tanksniff,tankcut, and dc2tank. | overview | none
trig2disk | Trig2disk module reads trigger messages and retrieves waveform data from wave_serverV into AH or SAC format files. | overview | commands
runwws | Wrapper to run the Winston Waveserver Java programs as an Earthworm Module (Windows compatible) | overview | commands
waveman2disk | Manual, interactive program to save trace data from Earthworm Wave_servers to disk. | overview | commands

## DISPLAY MODULES

Module name | Its function, briefly | more info (note 1)
--- | --- | ---
wave_viewer | Wave_viewer, which runs under Win2000, acts as an electronic develecorder. It retrieves waveform data from wave_serverV and displays it. | overview | commands
heli_ewII | heli_ewII is designed to automatically provide GIF images of waveforms for display on the WWW. It can run as an Earthworm module or a standalone program. | overview | commands
sgram | Creates spectrogram displays for the WWW. | overview | commands
latency_mon | Logs and displays latency and outages of data from a specified ring (Windows only). | overview | commands
PickStatistics | Computes statistics graphically on picks from binder logs or pick recorder files for evaluation of the event picker. | overview | none
webswave | Standalone tool for plotting traces and picks in real time using a web browser. (New in EW v7.7) | overview | none

## HELPFUL PROGRAMS

Module name | Its function, briefly | more info (note 1)
--- | --- | ---
cleandir | Windows directory cleaning module as a windows service. | overview | commands
config_ws | Create the WaveServerV tankfiles based on polling of a WAVE_RING. | overview | commands
dumpwave | Dump a waveform data file to the screen. | overview | none
file2ring | Load contents of file into a ring. | overview | none
ellipse2arc | ellipse2arc -- convert from HypoEllipse (Hypo71) Message into Hypoinverse format Message | none | commands
findwave | Program to listen to a ring, and write to a file the `SCN(L)`'s of all `TRACEBUF` or `TRACEBUF2` messages found there and some statistics about the `SCN(L)`. | overview | none
gaplist | Program to search for gaps in `TRACEBUF` or `TRACEBUF2` messages and print tables. Developed by Will Kohler at USGS, Menlo Park. | none | commands
getmenu [UW] | Retrieves and prints the menu from the wave server. | overview | none
getstation | Retrieves and prints a station list from the wave server. A subset of getmenu. | overview | commands
maketrace | Trace data load test component | overview | none
pick_recorder | Records picks SCNL or PICK2K to a file per day in a user specified directory | overview | commands
putpick | Reads a file containing a series of pick/coda msgs and writes them to shared memory ring | overview | none
sniffring | Latches onto a user-defined transport ring, reads every message and prints logo to screen. | overview | none
sniffspectra | Latches onto a user-defined transport ring, reads every spectra message (as from ewspectra); prints information to screen or to a file | overview /setup | none
sniffwave | Reads waveform messages from Earthworm transport ring and for each message, prints the logo and header information to the screen. | overview | none
template | A template module for programmers who want to create ther own Earthworm module | overview | none
wave_probe | Sends a trace request for one station in a waveserver, creating a debugging file | overview | none
wsv_test | Program to request menu from a list of wave_serverVs and report to the status manager if any wave server process is dead. Developed by Will Kohler at USGS, Menlo Park. | none | commands
activate_module | Puts an ACTIVATE_MODULE message in the specified ring, the body of which starts with the module ID of the specified target module, followed by the remaining command-line arguments. | overview | none
activated_scripts | When it reads an ACTIVATE_MODULE message from the specified ring, the body of which is a list of command-line arguments, it executes a sequence of scripts using those arguments, and write a completion message to a ring when done. | overview | commands

## CONTRIBUTED SOFTWARE

Note 1: The configuration files in this table should be verified by comparison with the configuration file examples in the source directory of each module.

Originally funded and developed by: U.S. Department of the Interior, U.S. Geological Survey, Reston, VA, USA