pyrtc.telemetry
Telemetry capture helpers for pyrtc shared-memory streams.
The Telemetry component provides a small, operator-friendly API for
capturing bounded stretches of existing pyrtc streams into standard NumPy data
products. Each save creates one session directory containing per-stream
frames.npy and timestamps.npy files plus lightweight JSON metadata.
The intended user workflow is deliberately simple:
telem = Telemetry()
telem.save("wfs", 1000)
telem.save(["wfs", "wfc"], 1000)
data = telem.read_last_save()
print(data["wfs"]["frames"].shape)
This keeps the hot path straightforward, stores frames in a standard NumPy format, and makes the resulting capture easy to load for offline analysis and future export layers such as AOTPy.
For “what just happened?” captures, telemetry can also record continuously into a bounded in-memory ring buffer and dump it on demand, in the same session format:
telem.start_ring_buffer(["wfs", "wfc"], seconds=10)
...
path = telem.dump_ring_buffer("event")
telem.stop_ring_buffer()
Module Attributes
|
Extra capacity allocated over the measured publication rate when a ring buffer is sized from |
Functions
|
Return all telemetry session directories under one base directory. |
|
Load the JSON metadata for one telemetry save. |
|
Load a telemetry save into an easy-to-use per-stream mapping. |
Classes
|
Capture pyrtc streams into standard NumPy telemetry products. |