-
-
Notifications
You must be signed in to change notification settings - Fork 29
sdr server
sdr-server is a high performant TCP server for rtl-sdr. It allows running multiple observations at the same time. With sdr-server it is possible to increase base station utilisation significantly. Prerequisites:
- omni-directional antenna
- rtl-sdr
sudo apt-get update
sudo apt-get install sdr-server
Configuration is manual. Edit it at: ~/.r2cloud and add/change the following line:
satellites.sdr=sdrserver
Other parameters are:
sdr.devices=0
sdr.device.0.minFrequency=100000000
sdr.device.0.maxFrequency=1700000000
sdr.device.0.ppm=0
sdr.device.0.sdrserver.host=127.0.0.1
sdr.device.0.sdrserver.port=8090
#sdr.device.0.sdrserver.basepath=/tmp
sdr.device.0.sdrserver.usegzip=false
sdr.device.0.sdrserver.timeout=10000
sdr.device.0.rotctrld.hostname=127.0.0.1
sdr.device.0.rotctrld.port=4533
sdr.device.0.rotctrld.timeout=10000
sdr.device.0.rotator.tolerance=5
sdr.device.0.rotator.cycleMillis=1000
sdr.device.0.rotator.enabled=false
Switch unix user from root to pi for sdr-server service:
sudo systemctl edit sdr-server
Add the following lines:
[Service]
User=pi
Group=pi
Make sure sdr-server is running:
sudo systemctl status sdr-server
Restart r2cloud to pick-up new settings:
sudo systemctl restart r2cloud
AAUSAT-4 and BUGSAT-1 transmitting on the very close frequencies at the same time:
Both satellites decoded:
sdr-server can be executed on RaspberryPI. However setup might require additional tuning.
sdr-server is sensitive to CPU usage. If some other process started consuming a lot of CPU, then sdr-server can drop some samples. By default sdr-server can store 4 seconds of data in the internal buffers. There are several options to address that:
- increase
queue_size
parameter to 128 or 200 - run sdr-server on a dedicated core.
SD card can be slow and block writing data for 4 seconds. This would trigger queue is full
message in the logs. To address that:
- Buy faster SD Card
- Uninstall or disable applications that write to SD card a lot. You can find top I/O processes using the command:
sudo iotop
- Use external SSD disk for observations and tmp directories