Technical information 70cm band with satellite tracking

 

The general setup is more or less a copy of the 2m websdr, but there are of course differences. Antenna, cable, filter, SDRPlay1a receiver, computer, internet. But there is a lot to say about the differences.

 

Antenna 

The 70cm band is cut into two parts, low and high. Low is covering 430-435 MHz, high is covering 436-440 MHz. Every part has his own receiver, and his own antenna.

The low has a Diamond vertical antenna, chosen for the standard QSO's in FM. The high however is especially configured for receiving satellites. It has a home made QFH antenna with a ball form rx/tx profile and a rotating polarization. This is ideal for satellites. Because the antenna has a low gain, we added a 1dB noise figure, 10dB gain preamp just behind the antenna.

Both antennas have appr 15m very high quality coax cable going to the receivers. The QFH antenna has a bias-t at the end of the cable, followed by a home made 7-pole band filter.  

 

receivers

Both receivers are sdrplay1a's. The radios are managed by radiod software from ka9q.

The config files are located in /etc/radio:

- radiod@sdrplay-5channel-laag.conf
#Config file for radiod
#PE0MJX April 2026
#70cm websdr 430-435 MHz, "laag"
#5 banden van 1 MHz

#############################################

[global]
hardware = sdrplay-1
status = uhflaag.local
samprate = 6000000
mode = iq
ttl = 0
fft-threads = 1
overlap = 5
verbose = 1
iface = lo


#############################################

[sdrplay-1]
device = "sdrplay"
description = "SDRPlay-rsp1a"
serial = 220500F498
samprate = 6000000
lna-state = 0
if-gr = 47
if-agc = 0
frequency = 432500000


#############################################

[band1]
disable = no
data = band1-pcm.local
samprate = 1536000
low = -750000
high = 750000
freq = 430500000
agc = no
gain = -27 #dB

#############################################

[band2]
disable = no
data = band2-pcm.local
samprate = 1536000
low = -750000
high = 750000
freq = 431500000
agc = no
gain = -27 #dB

#############################################

[band3]
disable = no
data = band3-pcm.local
samprate = 1536000
low = -750000
high = 750000
freq = 432500000
agc = no
gain = -27 #dB

#############################################

[band4]
disable = no
data = band4-pcm.local
samprate = 1536000
low = -750000
high = 750000
freq = 433500000
agc = no
gain = -27 #dB

#############################################

[band5]
disable = no
data = band5-pcm.local
samprate = 1536000
low = -750000
high = 750000
freq = 434500000
agc = no
gain = -27 #dB

#############################################

#[band6]
#disable = no
#data = band6-pcm.local
#samprate = 1536000
#low = -700000
#high = 700000
#freq = 437800000
#agc = no
#gain = -36 #dB

#############################################

#[band7]
#disable = no
#data = band7-pcm.local
#samprate = 1536000
#low = -700000
#high = 700000
#freq = 439200000
#agc = no
#gain = -36 #dB

#############################################

 

#############################################
# #
# END OF DEFINITIONS OF CHANNELS #
# #
#############################################

- radiod@sdrplay-5channel-hoog.conf

#Config file for radiod
#PE0MJX April 2026
#70cm websdr 435-440 MHz, "hoog"
#5 banden van 1MHz

#############################################

[global]
hardware = sdrplay-2
status = uhfhoog.local
samprate = 6000000
mode = iq
ttl = 0
fft-threads = 1
overlap = 5
verbose = 1
iface = lo


#############################################

[sdrplay-2]
device = "sdrplay"
description = "SDRPlay-rsp1a"
#serial = 170401EA20
serial = 20060ACD97
samprate = 6000000
lna-state = 0
if-gr = 47
if-agc = 0
frequency = 437500000


#############################################

[band6]
disable = no
data = band6-pcm.local
samprate = 1536000
low = -750000
high = 750000
freq = 435500000
agc = no
gain = -34 #dB -27 naar -34 met preamp

#############################################

[band7]
disable = no
data = band7-pcm.local
samprate = 1536000
low = -750000
high = 750000
freq = 436500000
agc = no
gain = -34 #dB -27 naar -34 met preamp

#############################################

[band8]
disable = no
data = band8-pcm.local
samprate = 1536000
low = -750000
high = 750000
freq = 437500000
agc = no
gain = -34 #dB -27 naar -34 met preamp

#############################################

[band9]
disable = no
data = band9-pcm.local
samprate = 1536000
low = -750000
high = 750000
freq = 438500000
agc = no
gain = -34 #dB -27 naar -34 met preamp

#############################################

[band10]
disable = no
data = band10-pcm.local
samprate = 1536000
low = -750000
high = 750000
freq = 439500000
agc = no
gain = -34 #dB -27 naar -34 met preamp


#############################################
# #
# END OF DEFINITIONS OF CHANNELS #
# #
#############################################

