What I set out to build
A ground station does more than receive bytes from a radio. Telemetry, commands, mission context, and other data need to be stored in a way that the rest of the team can query and build on. The challenge was designing software around a physical communications system rather than a normal web product.
My contribution
- Worked on ground-station database architecture.
- Helped structure telemetry, command, and mission-related data.
- Worked on backend/API integration.
- Contributed to software connecting RF workflows to persistent data storage.
Problem & approach
I joined through the RF communications software team and focused mainly on the data side of the ground station. I worked on how information from the transceiver should be represented, stored, and exposed to downstream software, while learning how that fits around the broader SatNOGS and ground-station stack.
How it works
- 01
Ingest
Receive or ingest data from the ground-station communications stack.
- 02
Organise
Parse and organise the data into useful domain objects.
- 03
Store
Persist telemetry and related records in PostgreSQL.
- 04
Expose
Expose stored information to downstream software through backend interfaces/APIs.
Data & evaluation
Data & inputs
Ground-station telemetry frames and API responses. Networking experiments in the mission-operations code include TCP/UDP routing.
Progress so far
- Ground station
- System scope
- Team contribution
- Engineering context
- Ongoing team engineering work; this project is better represented by architecture and implemented components than by a single performance metric.
Screenshots
Limits & lessons
Limitations
- My contribution covers ground-station data and backend integration within the RF communications software team. It does not cover the satellite or RF hardware as a whole.
What I learned
- This has been useful because the software is attached to a real communications system. Interfaces and data models have to make sense to other software and other people, not just to the person who wrote them.
Next steps
- Keep improving the data model as telemetry requirements become clearer.
- Strengthen integration with the rest of the ground-station stack.
- Add better validation, observability, and developer tooling around incoming data.
