Repolode
sgoudelis

sgoudelis/ground-station

Browser-based ground station app for tracking satellites and celestial bodies, controlling SDR and rig hardware, and decoding radio telemetry.

Stars
4,851
Forks
844
Open issues
10
Last commit
8 hours ago

What is it?

Ground Station is a self-hosted web application for amateur radio operators and satellite enthusiasts. It combines orbit visualization and multi-target tracking with SDR reception, waterfall analysis, and packet and telemetry decoding in one browser interface. Satellite positions are computed with Skyfield and SGP4 from orbital elements, and solar-system and deep-space targets use NASA/JPL Horizons vectors.

The backend is built on FastAPI with Socket.IO, and the frontend uses React, Redux Toolkit and Material-UI. Workers handle IQ acquisition, FFT processing, demodulation, recording to SigMF, and decoding. Supported hardware includes RTL-SDR, SoapySDR devices, UHD/USRP, and a virtual SigMF playback device. Antenna rotators and Hamlib-compatible rigs can be driven during tracking, with Doppler correction for rig tuning.

Scheduled observations use APScheduler to start and stop tracking, recording, decoding and transcription at satellite AOS and LOS. The project ships as a Docker image with multi-architecture builds.

Key features

  • 01Real-time orbit tracking using Skyfield and SGP4 with TLE data from CelesTrak and SatNOGS
  • 02Multi-target tracker instances with rotator control and Doppler-corrected rig tuning
  • 03Waterfall display with multiple VFOs and SigMF IQ recording and playback
  • 04Decoders for SSTV, APRS, and GMSK/FSK/BPSK signals, plus SatDump post-processing
  • 05Scheduled observations that automate passes from AOS to LOS
  • 06Transcription via Gemini Live, Deepgram, or Parakeet with optional translation

Use cases

  • Receiving and decoding weather satellite images or APRS packets from a home station
  • Automatically recording satellite passes with an SDR and rotator while you are away
  • Tracking the ISS or planetary and deep-space mission targets from a browser dashboard
  • Replaying recorded IQ captures through the same decoding pipeline used for live reception

Things to know

  • Licensed under GPL-3.0, a copyleft license that requires derivative works to be distributed under the same terms.
  • Full functionality, including live reception, needs compatible SDR hardware, and rotator or rig control needs matching equipment.

Topics

FAQ

What is ground-station?
Browser-based ground station app for tracking satellites and celestial bodies, controlling SDR and rig hardware, and decoding radio telemetry. Ground Station is a self-hosted web application for amateur radio operators and satellite enthusiasts. It combines orbit visualization and multi-target tracking with SDR reception, waterfall analysis, and packet and telemetry decoding in one browser interface. Satellite positions are computed with Skyfield and SGP4 from orbital elements, and solar-system and deep-space targets use NASA/JPL Horizons vectors.
Is ground-station free to use? What license does it have?
ground-station is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
Is ground-station still maintained?
Actively maintained. The last commit to ground-station was on Oct 20, 2026.
What can I use ground-station for?
Receiving and decoding weather satellite images or APRS packets from a home station Automatically recording satellite passes with an SDR and rotator while you are away Tracking the ISS or planetary and deep-space mission targets from a browser dashboard Replaying recorded IQ captures through the same decoding pipeline used for live reception
Where can I get ground-station?
The source code and installation instructions are on GitHub: https://github.com/sgoudelis/ground-station

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects