百科.dev
全部条目AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
S

SatDump

> 开发工具
开源

一种通用的卫星数据处理软件。

2.1K stars0 点赞0 次浏览
访问官网GitHub

工具介绍

一种通用的卫星数据处理软件。

SatDump

A generic satellite data processing software. Thanks Crosswalkersam for the icon!

There now also is a Matrix room if you want to chat! Otherwise, a Discord bridge to the Matrix is also available.

Introduction

Note : This is a very basic "how-to" skipping details and assuming some knowledge of what you are doing. For more details and advanced use cases, please see the detailed documentation.

GUI Version

Processing recorded data

Quick-Start :

  • Open the processing menu by selecting File > Processing
  • Select the appropriate pipeline
  • Select the input file (baseband, frames, soft symbols...)
  • Set the appropriate input level (what type your input file is)
  • Check settings shown below are right (such as sample rate)
  • Press "Start"!

SatDump (1.0) demodulating a DVB-S2 baseband

Live processing or recording (directly from your SDR)

Quick-Start :

  • Add a recorder by selecting Add > Recorder
  • Select and start your SDR Device
  • Choose a pipeline
  • Start it, and done!

SatDump tuned to 103 MHz using a HydraSDR

CLI Version

Offline processing

Usage : satdump pipeline [pipeline_id] [input_level] [input_file] [output_file_or_directory] [additional options as required]
Extra options can be found by adding --help to the end of the command 
Sample command :
satdump pipeline metop_ahrpt baseband /home/user/metop_baseband.cs16 metop_output_directory --samplerate 6e6 --baseband_format cs16

You can find a list of Satellite pipelines and their parameters Here.

Live processing

Usage : satdump legacy live [pipeline_id] [output_file_or_directory] [additional options as required]
Extra options (examples. Any parameter used in modules or sources can be used here) :
  --samplerate [baseband_samplerate] --baseband_format [cf32/cs32/cs16/cs8/w8] --dc_block --iq_swap
  --source [airspy/rtlsdr/etc] --gain 20 --bias
As well as --timeout in seconds
Sample command :
satdump legacy live metop_ahrpt metop_output_directory --source airspy --samplerate 6e6 --frequency 1701.3e6 --general_gain 18 --bias --timeout 780

You can find a list of all SDR Options Here. Run satdump sdr_probe to get a list of available SDRs and their IDs.

Recording

Usage : satdump legacy record [output_baseband (without extension!)] [additional options as required]
Extra options (examples. Any parameter used in sources can be used here) :
  --samplerate [baseband_samplerate] --baseband_format [cf32/cs32/cs16/cs8/cu8/w16] --dc_block --iq_swap
  --source [airspy/rtlsdr/etc] --gain 20 --bias
As well as --timeout in seconds
Sample command :
satdump legacy record baseband_name --source airspy --samplerate 6e6 --frequency 1701.3e6 --general_gain 18 --bias --timeout 780 --baseband_format cf32

Building / Installing

Windows

The fastest way to get started is to head over to the Releases page, where you can download SatDump's installer or portable app - no compilation necessary.

Our builds are made with Visual Studio 2019 for x64, so the appropriate Visual C++ Runtime will be required (though, likely to be already installed). You can get it here. Once downloaded, run either satdump-ui.exe or satdump.exe (CLI) to get started!

For compilation information, see the dedicated documentation here. Note : Mingw builds are NOT supported, VOLK will not work.

macOS

Dependency-free macOS builds are provided on the releases page.

General build instructions (Homebrew is required!)

…

Linux

On Linux, building from source is recommended, but builds are provided for x64-based Ubuntu distributions. Here are some build instructions for common distros.


Install Dependencies - Debian, Ubuntu, and other Debian-based distros
…
Install Dependencies - Red-Hat-based systems
…
Install Dependencies - Alpine-based systems
…
Install Dependencies - Gentoo
…
Install Dependencies - openSUSE
…

