On-Ground Data Handling Architecture Separation for Multi-Mission Ground Station Operations

Institut
Lehrstuhl für Spacecraft Systems (TUM-ED)
Typ
Masterarbeit /
Inhalt
theoretisch / konstruktiv /  
Beschreibung

Master’s Informatics Interdisciplinary Project (IDP)

On-Ground Data Handling Architecture Separation for Multi-Mission Ground Station Operations

Start date: Summer Semester 2026

Duration: max. 6 months, adaptable

Topic

This project is embedded within the EventSat satellite mission at the Chair of Spacecraft Systems (TUM SPS): https://www.asg.ed.tum.de/en/sps/eventsat-mission/ 

The problem of separating mission-specific satellite operations software from shared ground station infrastructure is common across multi-mission ground segment architectures. The interface design between mission-specific and ground-station-generic layers, the containerization and deployment strategy for multi-tenant ground station operations, and the architectural patterns for SDR abstraction over an IP link constitute a reusable contribution to the open-source ground station community. The student should document the architecture and interface specification independently of mission-specific protocol details, producing a reference design for mission-agnostic ground station service architectures.

Goals

The goals of this project are the following:

  • Analyze the current on-ground data handling architecture, focusing on the GNU Radio SDR back-end that handles modulation, demodulation, and the interface to the USRP radio hardware. Identify the coupling between mission-specific components and generic ground station functions within the existing monolithic Docker container

  • Design a modular architecture that separates the system into two distinct services: (1) a mission-specific operations service running on the Mission Control/Operations Server (SPS server), responsible for protocol handling and signal processing (modulation/demodulation), and (2) a generic ground station interface service running on the Ground Station server, responsible only for conversion between digital baseband and radio via the directly-connected USRP

  • Define the interface between these two services: specify the data format (baseband samples, IQ data), transport protocol, and API for the RF-over-IP link between the SPS server and the Ground Station server. The architecture must handle bidirectional data flow (uplink and downlink)

  • Implement the architectural separation of the GNU Radio back-end, producing working, deployable services with documented interfaces and deployment configurations

  • Validate the implementation by demonstrating end-to-end data flow through the separated architecture, using either real SDR hardware or a simulated SDR loopback

Tasks

The tasks of the IDP are the following. Time to completion is given in full-time work dedication:

  • Architecture Analysis: - Study the current on-ground data handling Docker container architecture. The container includes two key components: (1) a closed-source protocol handler that exposes a WebSocket API for sending/receiving raw protocol bytestrings, and (2) a GNU Radio Python instance that handles SDR modulation/demodulation and interfaces with the USRP hardware. The current architecture bundles both into a single container. Map the complete data flow: the Mission Control System (MCS) generates raw protocol bytestrings → sends via WebSocket to the protocol handler → the handler encapsulates them in the proprietary data link protocol and manages protocol handshaking → GNU Radio handles modulation and drives the USRP SDR hardware (and the reverse for downlink). Note: the WebSocket interface between the MCS and the protocol handler is already implemented and currently undergoing testing — this is not in scope for modification (~2 weeks) - Identify the boundary between what must run on the SPS server (mission-specific operations) and what must run on the Ground Station server (generic SDR-to-radio conversion). The target architecture is RF-over-IP: the SPS server handles protocol conversion and modulation/demodulation; the GS server handles only the USRP hardware interface. The IDP focuses on splitting the GNU Radio back-end to enable this separation (~2 weeks) - Consult with Ramon Garcia Alarcia (Ground Infrastructure lead) to understand the ASG ground station's multi-user requirements, network topology, and access model (~2 weeks)

  • Architecture Design: - Design the target two-service architecture for the GNU Radio back-end. Define which GNU Radio blocks belong on the SPS server (modulation/demodulation, framing) and which belong on the GS server (USRP source/sink, sample rate conversion, RF front-end control). The architecture must support multiple mission-specific service instances connecting to a single ground station service — e.g. one instance running the proprietary protocol stack for S-Band, and a separate instance running an open protocol (such as CSP, which has existing MCS plugin support and reference code) for UHF (~2 weeks) - Specify the inter-service RF-over-IP interface: sample format, transport mechanism (e.g. UDP streaming, ZMQ, TCP), synchronisation and timing requirements, and any authentication/authorization model for multi-tenant access (~2 weeks) - Produce an architecture document with deployment diagrams showing the SPS server, Ground Station server, and their network connectivity (~2 weeks)
  • Implementation: - Refactor the GNU Radio flowgraph to separate the mission-side signal processing (modulation/demodulation) from the ground-station-side SDR hardware interface, implementing the RF-over-IP transport layer between them (~4 weeks) - Containerize both services with Docker, including deployment configurations (docker-compose or equivalent) for development and production environments. Ensure the proprietary protocol handler container can connect to the mission-side GNU Radio service without modification to its WebSocket API (~2 weeks) - Implement the inter-service communication layer according to the specified RF-over-IP interface (~2 weeks)
  • Validation: - Develop integration tests demonstrating end-to-end data flow through the separated architecture (~2 weeks) - Validate with at least one mission configuration using either real USRP hardware or an SDR simulator/loopback. Demonstrate that the proprietary protocol handler continues to function correctly when connected to the restructured GNU Radio back-end (~2 weeks) - Document any performance implications of the separation (latency, throughput, sample loss) compared to the monolithic architecture. Characterise the network bandwidth requirements of the RF-over-IP link (~2 weeks)
  • Documentation: - Produce user and developer documentation: deployment guide, RF-over-IP interface specification, and architecture decision records (~2 weeks) - Maintain a Git repository with CI-ready code, README, and contribution guidelines throughout the project (~continuous)

Expected results

  • An architecture document describing the separated design with RF-over-IP interface specification

  • Two independently deployable services (mission-side signal processing and generic ground station SDR interface) with Docker deployment configurations

  • Integration test suite demonstrating end-to-end functionality with the existing protocol handler

  • Performance characterisation of the separated architecture, including network bandwidth requirements for the RF-over-IP link

  • Developer documentation and deployment guide in the project repository

Prerequisites / Required Background

  • Strong software engineering skills: Python, Docker, networking

  • Understanding of client-server architectures, API design, and inter-process communication

  • Familiarity with Linux system administration and networking (firewalls, ports, VPN concepts)

  • Willingness to learn GNU Radio and basic SDR concepts (no prior RF experience required, but the student will be working directly with GNU Radio flowgraphs)

  • Version control (Git) and CI/CD concepts

Möglicher Beginn
sofort
Kontakt
Ramon Garcia Alarcia
Tel.: +49 89 289 55752
ramon.garcia-alarciatum.de
Ausschreibung