As you can see all bands use a sample rate of 153600 s/s, and cover 1MHz bands with overlap.

 

Computer

We work with NUC computers, and the 70cm websdr has a i5 Intel NUC with 256MB of RAM and 512GB of SSD. It works with very low latency and power consumption.

 

GNU-radio

Install gnuradio.

To get the data from the multicast streams (created by radiod), we use gnu-radio. It picks up the streams, and sends it to a fifo.

The websdr software picks the data from the fifo's, and processes it for the web.

For this to work correctly you additionally need to clone the gr-rtp directory from

https://github.com/fventuri/gr-rtp

into your code and compile it. This GNU "block" gets the data from the multicast streams and delivers it to the fifo.

An example of the first channel is given here:

The file is uploaded as a txt file. change the suffix into grc and you can open it in GNUradio companion.

 

Low Band 1 Txt

Plain text – 2,7 KB 2 downloads

 

 

Fifo's

Apparently fifo's are very well suited as an intermediate between GNUradio and the websdr software (from Pieter-Tjerk de Boer). Create a dir in /home/<user> called FIFOS and put all the ten fifo's in that dir.

 

websdr.cfg files

The websdr software needs two config files (for low and for high).For low:

# Maasbree websdr op 70cm
# 430-435 MHz "laag"

maxusers 100
tcpport 8908
dotrustlocalnet
logfileinterval 0
slowdownusers 60
slowdownusers2 80
idletimeout 172800
fftplaneffort 1
waterfallformat 9
audioformat 0
noorgserver

hostname sdr.websdrmaasbree.nl

org qth JO31AI
org description 70cm band WebSDR Maasbree Netherlands (low)
org logo favicon_70cm.ico
org email websdr-maasbree@ziggo.nl

initial 433600 FM

#######################################################
# 70cm RSP1a band laag 1
#######################################################
band 430.5
device /home/loek/FIFOS/fifo70laag1
samplerate 1536000
centerfreq 430500
gain -17
antenna VerticalDiamant300
swapiq
allowwide
extrazoom 1
#noiseblanker 30
#hpf 100

#######################################################
# 70cm RSP1a band laag 2
#######################################################
band 431.5
device /home/loek/FIFOS/fifo70laag2
samplerate 1536000
centerfreq 431500
gain -17
antenna VerticalDiamant300
swapiq
allowwide
extrazoom 1
#noiseblanker 30
#hpf 100


#######################################################
# 70cm RSP1a band laag 3
#######################################################
band 432.5
device /home/loek/FIFOS/fifo70laag3
samplerate 1536000
centerfreq 432500
gain -17
antenna VerticalDiamant300
swapiq
allowwide
extrazoom 1
#noiseblanker 30
#hpf 100


#######################################################
# 70cm RSP1a band laag 4
#######################################################
band 433.5
device /home/loek/FIFOS/fifo70laag4
samplerate 1536000
centerfreq 433500
gain -17
antenna VerticalDiamant300
swapiq
allowwide
extrazoom 1
#noiseblanker 30
#hpf 100


#######################################################
# 70cm RSP1a band laag 5
#######################################################
band 434.5
device /home/loek/FIFOS/fifo70laag5
samplerate 1536000
centerfreq 434500
gain -17
antenna VerticalDiamant300
swapiq
allowwide
extrazoom 1
#noiseblanker 30
#hpf 100


#######################################################

For high:

# Maasbree websdr op 70cm
# 435-440 MHz "hoog"

maxusers 100
tcpport 8909
dotrustlocalnet
logfileinterval 0
slowdownusers 80
slowdownusers2 60
idletimeout 172800
fftplaneffort 1
waterfallformat 9
audioformat 0
noorgserver

hostname sdr.websdrmaasbree.nl

org qth JO31AI
org description 70cm band WebSDR Maasbree Netherlands (high) with satellite tracker
org logo favicon_70cm.ico
org email websdr-maasbree@ziggo.nl

initial 437400 FM

#######################################################
# 70cm RSP1a band hoog 6
#######################################################
band 435.5
device /home/loek/FIFOS/fifo70hoog6
samplerate 1536000
centerfreq 435500
gain -17
antenna Home made QFH antenna
swapiq
allowwide
extrazoom 1
#noiseblanker 30
#hpf 100

#######################################################
# 70cm RSP1a band hoog 7
#######################################################
band 436.5
device /home/loek/FIFOS/fifo70hoog7
samplerate 1536000
centerfreq 436500
gain -17
antenna Home made QFH antenna
swapiq
allowwide
extrazoom 1
#noiseblanker 30
#hpf 100


#######################################################
# 70cm RSP1a band hoog 8
#######################################################
band 437.5
device /home/loek/FIFOS/fifo70hoog8
samplerate 1536000
centerfreq 437500
gain -17
antenna Home made QFH antenna
swapiq
allowwide
extrazoom 1
#noiseblanker 30
#hpf 100


