Using PCMCAT to stream to the websdr

 

You don’t need GNUradio to stream to the WebSDR.

KA9Q has a module called PCMCAT to acquire the multicast I/Q streams.

See also the Utah page:

https://www.sdrutah.org/info/using_ka9q_radio_with_websdr.html

The script PCMwebsdrstart.sh is used to start the WebSDR when using PCMCAT:

 

<script PCMwebsdrstart.sh>

 

#!/bin/bash


# set network socket buffer default size temporarily
sudo sysctl -w net.core.rmem_default=100000

# set fixedn: add in /etc/sysctl.conf
#net.core.rmem_default=100000

 

sudo modprobe snd-fastloop

echo ""
echo ""
echo "***************************************************************************************************************"
echo " "
#echo "set all cores on performance"
#sudo bash -c 'for i in {0..11}; do cpufreq-set -c $i -g performance; done'
#echo "all cores on performance"
echo " "

echo "starting websdr-low"
cd ~/Maasbree_RX888_Low/dist11/
screen -dmS websdr-low ./websdr64 &
echo "websdr-low running"
echo " "

echo "starting websdr-high"
cd ~/Maasbree_RX888_High/dist11/
screen -dmS websdr-high ./websdr64 &
echo "websdr-high running"
echo " "

echo "starting pcm script"

# Loop channel fl1

loopch=fl100
ssrc=1895
sr=192000
pcmdata="160m-websdr192-pcm.local"
pcmcat $pcmdata -s $ssrc | /home/mis0ap/fplay-source/fplay/fplay -D hw:fl1,0,0 -r $sr -c 2 -f s16_le --disable-softvol -B 100000 & ###< /dev/null 2>> $logfile\rx$loopch &
sleep 3

loopch=fl101
ssrc=3660
sr=384000
#pcmdata="Loek-pcm.local"
#pcmdata="80m-websdr384-pcm.local"
pcmdata="tachtig-websdr384-pcm.local"
pcmcat $pcmdata -s $ssrc | /home/mis0ap/fplay-source/fplay/fplay -D hw:fl1,0,1 -r $sr -c 2 -f s16_le --disable-softvol -B 100000 & ###< /dev/null 2>> $logfile\rx$loopch &
sleep 3

loopch=fl102
ssrc=5373
sr=192000
pcmdata="60m-websdr192-pcm.local"
pcmcat $pcmdata -s $ssrc | /home/mis0ap/fplay-source/fplay/fplay -D hw:fl1,0,2 -r $sr -c 2 -f s16_le --disable-softvol -B 100000 & ###< /dev/null 2>> $logfile\rx$loopch &
sleep 1

loopch=fl103
ssrc=7100
sr=384000
pcmdata="40m-websdr384-pcm.local"
pcmcat $pcmdata -s $ssrc | /home/mis0ap/fplay-source/fplay/fplay -D hw:fl1,0,3 -r $sr -c 2 -f s16_le --disable-softvol -B 100000 & ###< /dev/null 2>> $logfile\rx$loopch &
sleep 1

loopch=fl104
ssrc=10150
sr=192000
pcmdata="30m-websdr192-pcm.local"
pcmcat $pcmdata -s $ssrc | /home/mis0ap/fplay-source/fplay/fplay -D hw:fl1,0,4 -r $sr -c 2 -f s16_le --disable-softvol -B 100000 & ###< /dev/null 2>> $logfile\rx$loopch &
sleep 1

loopch=fl105
ssrc=14175
sr=384000
pcmdata="20m-websdr384-pcm.local"
pcmcat $pcmdata -s $ssrc | /home/mis0ap/fplay-source/fplay/fplay -D hw:fl1,0,5 -r $sr -c 2 -f s16_le --disable-softvol -B 100000 & ###< /dev/null 2>> $logfile\rx$loopch &
sleep 1

loopch=fl106
ssrc=18118
sr=192000
pcmdata="17m-websdr192-pcm.local"
pcmcat $pcmdata -s $ssrc | /home/mis0ap/fplay-source/fplay/fplay -D hw:fl1,0,6 -r $sr -c 2 -f s16_le --disable-softvol -B 100000 & ###< /dev/null 2>> $logfile\rx$loopch &
sleep 1

