doc: update to .0.6.0 with full working event read loop

This commit is contained in:
Brian Harrison
2026-04-02 17:30:33 -04:00
parent 0f5aa7a3fc
commit 5d0f0855f2
3 changed files with 151 additions and 16 deletions

View File

@@ -1,4 +1,4 @@
# seismo-relay `v0.5.0`
# seismo-relay `v0.6.0`
A ground-up replacement for **Blastware** — Instantel's aging Windows-only
software for managing MiniMate Plus seismographs.
@@ -6,8 +6,10 @@ software for managing MiniMate Plus seismographs.
Built in Python. Runs on Windows. Connects to instruments over direct RS-232
or cellular modem (Sierra Wireless RV50 / RV55).
> **Status:** Active development. Core read pipeline working (device info,
> config, event index). Event download and write commands in progress.
> **Status:** Active development. Full read pipeline working end-to-end:
> device info, compliance config (with geo thresholds), event download with
> true event-time metadata (project / client / operator / sensor location
> sourced from the device at record-time via SUB 5A). Write commands in progress.
> See [CHANGELOG.md](CHANGELOG.md) for version history.
---
@@ -148,7 +150,7 @@ Port: 9034 ← Device Port in ACEmanager (call-up mode)
from minimateplus.transport import TcpTransport
from minimateplus.client import MiniMateClient
client = MiniMateClient(transport=TcpTransport("1.2.3.4", 9034))
client = MiniMateClient(transport=TcpTransport("1.2.3.4", 9034), timeout=30.0)
info = client.connect()
```
@@ -182,12 +184,17 @@ client = MiniMateClient(port="COM5")
client = MiniMateClient(transport=TcpTransport("1.2.3.4", 9034), timeout=30.0)
with client:
info = client.connect() # DeviceInfo — model, serial, firmware
info = client.connect() # DeviceInfo — model, serial, firmware, compliance config
serial = client.get_serial() # Serial number string
config = client.get_config() # Full config block (bytes)
events = client.get_events() # Event index
events = client.get_events() # List[EventRecord] with true event-time metadata
```
`get_events()` runs the full download sequence per event: `1E → 0A → 0C → 5A → 1F`.
The SUB 5A bulk waveform stream is used to retrieve `client`, `operator`, and
`sensor_location` as they existed at record time — not backfilled from the current
compliance config.
---
## Protocol quick-reference
@@ -244,7 +251,8 @@ Blastware → COM4 (virtual) ↔ s3_bridge.py ↔ COM5 (physical) → MiniMate P
## Roadmap
- [ ] Event download — pull waveform records from the unit (SUBs `1E``0A``0C``5A`)
- [x] Event download — pull waveform records from the unit (`1E → 0A → 0C → 5A → 1F`)
- [x] True event-time metadata — project / client / operator / sensor location from SUB 5A
- [ ] Write commands — push config changes to the unit (compliance setup, channel config, trigger settings)
- [ ] ACH inbound server — accept call-home connections from field units
- [ ] Modem manager — push standard configs to RV50/RV55 fleet via Sierra Wireless API