Software Defined Radio - live examples
This is a set of example scenarios you can use either as a stand-alone programme or with GNURadio and either a HackRF One or an RTL-SDR.
All scripts included in this repository are intended to be run from the provided GNURadio LiveUSB.
For better performance, more space, and permanency you should install Ubuntu 16.04 LTS directly onto a computer and run these scripts from there.
After downloading (cloning) the repository, run any of the following commands within their respective folders.
$ sh adsb.shusing dump1090
$ sh adsb_quit.sh(to stop the dump1090 programme)
$ sh gr-air-modes.shfor GNURadio ADSB support
$ sh flightgear-install.shto setup AIS/ADSB support for http://www.flightgear.org
- warning Flightgear is 500+ MB of downloads and will only work on a dedicated Ubuntu install.
$ sh ais.sh
$ sh afm_channelizer.sh
$ sh iridium_install.sh
$ sh nrsc5.sh
$ sh pagermon.sh
- GNURadio is the main Software Defined Radio tool
- The HackRF portability add-on
- 'Havock' — custom mischief firmware
The software in this repository is the start of an installation and demonstration package for getting started with Software Defined Radio on ships.
It is meant to be used with the GNU Radio Live SDR Environment
The livesdr image is based on Ubuntu Linux 16.04.2 LTS, 64-bit edition, and has additional software installed beyond the defaults supplied by Ubuntu.
note: If you create a new USB stick with GNURadioLive on it, be sure that the USB stick is at least 8GB.
Pre-Installed SDR Hardware Drivers
Drivers for these GNU Radio-compatible SDR peripherals have been pre-installed:
- Ettus Research UHD release_003_009_006
- Great Scott Gadgets HackRF products
- Nuand bladeRF products
- osmoSDR RTL-SDR driver
Each of these provides its own set of utilities and files. Please consult the manufacturers' documentation for more information.
Pre-Installed GNU Radio Applications
There are many 3rd-party applications, demos, drivers, and block libraries produced by the GNU Radio community. Below is a list of pre-installed packages that highlight some of the diverse capabilities of GNU Radio:
- gr-osmosdr, a set of blocks supporting various hardware SDRs and applications, and related dependencies
- gr-fosphor, a GPU-accelerated real-time spectrum analyzer display
- gqrx, a narrowband SDR receiver application by Alexandru Csete
- GNSS-SDR, a fully software-based GPS, Galileo, and GLONASS real time receiver
- gr-specest, an implementation of several spectral estimation algorithms
- OpenLTE, an open source 3GPP LTE implementation
- gr-nacl, wrapper blocks around NaCL encryption library
- gr-adsb, an ADS-B modem
- gr-ais, an AIS modem
- gr-ax25, AX25
- gr-burst, a burst PSK modem
- gr-cdma, a CDMA phy
- gr-gsm, blocks and tools for receiving GSM transmissions
- gr-ieee-80211, an IEEE 802.11a/g/p transceiver
- gr-ldpc, an implementation of generic LDPC codecs
- gr-lte, an implementation of a 3GPP LTE receiver
- gr-mapper, extra symbol/bit mapping tools
- gr-paint, spectrum painting block
- gr-radar, the GNU Radio Radar Toolbox
- gr-rds, an implementation of broadcast FM radio RDS reception
- gr-specest, Spectrum estimation blocks
When attempting to capture a particular frequency it's important to have a Passband Filter.
Filters such as the MiniCircuits VBFZ-1690-S+ L-Band are used with L band.
SDR - where to start?
- Michael Ossmann's Software Defined Radio with HackRF video course is a great place to start
- Adam's YouTube test videos for LNA/Filter experiments
- Guided tutorial in GNURadio Companion
- GNURadio tutorials
- Signal identification guide
Where to get help
- GNURadio email list