QRadioPredict

Radio propagation prediction and simulation tool for VHF-UHF

QRadioPredict

QRadioPredict is an experimental software for VHF-UHF propagation prediction and radio coverage analysis. Currently it works on Linux and Windows 32 bit (Vista) and has the following features:

Update:
New version 0.8.8 is available from the source and binary downloads featuring improved plotting precision at large distances, at the expense of computational power, and the newer ITWOM propagation model which is now GPL'ed courtesy of John A. Magliacane.

Added missing files and instructions for source builds.

The last Windows build available is 0.8.6. No more Windows builds are available for newer versions due to the lack of a Windows machine for compiling and testing. We will resume providing Windows builds as soon as this problem is solved.

QRadioPredict can operate as a traditional standalone program with static plots and radio links, or can be connected to Flightgear, the free flight simulator, in order to use it's powerful radio simulation.

Download

QRadioPredict is distributed as source code package and binaries for Linux and Windows. Please see https://sourceforge.net/projects/qradiopredict/ for downloads. On Linux, to run QRadioPredict you need to have installed the following:

On Debian:

apt-get install gdal-bin libgdal1 libgdal1-dev libgeos-3.3.3 libgeos-dev libsqlite3-0

Usage

Linux: Run the bash script qradiopredict.
The first time you start QRadioPredict you should open Edit -> Settings and set your local preferences and paths. Then, you might want to add a mobile station on the map, and up to four ground stations. Set the locations for the mobile using the flightplan tab. Each ground station tab has a button which generates 2D plots on the map. Set the opacity of the plot using the slider on the top right side, and the plot distance using the filed just below the opacity slider. Run the program standalone, or connect it to Flightgear by pressing the "Start Flightgear" button and then after it has started, the connect button. Send all data to Flightgear by pressing the third button, which should start your simulation.

The terrain data format is NASA SRTM 3 arcsec, in HGT files which are 2884802 bytes in size. Tou can obtain the data from NASA sites like http://dds.cr.usgs.gov/srtm/version2_1/SRTM3/Eurasia/.
Newer versions with holes filled and contours seamless integrated are vailable from CGIAR (SRTM v4) http://www.cgiar-csi.org/data/srtm-90m-digital-elevation-database-v4-1.
After downloading the height files, fill in the setting box with the path to the directory where they are placed (no spaces). Note: you need to extract the files before placing them in this directory. Only files with the extension .hgt are usable by the program.

The clutter data should be shapefiles obtained from the CLC2006 project, and cropped to 1 degree size. You can also use any other type of terrain coverage data, as long as it is in classic shapefile format, and they are cropped into 1 degree tiles. You can download Europe shapefiles from http://www.eea.europa.eu/data-and-maps/data/clc-2006-vector-data-version-2.
Alternatively, if you want to use global data from the global VMAP0 program as well as other sources, you can obtain them through the USGS interface http://landcover.usgs.gov/globallandcover.php.
Use the included clip.py Python script to crop the shapefiles to the required size (1 degree in height and width). Needs Python 2.7, OGR and GDAL installed in order to run. Adjust the numbers in clip.py to your desired location. Fill in the application setting box with the path to your shapefiles directory (no spaces). It is not recommended to tick the clutter checkbox when generating 2D plots.

You can delete a waypoint or a ground station by pressing the red X button on the lower left. When running standalone, the second button from the standalone group will sequence to the next waypoint.

Connecting to Flightgear: you should first read the Flightgear documentation at http://wiki.flightgear.org/Radio_propagation to understand how does the flight simulator fit into the radio environment. Note that the public available version may not be usable with QRadioPredict, due to stale (older) code. If you wish to use the latest Flighgear radio code, you should contact the author for details on obtaining and compiling from source.

Known problems

Very slow static plot generation when enabling ground clutter: to be resolved in a future release. See the bug tracker on Github: https://github.com/QDeltaSoft/qradiopredict/issues

Getting help and reporting bugs

You can either file a ticket at https://sourceforge.net/projects/qradiopredict/ or open a thread in the forums.

Installation from source

The source code is hosted on Github: https://github.com/QDeltaSoft/qradiopredict

To compile qradiopredict from source you need the following dependencies:

QRadioPredict comes with a simple qmake build setup. It can be compiled from within Qt Creator or in a terminal:

$ git clone https://github.com/QDeltaSoft/qradiopredict.git qradiopredict
$ cd qradiopredict
$ mkdir build
$ cd build
$ qmake-qt4 ..
$ make

To create the database (which needs to be located in the same directory as the executable):

$ cat db_structure.sql | sqlite3 propagation.sqlite

Also move material_radio_properties.txt in the same directory with the executable

To build in debug mode add "CONFIG+=debug" to the qmake step above. There are also some other qmake options, see the qradiopredict.pro file.

Credits and License

QRadioPredict is designed and developed by Adrian Musceac YO8RZZ, and it is licensed under the GNU General Public License version 2. QDeltaSoft owns all rights for the reproduction of forementioned software.

The Irregular Terrain Model was originally developed by the U.S. Department of Commerce NTIA/ITS - Institute for Telecommunication Sciences and converted to C++ and improved by several others.

The MapGraphics library was coded by Raptorswing and comes with a FreeBSD license.

Following people and organisations have contributed:

Also thanks to Durk Talsma, Flightgear developer, who encouraged me to contribute my code, and Torsten Dreyer, for giving me a detailed lesson of Flightgear internal working.

Some of the icons are from the GNOME and KDE icon themes.

Let me know if somebody or something is missing from the list!

Adrian YO8RZZ