Skip to main content

QuakeSense Service

QuakeSense monitors a realtime channel, applies the configured filter and trigger algorithm, and publishes detections through MQTT. It can also notify connected web dashboards. Local vibration and noise can trigger detections; tune thresholds for the installation.

SettingKeyDefaultMeaning
EnableenabledfalseStart detection and MQTT connection.
Enable Web Notificationsweb_notification_enabledtrueNotify connected dashboards after successful trigger publication.
MQTT Brokermqtt_brokertcp://broker.emqx.io:1883Broker URL.
MQTT Topicmqtt_topicanyshake/quakesense/<random>Publication topic.
MQTT Username / Passwordmqtt_username, mqtt_passwordEmptyBroker credentials.
MQTT Client IDmqtt_client_idanyshake-observer-<random>Unique broker client ID.
Monitor Channelmonitor_channelEHZChannel matching Station Settings.
Filter Typefilter_typebandpassNo filter, low-pass, band-pass, or high-pass; select in the UI.
Minimum / Maximum Frequencymin_freq, max_freq0.5, 10.0Filter frequencies in Hz.
Trigger Methodtrigger_methodclassic_sta_ltaClassic, recursive, delayed STA/LTA, or Z-Detect; select in the UI.
STA / LTA Windowsta_window, lta_window4.0, 30.0Window lengths in seconds.
Trigger On / Offtrig_on, trig_off1.0, 0.4Trigger thresholds.
Throttlethrottle_interval10Minimum detection publication interval in seconds; zero disables throttling.

Use a valid channel, an LTA window longer than STA, and filter cutoffs below the channel's Nyquist frequency. The detector needs to fill its history window after startup or a discontinuity before producing useful detections.

MQTT connectivity is required by this implementation, including when web notifications are desired. It connects to the broker before processing the realtime subscription. The default broker is public and unauthenticated: use your own broker and credentials for private station information, and assign each station a unique client ID and topic.

Messages are JSON, sent with QoS 0 and without retention. They contain trigger_time in Unix milliseconds, channel_code, sample_rate, station identifiers and description, location, trigger method, windows, thresholds, and filter settings. QoS 0 does not guarantee delivery.

See Station Trigger with Node-RED for a subscriber flow and time conversion.