Thursday, April 2, 2026

Setup KA9Q-Radio radiosonde_auto_rx


 Setup KA9Q-Radio + radiosonde_auto_rx (Airspy + Raspberry Pi + Docker)

1. Objektif Setup

Manual ini bertujuan untuk menggunakan KA9Q-Radio sebagai SDR server, memantau band radiosonde (400–406 MHz) secara serentak, dan integrasi dengan radiosonde_auto_rx menggunakan Docker.

Kelebihan:
- Lebih efisien CPU
- Decode banyak sonde serentak
- Sesuai untuk Airspy

2. Keperluan Sistem


Hardware:

- Raspberry Pi 4 / 5
- Airspy R2 / Airspy Mini
- Antena UHF

OS:
- Raspberry Pi OS atau Ubuntu 22.04

3. Install Dependencies

sudo apt update
sudo apt install -y avahi-utils build-essential make gcc libairspy-dev libairspyhf-dev libavahi-client-dev libbsd-dev libfftw3-dev libhackrf-dev libiniparser-dev libncurses5-dev libopus-dev librtlsdr-dev libusb-1.0-0-dev libusb-dev portaudio19-dev libasound2-dev libogg-dev uuid-dev rsync time git libsamplerate-dev

4. Install KA9Q-Radio

git clone https://github.com/ka9q/ka9q-radio.git
cd ka9q-radio
git checkout e1224dcd1991637ba8e1caa68cd802e1b22933de
make
sudo make install

5. Tambah User ke Group radio

sudo usermod -aG radio $(whoami)
reboot

6. Generate FFTW Wisdom

langkah penting untuk optimakan prestasi FFT dalam KA9Q-Radio. proses ini boleh ambil masa berjam-jam, jadi memang sesuai dibuat waktu malam

cd /etc/fftw/
time sudo fftwf-wisdom -v -T 1 -o nwisdom rof500000 cob2400 cob1250 cob1202 cob1200
sudo cp -i nwisdom wisdomf

7. Konfigurasi KA9Q (Airspy)

untuk Airspy R2 / HydraSDR, frekuensi tengah perlu diletakkan sekurang-kurangnya 600 kHz di atas frekuensi tertinggi yang anda mahu pantau. Contoh, kalau mahu liputan 400–406 MHz, set frequency = 407m0. Airspy R2 / HydraSDR boleh beri kira-kira 8 MHz usable bandwidth pada mod real 20 MHz

sudo nano /etc/radio/radiod@airspy-autorx.conf

[global]
hardware = airspy
mode = fm
status = sonde.local
iface = lo
ttl = 0
data = sonde-pcm.local

[airspy]
device = airspy
description = "auto_rx"
frequency = 407m0
gainstep = 17

[telemetry]
freq = "401m50"

[manual-400]
freq = 0
ttl = 0

Airspy Mini secara default beri kira-kira 5 MHz usable bandwidth pada 12 MHz real sample rate. Jadi kalau mahu cover 400–405 MHz, boleh set 405m6. kalau kawasan anda lebih banyak sonde di bahagian atas band, boleh pilih 406m6 untuk liputan 401–406 MHz. 

Airspy Mini juga boleh dipaksa jalan pada 20 MHz dengan buka komen samprate = 20000000, tetapi akan ada lebih banyak spurs pada kadar itu

8. Start Service

sudo systemctl enable radiod@airspy-autorx
sudo systemctl start radiod@airspy-autorx

9. Test KA9Q

control sonde.local

10. Setup Docker radiosonde_auto_rx

sdr_port sebenarnya tidak digunakan oleh KA9Q-Radio, tetapi tetap ada dalam contoh config. Ia juga beri amaran bahawa min_freq dan max_freq mesti berada dalam julat sebenar yang diliputi oleh SDR. Contohnya, Airspy R2 boleh set 400.05 hingga 406.0, tetapi Airspy Mini pada 12 MHz mungkin perlu dikecilkan, misalnya 400.05 hingga 405.0

sudo apt install docker.io -y
mkdir ~/radiosonde_auto_rx
nano ~/radiosonde_auto_rx/station.cfg

[sdr]
sdr_type = KA9Q
sdr_hostname = sonde.local
sdr_port = 5555
sdr_quantity = 10

[search_params]
min_freq = 400.05
max_freq = 406.0

docker run -d --name radiosonde_auto_rx --restart="always" --device=/dev/bus/usb --network=host -v ~/radiosonde_auto_rx/station.cfg:/opt/auto_rx/station.cfg:ro -v ~/radiosonde_auto_rx/log/:/opt/auto_rx/log/ -v /var/run/dbus:/var/run/dbus -v /var/run/avahi-daemon/socket:/var/run/avahi-daemon/socket ghcr.io/projecthorus/radiosonde_auto_rx:latest

Docker ini tidak berfungsi baik di Debian 12 kerana sambungan ke ka9q-server boleh timeout. Ia disahkan berfungsi di Ubuntu 22.04 dan Raspberry Pi OS Bookworm. Jika anda guna Debian 12 dan kerap timeout, sila cuba pemasangan auto_rx secara native

11. Semak Output

docker logs -f radiosonde_auto_rx
http://IP_PI:5000

12. Troubleshooting Ringkas

- dft_detect timeout: kecilkan frequency range atau optimize FFTW
- Tak detect sonde: semak gain dan SDR
- Docker tak connect: pastikan mount DBus & Avahi

13. Ringkasan atau checklist setup

  • Pasang dependency.
  • Clone ka9q-radio.
  • Checkout commit e1224dcd1991637ba8e1caa68cd802e1b22933de.
  • make && sudo make install
  • Tambah user ke group radio.
  • Generate FFTW wisdom ikut jenis SDR.
  • Buat fail config dalam /etc/radio/.
  • Start servis radiod@...
  • Ubah station.cfg kepada sdr_type = KA9Q.
  • Jalankan radiosonde_auto_rx dan pastikan julat frekuensi tidak melebihi bandwidth SDR anda.

  • Setup KA9Q-Radio radiosonde_auto_rx

      Setup KA9Q-Radio + radiosonde_auto_rx  (Airspy + Raspberry Pi + Docker) 1. Objektif Setup Manual ini bertujuan untuk menggunakan KA9Q-Radi...