Overview
The Telemetry system exists to collect and enable analysis of kart fleet telemetry data. It gives SG the ability to monitor fleet battery health in real time and to ingest and analyse live run data (DAQ) from the karts during sessions. Combined with timing data from TalentID:Coaching, this provides a more complete picture of driver and kart performance.How It Works
Telemetry is a set of locally hosted microservices that communicate directly with the kart fleet over TCP to collect CAN charging data and DAQ (run) data. It consists of three components:- Charging Data Receiver — Collects CAN charging data from the fleet over TCP.
- Telemetry Dashboard — A web application to monitor fleet battery health in real time and export charging data runs to S3.
- Exporter API — Queries InfluxDB for charging data monitored in the Telemetry Dashboard, and ingests live run (DAQ) data from the karts and uploads to S3.
Telemetry is locally hosted, not cloud-hosted. This is an important operational distinction — it requires physical presence on the network where the karts are.
Repositories
| Repository | Description |
|---|---|
| can-wifi | Telemetry services and infrastructure code |
Dependencies
Internal
- TalentID: Coaching — Telemetry reads timing data from TalentID:Coaching to correlate with telemetry readings. It also writes collected telemetry data back into TalentID:Coaching via the API, where it is stored and served alongside timing KPIs.
- GKL API — Telemetry reads booking event data from GKL API to understand active events. Read-only.
Infrastructure
- TalentIdPipeline-Infra-CDK — Provides the VPC and shared MongoDB EC2 instance.
- Local network — Telemetry services are locally hosted and communicate with the kart fleet over TCP on the local network.
Notes
- DAQ data ingestion via the Exporter API is currently in development.
