exploring rf with software - rara home · pdf fileexploring rf with software ... gr-ldpc, an...

43
Exploring RF with Software Defined Radio ...Your Kenwood Can’t Do This! Ryan Tucker, W2XH [email protected]

Upload: dinhcong

Post on 04-Feb-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Exploring RF with Software Defined Radio

...Your Kenwood Can’t Do This!

Ryan Tucker, [email protected]

Page 2: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

3 reasons you should know about SDR

Page 3: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

A stack of test equipment in your pocket

Page 4: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Develop and use new modes

Page 5: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Learn how the “professionals” do RF

Page 6: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Software Defined Radio, Defined

Page 7: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

https://en.wikipedia.org/w/index.php?title=Software-defined_radio&oldid=690110472

Software-defined radio (SDR) is a radio communication system where components that have been typically 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] While the concept of SDR is not new, the rapidly evolving capabilities of digital electronics render practical many processes which used to be only theoretically possible.

Page 8: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Superheterodyne Receiver Architecturehttps://commons.wikimedia.org/wiki/File:Superhet2.svg

Page 9: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Direct Conversion SDR Receiver

Page 10: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

RF AmplifierWideband and Adjustable

RF Channel Filter,Low-Noise Amplifier (LNA),

Variable Gain Amplifier (VGA)

Page 11: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

MixersComplex Baseband

Centered at 0 Hz (LO at fc)

Two parallel paths:In-Phase (I)

Quadrature (Q)

Page 12: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Baseband Filter & Amplifier

Low-pass filter (anti-aliasing)Final analog amplification stage

Page 13: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Digital Conversion and

ProcessingDynamic range and bandwidth

are constrained by ADC

All further magic implemented digitally

Page 14: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Hardware

Page 15: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Many Choices(Quite a few)

● RX and/or TX● Half/full duplex● Frequency range● On-board DSP capability● Connectivity● Ready-to-use vs DIY● Price● Availability

Page 16: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

RealtekRTL2832U

● $15 USB DVB-T “dongles” for watching (rest-of-world) TV on your computer

● Supports DAB/DAB+/FM by dumping raw I/Q samples to host software. HMMM…

● 8-bit I/Q samples, max 3.2 MS/s (but usually less)

● Frequency range is tuner-dependent, RX only

http://sdr.osmocom.org/trac/wiki/rtl-sdr https://www.reddit.com/r/RTLSDR

http://www.mathworks.com/cmsimages/86734_wm_RTL-SDR-gallery-image2.png

Page 17: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Great Scott GadgetsHackRF One

● $300 USB transceiver● 1 MHz to 6 GHz, half duplex● 20 MS/s, 8-bit I/Q● Plastic enclosure, expansion

options, etc…

http://greatscottgadgets.com/hackrf/

http://greatscottgadgets.com/images/h1-preliminary1-445.jpeg

Page 18: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

NuandbladeRF

● $420 USB 3.0 peripheral● 300 to 3800 MHz, full duplex,

28 MHz RF bandwidth● 40 MS/s 12-bit I/Q● Altera Cyclone IV FPGA● Available Add-ons: plastic case,

transverter board (for HF/VHF operations), larger FPGA

● Developed in Rochester

http://www.nuand.com/

(Disclaimer: I am a contributor to the bladeRF project)

http://www.nuand.com/prod_disp_3.png

Page 19: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Ettus ResearchUSRP

● “Universal Software Radio Peripheral”

● Grand-daddy of them all● Family of products, ranging

from $675 to $4800

http://www.ettus.com/

(All images from ettus.com; clockwise from upper left: USRP X310, USRP N210, USRP B200mini-i, USRP E310)

Page 20: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

FlexRadio SystemsFLEX-6300

● $2499 transceiver● 30 kHz - 54 MHz● 16-bit ADC/DAC● 100W nominal RF output power

http://www.flexradio.com/amateur-products/flex-6000-signature-series/flex-6300/

http://www.flexradio.com/wp-content/uploads/2014/05/FLEX-6300_front_angle_handles_660x350-ARC.png

Page 21: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

And others...● Elecraft KX3● SDR Cube● Softrock● Funcube Dongle● ...

Page 22: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Software

Page 23: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

