Telemetry Service¶
- group Telemetry Service
Collects, organizes, and exposes system-wide data.
The Telemetry service decouples data collection from data transmission. It ensures that when the OBC requests a status update, the data is already aggregated and ready to read.
- group Types
Types for telemetry.
-
struct eps_telemetry_t¶
- #include <telemetry.h>
The Master Telemetry Packet.
This structure contains a snapshot of the entire EPS state. It may include nested structures from other services.
-
struct telemetry_t¶
- #include <telemetry.h>
Service state container.
Holds the actual instance data for the telemetry service, including the current snapshot of the system state.
Public Members
-
eps_telemetry_t telemetry¶
The current aggregated data snapshot.
-
eps_telemetry_t telemetry¶
-
struct eps_telemetry_t¶
- group Public API
Functions for updating and retrieving telemetry.
Functions
-
void telemetry_init(telemetry_t *telemetry)¶
Initialize the Telemetry aggregator instance.
Prepares the internal data structures and zeroes out the telemetry packet within the provided handle.
- Parameters:
telemetry – [out] Pointer to the telemetry service instance to initialize.
-
void telemetry_update(telemetry_t *telemetry)¶
Periodic update task.
This function queries all other active services (Battery, Rails, etc.) to get their latest status and updates the snapshot inside the provided handle.
- Parameters:
telemetry – [inout] Pointer to the telemetry service instance to update.
-
eps_telemetry_t telemetry_get_all(telemetry_t *telemetry)¶
Retrieve the latest full system snapshot.
- Parameters:
telemetry – [in] Pointer to the telemetry service instance to read from.
- Returns:
eps_telemetry_t A copy of the aggregated telemetry data.
-
void telemetry_init(telemetry_t *telemetry)¶