Search for meteorological sonde with RaspberryPi


    Often, the sonde, that you want to search on the field, can not be taken coordinates low enough, so it is necessary to get more accurate coordinates near the landing point, or the situation requires the so called "foxhunt" method start to be need searching the probe. In these cases, this small program can be usefull. To run, we need a Raspberry Pi with a TFT display and touch screen combinations. Since the program is handled via the touch screen, there is no need to connect another things to use it, only an rtl-sdr radio connected to the RPi's USB port. If you want to use the "Fox Hunter" method, you will naturally need a direction-sensitive antenna. If we're just looking for the final coordinates, there is enough en omnidirectional "wire", similar as used at the sonde itself. However, I strongly recommend using the HB9CV type antenna. This antenna has a small size to use it confortable way on the field and it is perfectly enough for both searching and coordinate decoding.



Installation:

    As a first step, you need to install the raspbian operating system with the graphics interface and the appropriate drivers for the used touchscreen display. If everything works properly, you can install the program itself.
    If you have a newly installed operating system, open the console window and enter it:

sudo wget www.om3bc.com/docs/SF/install_all.sh

this command save the installer to the current directory.
Enter it end put ther this command:

sudo chmod a+x install_all.sh
./install_all.sh

if everything goes well, then the full of packages comes with all the accessories.

If there is a problem, you can try install by hand. It may be the solves of the problems. This are the commands:

sudo apt-get install cmake build-essential python-pip libusb-1.0-0-dev python-numpy git pandoc -y

sudo apt-get remove rtl-sdr -y

sudo apt-get install git-core libusb-1.0-0-dev pkg-config cmake -y

git clone https://github.com/keenerd/rtl-sdr

cd rtl-sdr/

mkdir build

cd build

cmake ../ -DINSTALL_UDEV_RULES=ON -DDETACH_KERNEL_DRIVER=ON

make

sudo make install

sudo ldconfig

sudo apt-get install sox

sudo pip install pyrtlsdr

mkdir /home/pi/SondeFinder

cd /home/pi/SondeFinder

sudo wget www.om3bc.com/docs/SF/sondefinder.tar.gz

tar -zxf sondefinder.tar.gz

sudo rm sondefinder.tar.gz

cd Desktop

cp sondefinder.desktop /home/pi/Desktop

cd ..

Once the libraries have been installed and you want to update the program itself, you can write it at the command prompt:

./install_prg.sh

or manually:

cd /home/pi/SondeFinder

sudo wget www.om3bc.com/docs/SF/sondefinder.tar.gz

tar -zxf sondefinder.tar.gz

sudo rm sondefinder.tar.gz


Setting-up and use it:

    If the program is properly installed, a SondeFinder icon must apper on the the Desktop. Click on it at the touch screen, it is how to program will start.
If you have a problem, try run the program from command line.
cd /home/pi/SondeFinder/
python sondefinder.py
Without the receiver, the program not run!
After the start, the spectrum analyzer must be displayed:



This mode can be used for searching or to determine the direction of the probe. This will make decoding more reliable and faster.
If you need to change the settings, press the CONFIG menu item:



Here you can enter the receive frequency, the sampling rate, the gain, the error correction, the upper and lower limits of the spectrum analyzer, and you can select the type of sonde.
If you exit with the BACK menu item, the set values are only valid until the time of the shutdown. When SAVE is selected, the set parameters will be stored and will be valid at the next turn-on or restart. The frequency can be entered as follows:



or select from the list. The list is in the "frequency.lst" file, which can be modified with a text editor. The first data is the identifier of the launch site, the second the frequency is in MHz and third is the type of sonde. Rows starting with "#" are ignored.
  Press CLEAR to reset the parameter, DELETE to delete the last charakter. For CANCEL, the old value will remain, and for ACCEPT the current value will be valid. Similary, other parameters can also be changed.

If everything is oke, then the probe signal must be seen on the spektrum analyzer display.



The program can decode radiosondes: RS41, DFM, PilotSonde and M10. Because the program will mostly be used at a place where the internet is not available, the program does not contain a decoder for RS92 (there would not be enough fresh almanacs or ephemeris available). Because the program does not contain AFC, it can happen that the actual frequency for DFM, PilotSonde and M10 must be set manually. Use the < and > buttons. The signal must be symmetrically positioned against a vertical yellow lines. Although the frequency is only visible to 3 decimal places, it can also be entered with an accuracy of 1 Hz (6 decimal places) in the CONFIG. When you tap on the center of the screen, all the information is disappers, and only the spectral analyzer cover remains. It is convenient to search by signal strength.
If this signal is strong enough, you can try decoding the coordinates:



Data is updated aproximately every 2 seconds. The current position can be saved with the SAVE key. If you see WAIT with the red background, it means there is no valid data yet. For DFM probes, the probe-identifier should sometimes wait 10 to 15 seconds. The name of the generated file is the identifier of the probe. When the position is stored, the background of the SAVE button changes to olive.

Availability:

image of SD card: sf.zip

full installer

update

program  old version

the program that inspired me