GNU Radio“GNU Radio is a free & open-source software development toolkit that provides signal processing blocks to implement software radios. It can be used with readily-available low-cost external RF hardware to create software-defined radios, or without hardware in a simulation-like environment. It is widely used in hobbyist, academic and commercial environments to support both wireless communications research and real-world radio systems.”

http://gnuradio.org/

Page 24: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

GNU Radio CompanionGRC

● Graphical tool to design DSP processing chains

● Somewhat like Simulink● If you know what you want to

do, this is a pretty easy way to do it

http://gnuradio.org/redmine/attachments/266/screenshot-grc-nbfm.png

Page 25: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

GNU Radio Live SDR EnvironmentBootable Ubuntu Linux DVD/USB

Pre-installed with GNU Radio 3.7.8.1 and various third-party software

Support for USRP, HackRF, bladeRF, RTL-SDR, AirSpy, and ADI gr-iio

List of pre-installed applications on the right…

https://gnuradio.org/redmine/projects/gnuradio/wiki/GNURadioLiveDVD

● gr-osmosdr, a set of blocks supporting various hardware SDRs and applications, and related dependencies

● gqrx, a narrowband SDR receiver application by Alexandru Csete● GNSS-SDR, a fully software-based GPS, Galileo, and GLONASS real time

receiver● gr-air-modes, a Mode-S/ADSB aircraft telemetry receiver● 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-radar, the GNU Radio Radar Toolbox● gr-rds, an implementation of broadcast FM radio RDS reception● gr-specest, an implementation of several spectral estimation algorithms● OpenLTE, an open source 3GPP LTE implementation● gr-fosphor, a GPU-accelerated real-time spectrum analyzer display● gr-gsm, blocks and tools for receiving GSM transmissions● gr-iio, connection library to ADI libiio devices● gr-nacl, wrapper blocks around NaCL encryption library● gr-paint, spectrum painting block

Page 26: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

GqrxSDR Receiver powered by GNU Radio and the Qt graphical toolkit

Demodulates AM, SSB, Narrowband FM, Wideband FM (mono/stereo)

FFT plot and waterfall, recording and playback of raw baseband data, remote control, etc…

http://gqrx.dk/

http://farm6.staticflickr.com/5520/9300199921_4c0ce4e4a4_z.jpg

Page 27: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

WSPRnet“Weak Signal Propagation Reporter Network”

Uses the MEPT_JT digital mode to probe propagation conditions using QRP/QRPp transmissions

http://wsprnet.org/

http://wsprnet.org/drupal/wsprnet/map

Page 28: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

LegbaYateBTSSoftware implementation of GSM/GPRS radio access network

In other words: cellular carrier in a box

http://www.yatebts.com/

* Check local laws before using this on-air https://yateblog.files.wordpress.com/2015/10/ss_mix_spectr_2015-10-6_pic2_version1-1.png

Page 29: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

And others...● Airspy SDR#● CubicSDR● Sdrangelove● Baudline● Redhawk● MATLAB● and many, many more…

http://www.rtl-sdr.com/big-list-rtl-sdr-supported-software/

Page 30: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Applications(Things I’ve Done)

Page 31: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

ATSC Television Transmitter

Page 32: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

ATSC Transmitter (“Hacker Television”) at the Rochester Mini Maker Faire, November 2015Photo by Scott Lawrence

Page 33: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

TPMS Tire Sensor Decoding

Page 34: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

gr-tpms and a modest Python script (WIP)

Page 35: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Quick and Dirty Scannerhttps://github.com/rtucker/gqrx-scanner

Page 36: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Quick and Dirty Scannerhttps://github.com/rtucker/gqrx-scanner

Warning: some channels feature a somewhat saucy vocabulary during winter storms

Page 37: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Alpha Pager Decoding

Page 38: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Alpha Pager Decoding

and content analysis

Page 39: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Get Started, Cheap

Page 40: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

1. RTL-SDR2. Antenna3. GNU Radio Live

Page 41: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Use Responsibly

Page 42: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Have Fun

Page 43: Exploring RF with Software - RaRa Home · PDF fileExploring RF with Software ... gr-ldpc, an implementation of generic LDPC codecs gr-lte, ... MATLAB and many,

Have Fun

Ryan Tucker, [email protected]