TUTORIAL HOW RECEIVE SSTV WITH RASPBERRY PI2 AND RTL-SDR V3


On Raspberry PI install Raspian Jessie 


  • Install RTL-SDR drivers
sudo apt-get update
sudo apt-get install libusb-1.0-0-dev git cmake -y
git clone https://github.com/keenerd/rtl-sdr
cd rtl-sdr/
mkdir build
cd build
cmake ../ -DINSTALL_UDEV_RULES=ON
make
sudo make install
sudo cp ../rtl-sdr.rules /etc/udev/rules.d/
sudo ldconfig

echo 'blacklist dvb_usb_rtl28xxu' | sudo tee --append /etc/modprobe.d/blacklist-dvb_usb_rtl28xxu.conf

Now reboot to apply the blacklist, and plug in your RTL-SDR
  •  Install PulseAudio & Mplayer for playing the audio
sudo apt-get install pulseaudio pavucontrol mplayer -y 
  •  Install CSDR
sudo apt-get install libfftw3-dev -y

cd ~
git clone https://github.com/simonyiszk/csdr
cd csdr
make
sudo make install  
  •  Install NCAT for TCP server (Multi channel receiver)
 sudo apt-get install nmap -y
  •  Install QSSTV

 sudo apt-get install qsstv
  • Create virtual audio

 sudo leafpad /etc/pulse/default.pa
 
Add the following lines to the end of the file:


load-module module-null-sink sink_name=Virtual0 
 sink_properties=device.description="Virtual0"
 
Now in a terminal window run the command below to set up an RTL-SDR TCP server with ncat.

rtl_sdr -s 1200000 -f 14230000 -D 2 - | csdr convert_u8_f | ncat -4l 4952 -k --send-only --allow 127.0.0.1 

 In a second terminal window/tab run this command:

ncat -v 127.0.0.1 4952 | csdr shift_addition_cc `python -c "print float(14230000-14230000)/1200000"` | csdr fir_decimate_cc 25 0.05 HAMMING | csdr bandpass_fir_fft_cc 0 0.5 0.05 | csdr realpart_cf | csdr agc_ff | csdr limit_ff | csdr convert_f_s16 | mplayer -nocache -rawaudio samplesize=2:channels=1:rate=48000 -demuxer rawaudio -


Open pavucontrol either by going to the Raspberry Pi Start Menu -> Sound & Video -> PulseAudio Volume control, or by simply typing "pavucontrol" in at the command line. Click on the Playback tab, and set MPlayer to use the "Virtual 0" audio sink.



  •  Setting QSSTV
 You adjust the audio input for a better reception of the image.
You can use this system to receive SSTV from the ISS (International Space Station) 
at 145.800 Mhz.

You must change these values in the terminal:
 
rtl_sdr -s 1200000 -f 145800000 - | csdr convert_u8_f | ncat -4l 4952 -k --send-only --allow 127.0.0.1 
 
And:  
ncat -v 127.0.0.1 4952 | csdr shift_addition_cc `python -c "print float(145800000-145800000)/1200000"`
 | csdr fir_decimate_cc 25 0.05 HAMMING | csdr bandpass_fir_fft_cc 0 0.5
 0.05 | csdr realpart_cf | csdr agc_ff | csdr limit_ff | csdr 
convert_f_s16 | mplayer -nocache -rawaudio 
samplesize=2:channels=1:rate=48000 -demuxer rawaudio -
 
Good reception 

Comments