#######################################################
# 70cm RSP1a band hoog 9
#######################################################
band 438.5
device /home/loek/FIFOS/fifo70hoog9
samplerate 1536000
centerfreq 438500
gain -17
antenna Home made QFH antenna
swapiq
allowwide
extrazoom 1
#noiseblanker 30
#hpf 100


#######################################################
# 70cm RSP1a band hoog 10
#######################################################
band 439.5
device /home/loek/FIFOS/fifo70hoog10
samplerate 1536000
centerfreq 439500
gain -17
antenna Home made QFH antenna
swapiq
allowwide
extrazoom 1
#noiseblanker 30
#hpf 100


##########################

 

Starting up

For starting the websdr installation, we need to start radiod (to pick up the signals from the sdrpla1a, and create the multicast streams). Also we need to start the gnuradio sw with the 10 transfer jobs (in Python! so you need Python on your computer, and need to compile the .grc files into .py files with F5 in GNU). And finally we need to start the websdr software with the correct websdr.cfg files. All commands are put together in startup scripts. An example of our scrupot for the low band:

#!/bin/bash
# Start script for launching the 70cm in 7 bands bands
# PA0SIM May 2026

# Killall old processes
# Do not use the -s 9 option, because it is a dirty kill. Corruption of data can happen.
# -s 15 is a clean kill

echo "Put all cpu's on performance"
echo performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor

echo start radiod needed only when changing the config file
read -p "Do you wish to (re)start radiod? " yn
case $yn in
[Yy]* )
echo killing old processes needed only when changing the conf file
sudo systemctl disable radiod@sdrplay-5channel-laag
sudo systemctl stop radiod@sdrplay-5channel-laag
#sudo killall -s 15 radiod # stops all radiod processes !!!
sleep 5
echo radiod@radiod@sdrplay-5channel-laag stopped
sudo systemctl start radiod@sdrplay-5channel-laag
#sudo screen -dmS radiod_low taskset -c 0,1 radiod /etc/radio/radiod@sdrplay-5channel-laag.conf &
echo wait 2 seconds
sleep 2
echo radiod low started and ready
;;

[Nn]* ) ;;

* ) echo "Please answer yes or no.";;
esac


sudo killall -s 9 python3
echo all gnuradio processes stopped
sleep 1
sudo killall -s 15 websdr64laag
echo websdr64laag stopped
sleep 1
echo giving extra 5 seconds time to stop all the processes
sleep 5


### websdr start here
echo start websdr laag
cd /home/loek/UHFgnuradio/sdrlaag/dist11/
screen -dmS websdrlaag taskset -c 4 ./websdr64laag &
echo 2 seconds waiting
sleep 2
echo websdr low started

echo start transfer multicast channels to the websdr fifos

echo "starting GNUradio band1"
screen -dmS low_band1_fifo /usr/bin/python3 -u ~/UHFgnuradio/sdrlaag/low_band1.py &
echo "GNUradio started band1"
echo " "
sleep 2

echo "starting GNUradio band2"
screen -dmS low_band2_fifo /usr/bin/python3 -u ~/UHFgnuradio/sdrlaag/low_band2.py &
echo "GNUradio started band2"
echo " "
sleep 2

echo "starting GNUradio band3"
screen -dmS low_band3_fifo /usr/bin/python3 -u ~/UHFgnuradio/sdrlaag/low_band3.py &
echo "GNUradio started band3"
echo " "
sleep 2

echo "starting GNUradio band4"
screen -dmS low_band4_fifo /usr/bin/python3 -u ~/UHFgnuradio/sdrlaag/low_band4.py &
echo "GNUradio started band4"
echo " "
sleep 2

echo "starting GNUradio band5"
screen -dmS low_band5_fifo /usr/bin/python3 -u ~/UHFgnuradio/sdrlaag/low_band5.py &
echo "GNUradio started band5"
echo " "
sleep 2


echo lauch websdr done
echo start clients

exit

 

#############################################################################

Post script:

The information given is for the general understanding of the 70cm websdr. If you have permission of Pieter Tjerk to use his websdr software, and want to build this 70cm websdr for yourself, we can help you to do that. We have detailed installation manuals, and of course a lot of experience with the nitty, gritty, dirty details of the several software packages and the debian13 OS.

We are happy to help you !

 

Satellite tracking

The 70cm upper part, 435-438 MHz, is havily populated with satellite signals. Beacons, FM transponders, even SSB and CW transponders. Much satellites can be worked, and it is FUN !!!!!

PD0JRS developed a satellite tracker as part of the 70cm websdr high (THANKS !!). It creates an additional frame in the User Interface, with all necessary information to receive satellite signals, and track satellites on their freq, including the doppler effect corrections.

A user guide is under development and as soon as it is availble we will give you a link for downloading.

HAVE FUN WITH SATELLITES,.........cq satellite, cq satellite.

Go SPACE,.....