-
Notifications
You must be signed in to change notification settings - Fork 27
Software Defined Radio
Software Defined Radio (SDR) is a radio communication system where components that have been traditionally implemented in hardware (e.g. mixers, filters, amplifiers, modulators/demodulators, detectors, etc.) are instead implemented by means of software on a personal computer or embedded system.[1]
[1]Markus Dillinger, Kambiz Madani, Nancy Alonistioti (2003). Software Defined Radio: Architectures, Systems and Functions. Wiley & Sons. p. xxxiii. ISBN 0-470-85164-3.
The RTL-SDR.com blog is a great source for news, information, tutorials, and more on all topics related to SDR.
The GNU Radio Wiki is a wiki focused on all things GNU Radio.
Nuand also has a BladeRF Wiki for BladeRF tips and tricks.
The Ettus Research Knowledge Base for anything USRP or UHD related.
Russ has a number of SDR resources and examples at sdr.ninja
NotPike has a list of SDR and other RF resources in NotPike's SDR-Notes
Great Scott Gadgets Software Defined Radio with HackRF
There are many different SDR devices available. The RTL-SDR Blog has a good roundup of general purpose SDR hardware. RTL-SDR Blog SDR Roundup
RTL-SDR generally refers to using USB dongles, based on the Realtek RTL2832U chip, as general purpose SDR receivers. The initial research and development on RTL-SDR was done using inexpensive DVB-T TV tuner dongles. The original TV tuner dongles remain perfectly usable and capable as SDR receivers, however some companies have also made customized dongles with upgrades such as improved oscillators and SMA connectors, intended for use as SDR receivers, for a small increase in price.
FlightAware Pro Stick Plus is an RTL-SDR dongle with an amplifier and 1090 MHz filter built in. These modifications are intended to improve performance for monitoring ADS-B, but will limit this dongle's performance for other uses.
Great Scott Gadgets HackRF One
Ettus Research USRP Bus Series
The Portapack for HackRF One is not a standalone SDR, but it is a useful add-on for the HackRF One that adds a touchscreen display, user controls, a headphone jack, and a micro SD card slot. The PortaPack Mayhem firmware is worth looking in to as well.
RFCat is not quite an SDR, however it is worth mentioning here due to being a very flexible hardware defined radio. Based on the TI CC1111, RFCat dongles (such as the YARD Stick One) can transmit and receive signals in a few sub-GHz bands, and with a few specific modulations that are supported by the CC1111.
Frequency ranges (unofficial): 281-361 MHz, 378-481 MHz, and 749-962 MHz bands
Modulations: ASK, OOK, GFSK, 2-FSK, 4-FSK, MSK
Data Rate: Up to 500 kbps
There are other dongles compatible with RFCat, however the YARD Stick One is the most readily available option at the time of writing.
SIGIDWIKI Signal Identification Guide
Universal Radio Hacker is a tool for capturing, analyzing, demodulating, and decoding unknown wireless signals.
rtl_433, in addition to having built-in decoders for a number of different wireless devices, includes features to save and analyze unknown signals.
Raptor Captor: Woody - The Ford Hack Raptor Captor video - DEF CON 27 Wireless Village, Hak5: Hacking Ford Key Fobs With a HackRF and Portapack
There are many software tools available to work with SDR; too many to put into any single list. The RTL-SDR blog has an extensive list of RTL-SDR supported software in their The Big List of RTL-SDR Supported Software post. We have also included a few of our favorite SDR tools below.
SDR Basics Breakout SDR Ninja Software Defined Radio
gqrx - General purpose SDR receiver with a waterfall display (showing frequency over time), and audio demodulation for AM, FM, and SSB signals, among other things.
dump1090 - Receives and decodes ADS-B
rtlamr - Receives and decodes many common utility meters (electric, gas, water)
rx_tools - Includes rx_fm, rx_power, and rx_sdr. Based on tools provided by librtlsdr, but with support for more SDR devices.
TempestSDR - Receive unintentional emissions from computer screens. See also the RTL-SDR blog post on TempestSDR.
gr-fosphor - Uses OpenCL and OpenGL acceleration, if your system supports it, to provide a Real-Time Spectrum Analyzer (RTSA) like display. This is useful for responsive, wide bandwidth displays. See also the fosphor - Demo video.
multimon-ng does not interface with SDR hardware directly, but is a useful second step for decoding POCSAG, FLEX, and certain other signals after receiving with something like rx_fm.
fldigi is a beast of a piece of software that has a very wide range of modulation types to work with. It's commonly used by hams with stupid amounts of money for hardware. If you can't find a demod in another tool, it's probably in fldigi. But be warned: fldigi is confusing to use and set up as a beginner (usually due to the way that PulseAudio works). If you're having trouble setting it up and are receiving PulseAudio errors, tweaking your sources with the pavucontrol-qt package will likely help.