who need this tutorial? for those who are dizzy, confused, or desperate about how to install and run the latest version of SatNOGS ground station on a Raspberry Pi
minimum setup
- rtl-sdr
- raspberry pi 3/4.
- internet over lan cable
I recommend Raspberry Pi OS Lite (bookworm version), because trixie not supported yet by satnogs
extract and flash to memory card (cautious: change /dev/sdx with your sd card location. you can use sudo fdisk -l command for make sure)
sudo dd if=2025-05-13-raspios-bookworm-arm64-lite.img of=/dev/sdx bs=1M conv=fsync status=progress
or or for hassle free you can use raspberry pi imager
SDR setup
login to raspberry console
sudo nano /etc/modprobe.d/blacklist-sdr.conf
copy paste this
blacklist rtl2832_sdr
blacklist dvb_usb_rtl28xxu
blacklist rtl2832
blacklist airspy
blacklist hackrf
blacklist msi001
blacklist msi2500
save with ctrl+x
restart raspberrypi
sudo reboot
Install docker
sudo apt update
sudo apt install docker-compose
create station directory.
adjust the directory name, according to your station name.
mkdir ~/station4365
cd ~/station4365
nano docker-compose.yml
copy paste this
version: '3.8'
services:
rigctld:
image: librespace/hamlib:latest
user: '999'
read_only: true
environment:
MODEL: '1'
PORT: '4532'
restart: 'unless-stopped'
command: 'rigctld'
satnogs_client:
image: librespace/satnogs-client:master-unstable
user: '500'
read_only: true
init: true
env_file:
- ./station.env
environment:
SATNOGS_RIG_IP: 'rigctld'
SATNOGS_RIG_PORT: '4532'
command: 'satnogs-client'
device_cgroup_rules:
- 'c 189:* rwm'
devices:
- '/dev/bus/usb'
volumes:
- type: 'tmpfs'
target: '/tmp'
- type: 'volume'
source: 'satnogs-client-latest'
target: '/var/lib/satnogs-client'
restart: 'unless-stopped'
stop_grace_period: 1s
volumes:
satnogs-client-latest:
nano station.env
copy paste this
SATNOGS_API_TOKEN=xxx
SATNOGS_ARTIFACTS_API_TOKEN=xxx
SATNOGS_STATION_ELEV=0
SATNOGS_STATION_ID=xxx
SATNOGS_STATION_LAT=xxx
SATNOGS_STATION_LON=xxx
SATNOGS_ARTIFACTS_ENABLED=True
SATNOGS_SOAPY_RX_DEVICE=driver=rtlsdr
SATNOGS_ANTENNA=RX
SATNOGS_LOG_LEVEL=DEBUG
#SATNOGS_LOG_LEVEL=INFO
SATNOGS_RX_SAMP_RATE=2.048e6
#Supported gain values: 0.0 0.9 1.4 2.7 3.7 7.7 8.7 12.5 14.4 15.7 16.6 19.7 20.7 22.9 25.4 28.0 29.7 32.8 33.8 36.4 37.2 38.6 40.2 42.1 43.4 43.9 44.5 48.0 49.6
SATNOGS_RF_GAIN=15.7
SATNOGS_PPM_ERROR=0
GR_SATELLITES_ENABLED=true
GR_SATELLITES_APP=gr_satellites
GR_SATELLITES_KEEPLOGS=true
UDP_DUMP_HOST=0.0.0.0
please change xxx value with your satnogs account.
API_TOKEN get here (API KEY):
ARTIFACTS_API_TOKEN get here
STATION_ID
![]()
you get after click and complete
![]()
run satnogs-client docker:
cd ~/station4365
sudo docker-compose down && sudo docker-compose up -d
open your browser, and check your satnogs dashboard
it should be green or orange label (testing mode)
![]()
troubleshoot:
check the log:
cd ~/station4365
sudo docker-compose logs -f
check the sdr:
cd ~/station4365
sudo docker-compose exec satnogs_client SoapySDRUtil --probe
please
if it work for you. thank you!

