vivesweb/seedlink_zejfseis — explained in plain English
Analysis updated 2026-05-18
Display live earthquake waveforms in ZejfSeis using data pulled from any SeedLink-compatible server.
Run a DIY home seismograph setup that streams data through SeedLink into a real-time visualization app.
Serve decoded seismic data to multiple ZejfSeis clients at once from a single bridge process.
Keep a seismic data connection alive continuously with automatic reconnect on network drops.
| vivesweb/seedlink_zejfseis | abrown/aom | adroxz1122/injected-host-enumeration | |
|---|---|---|---|
| Stars | 1 | 1 | 1 |
| Language | C | C | C |
| Last pushed | — | 2020-03-11 | — |
| Maintenance | — | Dormant | — |
| Setup difficulty | moderate | hard | moderate |
| Complexity | — | 5/5 | 3/5 |
| Audience | general | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires GCC, the libmseed library, and pthreads, compiled manually with a single gcc command.
Seedlink_ZejfSeis is a small background program, called a daemon, that connects two pieces of seismograph software together. It bridges SeedLink, a common protocol used by earthquake monitoring stations to distribute live seismic data, with ZejfSeis, a desktop application that shows real-time earthquake waveform charts. Without this bridge, ZejfSeis cannot understand SeedLink data directly, so this program translates between the two. The program connects to a remote SeedLink server as a client, following a specific handshake sequence of commands, then continuously reads incoming data packets called MiniSEED records, which contain the raw seismic sensor readings. It decodes those records using a library called libmseed and converts them into the format ZejfSeis expects, then serves that data over its own small network server so that ZejfSeis, or multiple copies of it, can connect and display the waveform live. It also sends periodic heartbeat messages to keep those connections alive, and automatically reconnects if the upstream SeedLink server drops the connection. It is written in C and built with a standard C compiler, requiring the libmseed library for decoding along with basic threading support. Configuration, such as which SeedLink server, station, and channel to connect to, and which port to listen on for ZejfSeis clients, is stored in a JSON file rather than hardcoded, so it can be changed without recompiling the program. It has been tested on Ubuntu Linux and is designed to run continuously, either as a system service or inside a terminal session. This tool is aimed at hobbyists and enthusiasts running their own seismograph setups who want to visualize live earthquake data in ZejfSeis using data pulled from a SeedLink-compatible source.
A small C program that bridges SeedLink earthquake data servers to the ZejfSeis visualization app, translating live seismic readings so ZejfSeis can display them in real time.
Mainly C. The stack also includes C, libmseed, pthreads.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly general.
This repo across BitVibe Labs
Don't trust strangers blindly. Verify against the repo.