loopch=fl107
ssrc=21225
sr=768000
pcmdata="15m-websdr768-pcm.local"
pcmcat $pcmdata -s $ssrc | /home/mis0ap/fplay-source/fplay/fplay -D hw:fl1,0,7 -r $sr -c 2 -f s16_le --disable-softvol -B 100000 & ###< /dev/null 2>> $logfile\rx$loopch &
sleep 1

# loop channel fl2

loopch=fl200
ssrc=7100
sr=384000
pcmdata="40m-websdr384-pcm.local"
pcmcat $pcmdata -s $ssrc | /home/mis0ap/fplay-source/fplay/fplay -D hw:fl2,0,0 -r $sr -c 2 -f s16_le --disable-softvol -B 100000 & ###< /dev/null 2>> $logfile\rx$loopch &
sleep 1

loopch=fl201
ssrc=10150
sr=192000
pcmdata="30m-websdr192-pcm.local"
pcmcat $pcmdata -s $ssrc | /home/mis0ap/fplay-source/fplay/fplay -D hw:fl2,0,1 -r $sr -c 2 -f s16_le --disable-softvol -B 100000 & ###< /dev/null 2>> $logfile\rx$loopch &
sleep 1

loopch=fl202
ssrc=14175
sr=384000
pcmdata="20m-websdr384-pcm.local"
pcmcat $pcmdata -s $ssrc | /home/mis0ap/fplay-source/fplay/fplay -D hw:fl2,0,2 -r $sr -c 2 -f s16_le --disable-softvol -B 100000 & ###< /dev/null 2>> $logfile\rx$loopch &
sleep 1

loopch=fl203
ssrc=18118
sr=192000
pcmdata="17m-websdr192-pcm.local"
pcmcat $pcmdata -s $ssrc | /home/mis0ap/fplay-source/fplay/fplay -D hw:fl2,0,3 -r $sr -c 2 -f s16_le --disable-softvol -B 100000 & ###< /dev/null 2>> $logfile\rx$loopch &
sleep 1

loopch=fl204
ssrc=21225
sr=768000
pcmdata="15m-websdr768-pcm.local"
pcmcat $pcmdata -s $ssrc | /home/mis0ap/fplay-source/fplay/fplay -D hw:fl2,0,4 -r $sr -c 2 -f s16_le --disable-softvol -B 100000 & ###< /dev/null 2>> $logfile\rx$loopch &
sleep 1

loopch=fl205
ssrc=24940
sr=192000
pcmdata="12m-websdr192-pcm.local"
pcmcat $pcmdata -s $ssrc | /home/mis0ap/fplay-source/fplay/fplay -D hw:fl2,0,5 -r $sr -c 2 -f s16_le --disable-softvol -B 100000 & ###< /dev/null 2>> $logfile\rx$loopch &
sleep 1

loopch=fl206
ssrc=28350
sr=768000
pcmdata="10m-Low-websdr768-pcm.local"
pcmcat $pcmdata -s $ssrc | /home/mis0ap/fplay-source/fplay/fplay -D hw:fl2,0,6 -r $sr -c 2 -f s16_le --disable-softvol -B 100000 & ###< /dev/null 2>> $logfile\rx$loopch &
sleep 1

loopch=fl207
ssrc=29100
sr=768000
pcmdata="10m-High-websdr768-pcm.local"
pcmcat $pcmdata -s $ssrc | /home/mis0ap/fplay-source/fplay/fplay -D hw:fl2,0,7 -r $sr -c 2 -f s16_le --disable-softvol -B 100000 & ###< /dev/null 2>> $logfile\rx$loopch &
sleep 1


#echo "starting websdr-low"
#cd ~/Maasbree_RX888_Low/dist11/
#screen -dmS websdr-low ./websdr64 &
#echo "websdr-low running"
#echo " "

#echo "starting websdr-high"
#cd ~/Maasbree_RX888_High/dist11/
#screen -dmS websdr-high ./websdr64 &
#echo "websdr-high running"
#echo " "

echo "starting pcm script"


echo "pcmscript started"
sleep 5
echo " "
#echo "starting Wsprdaemon"
#cd ~/wsprdaemon
#./wsprdaemon.sh -a
#echo "wsprdaemon started"

exit

 

 

go to GNU model with noise blanker