If nng is not available for your distro, you will have to build it from source

git clone https://github.com/nanomsg/nng.git -b v1.9.0
cd nng
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX=/usr ..
make -j4
sudo make install
cd ../..
rm -rf nng

Build SatDump

git clone https://github.com/SatDump/SatDump.git
cd SatDump
mkdir build && cd build
# If you do not want to build the GUI Version, add -DBUILD_GUI=OFF to the command
# If you want to disable some SDRs, you can add -DPLUGIN_HACKRF_SDR_SUPPORT=OFF or similar
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr ..
make -j`nproc`

# To run without installing
ln -s ../resources .        # Symlink resources so it can run
ln -s ../satdump_cfg.json . # Symlink settings so it can run

# To install system-wide
sudo make install

# Run (if you want!)
./satdump-ui

Raspberry Pi

In case you are using RPi3 (any revision) and older, run make -j1 instead of make -j`nproc` otherwise the system will crash.

Android

On Android, the preferred source is F-Droid.

If this is not an option for you, APKs are also available on the Release page.

Do keep in mind that while pretty much all features perfectly function on Android, there may be some limitations (either due to the hardware) in some places. For example, not all SDR Devices can be used. Supported SDR devices are :

  • RTL-SDR
  • Airspy
  • AirspyHF
  • LimeSDR Mini
  • HackRF

Docker

Building and running under docker is a nice way to separate the build environment and libraries from the host OS. The build process is a multistage build that uses two images, one with the -dev packages and another for the runtime. This means that the runtime image can be kept smaller, although the disk space is still needed to complete the build.

To match the system user for the shared files get the same owner, set these in .env before building the image. The user inside the container will always be named satdump, but the uid and gid will match the system user.

# set the current uid and gid 
printf "HOST_UID: $(id -u)\nHOST_GID: $(id -g)\n" > .env

# create the shared directory
mkdir -p srv

# Build the images with compose, 8 parallel
docker compose build --build-arg CMAKE_BUILD_PARALLEL_LEVEL=8

# Launch a shell inside the container/service
docker compose run --rm -it satdump

The command that is started inside the container can either be specified at the end on the commandline mentioned above, or put in the .env with for example COMMAND: satdump_sdr_server. If you want to run the sdr server in the background and have it start automatically on boot, simply launch the container with docker compose up -d and check the logs with docker compose logs -f

X11 under docker

To use the satdump-ui under docker you need to make a few changes. It is possible to run this on WSL2 as well, change the source to /run/desktop/mnt/host/wslg/.X11-unix instead. In the docker-compose.yml you need to uncomment a few lines and make it looks like this:

      - type: 'bind'
        source: '/tmp/.X11-unix'
        target: '/tmp/.X11-unix'

If the user in the container is not authorized for X11, you will probably get this error message: Authorization required, ... This is due to the ACL controlling access to your screen. There's several ways to solve this, a few very broad and insecure, but the following should be acceptable on a non-shared system.

On the host, run: xhost +local:docker , then to start the ui: docker compose run --rm -it satdump satdump-ui

GitHub Issues· 0 开放

在 GitHub 查看全部

暂无开放 Issues,或尚未同步最近议题。

核心特点

  • •Open the processing menu by selecting File > Processing
  • •Select the appropriate pipeline
  • •Select the input file (baseband, frames, soft symbols...)
  • •Set the appropriate input level (what type your input file is)
  • •Check settings shown below are right (such as sample rate)
  • •Press "Start"!
  • •Add a recorder by selecting Add > Recorder
  • •Select and start your SDR Device
  • •Choose a pipeline
  • •Start it, and done!

> 标签

C++basebandccsdsdigital-signal-processingsatellite

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类开发工具
定价开源

> 相关工具

V
VS Code
流行的开源代码编辑器
G
Git
分布式版本控制系统
V
Vite
下一代前端构建工具