How issuiuc/groundstation works
GSS is a ground-station application for viewing rocket telemetry, issuing commands, monitoring system health, and producing livestream overlays; it also includes backend relay and video services. The primary user workflow runs through the frontend app into telemetry/commanding views, with telemetry supplied by a shared data provider and command actions sent from the commanding view. Stream overlays and OBS controls are separate product branches. Relationships involving unsampled backend and video internals are not asserted; dashed links mark the documented but incompletely evidenced MQTT integration.
Main entry points: gssdata.jsx Telemetry Provider · app.jsx Frontend App · OverlayController.jsx Stream Overlay · StreamControlPanel.jsx Stream Control Panel
Components 23
Ground Station UI
- Frontend App
gss-frontend/src/app.jsx - Telemetry Views
gss-frontend/src/components/views/FullTelemetryView.jsx - Map View
gss-frontend/src/components/views/MapView.jsx - System Health
gss-frontend/src/components/views/SystemHealthView.jsx - Commanding View
gss-frontend/src/components/views/CommandingView.jsx - Settings View
gss-frontend/src/components/views/SettingsView.jsx
Telemetry And Commands
- Telemetry Provider
gss-frontend/src/components/dataflow/gssdata.jsx - Data Settings
gss-frontend/src/components/dataflow/settings.jsx - Event Sequencer
gss-frontend/src/components/dataflow/sequencer.jsx - Telemetry Derivatives
gss-frontend/src/components/dataflow/derivatives.jsx - MIDAS Conversion
gss-frontend/src/components/dataflow/midasconversion.jsx - Command Feedback
gss-frontend/src/components/spec/CommandFeedback.jsx
Livestream Control
- Stream Overlay
gss-frontend/src/components/streamoverlay/OverlayController.jsx - Overlay Countdown
gss-frontend/src/components/streamoverlay/CountdownTimer.jsx - Stream Control Panel
gss-frontend/src/components/streamcontrol/StreamControlPanel.jsx - OBS Service
gss-frontend/src/services/obsService.js - Stream Format Loader
gss-frontend/src/services/streamFormatLoader.js
Backend Services
- Backend Entry
gss-backend/main.py - MQTT Relay
gss-backend/util/relay_mqtt.py - Video Service
gss-video/main.py
Other components
- Operator
- MQTT Broker
- OBS
Connections 24
- Operator → Frontend App: uses
gss-frontend/src/app.jsx - Frontend App → Telemetry Provider: provides context
gss-frontend/src/app.jsx - Frontend App → Telemetry Views: routes to
gss-frontend/src/app.jsx - Frontend App → Map View: routes to
gss-frontend/src/app.jsx - Frontend App → System Health: routes to
gss-frontend/src/app.jsx - Frontend App → Commanding View: routes to
gss-frontend/src/app.jsx - Frontend App → Settings View: routes to
gss-frontend/src/app.jsx - Frontend App → Stream Overlay: routes to
gss-frontend/src/app.jsx - Map View → Telemetry Provider: reads telemetry
gss-frontend/src/components/views/MapView.jsx - System Health → Telemetry Provider: reads telemetry
gss-frontend/src/components/views/SystemHealthView.jsx - Commanding View → Telemetry Provider: reads and sends
gss-frontend/src/components/views/CommandingView.jsx - Commanding View → Command Feedback: requests feedback
gss-frontend/src/components/views/CommandingView.jsx - Telemetry Provider → Data Settings: reads settings
gss-frontend/src/components/dataflow/gssdata.jsx - Telemetry Provider → Event Sequencer: updates events
gss-frontend/src/components/dataflow/gssdata.jsx - Stream Overlay → Telemetry Provider: reads telemetry
gss-frontend/src/components/streamoverlay/OverlayController.jsx - Stream Overlay → Overlay Countdown: renders
gss-frontend/src/components/streamoverlay/OverlayController.jsx - Stream Overlay → MIDAS Conversion: uses conversion
gss-frontend/src/components/streamoverlay/OverlayController.jsx - Stream Control Panel → Telemetry Provider: reads and syncs
gss-frontend/src/components/streamcontrol/StreamControlPanel.jsx - Stream Control Panel → OBS Service: controls
gss-frontend/src/components/streamcontrol/StreamControlPanel.jsx - Stream Control Panel → Stream Format Loader: loads presets
- OBS Service → OBS: connects and calls
gss-frontend/src/services/obsService.js - Backend Entry → MQTT Relay: imports
gss-backend/main.py - Telemetry Provider → MQTT Broker: exchanges packets
- MQTT Relay → MQTT Broker: relays packets