Tag Archives: Android

Dongle Bits: Settings, Programs, & Apps for Software Defined Radio

This article appeared in the The Lake Erie Amateur Radio Association newsletter The Spirit of ’76 and ’88 October 2014 edition and The Wood County Amateur Radio Club newsletter CQ Chatter November 2014 edition.

Read the rest of the series in the Dongle Bits articles category.


Last time on Dongle Bits, I talked about the $20 European TV tuner dongle that was hacked allowing direct access to the signal data. The result is a cheap wideband receiver for your computer. We’re going to take a look at key settings you should know about when using these devices. Then look at some software and projects that transform these into systems that would have cost hundreds or thousands of dollars!

PPM and Settings

An important thing to know about these dongles: they are cheaply made and not tested for accuracy. They are designed to receive DVB-T signals at a bandwidth of 6 – 8 MHz where a few KHz error doesn’t matter. This is obviously not true when you’re dealing with FM signals that are 16 KHz wide or digital at 12.5 where a few KHz will put you on a completely different frequency or channel.

PPM stands for parts per million and is the difference in received frequency vs. frequency shown. To visualize this, use SDRSharp to receive a known FM signal. The center frequency shown will be different from the signal on the scope. Typical PPM offset is anywhere from 45 – 65 and will be in the programs settings. The dongle will drift another 2 – 5 PPM over the next 20 – 45 minutes as it warms up. Gain is obviously another setting that will help you receive signals. The RTL AGC setting works but will err on the side of too much gain. Manually, using more than 32.8 dB will overload and produce duplicate signal spikes. The Correct IQ setting will get rid of phantom spikes at lower gain settings.

PPM at 0
Dongle with no frequency correction. The actual 162.550 frequency is just to the left of the displayed frequency. 162.550 is one of the NOAA Weather Radio frequencies.
RTL-SDR Settings (PPM corrected)
Shows the gain and PPM frequency correction of 55 for the dongle I’m using.
PPM Corrected
Shows 162.550 centered with frequency correction applied.

The crystals on the RTL-SDR dongle can be replaced with higher accuracy temperature controlled crystals (TCXO) that have a variance of 1 ppm! These crystals are $10 but you have to wait for them to ship from China. Pre-modified dongles are available but you will pay three times the price for the dongle.

Android

PCs aren’t the only place these SDRs can be used. They can be plugged into an Android device too. You will need a USB OTG cable (on-the-go) and Android 3.1 or later. Search Amazon or EBay for “USB OTG.” OTG is a standard for plugging in USB keyboards, mice, and thumb drives into mobile devices. Running external USB devices off the internal battery will drain it much faster. A powered USB hub would off-load the dongle power consumption. Apps include SDR Touch (wideband receiver program), ADSB Receiver, and SDRWeather for monitoring NOAA weather alerts on your device.

IMG_0003
This is the RTL-SDR running on my Android Nexus 7 tablet with SDR Touch receiving the 146.880 repeater in Lakewood, Ohio. It is connected with a USB OTG cable to the RTL-SDR dongle, then to an MCX to SMA, and then SMA to PL259 adapter.
Screenshot_2014-09-25-21-24-12
This is a screenshot of the above setup with SDR Touch.

What can I do with this thing?

The definitive source on all things RTL-SDR is at the appropriately named www.rtl-sdr.com website. This site has it all. They regularly post software, updates, projects, and new developments. There is something new just about every week.

Some features of RTL-STR.com are The Big List Of RTL-SDR Supported Software. This is the list of software packages that support RTL-SDR on all platforms. Software ranges from wideband receivers to single purpose programs. This will give you some ideas of things to try with RTL-SDR. SDRSharp was written to have plugins extend the functionality of the program. These include plugins that make SDRSharp scan frequencies, add an audio FFT, scope, level meter, or CTCSS (PL) detector.

There is an extensive list of projects and write-ups including an Amateur Radio category. Some interesting ones are receiving live NOAA satellite imagery, analyze cellular phone GSM signals, radio astronomy, signal strength heat mapping (foxhunting?), and how Brazil uses our military satellites to transmit SSTV images.

With the onset of many digital standards and narrowbanding, there are more digital signals out there you may not be able to identify by hearing them or seeing them on the waterfall. This Signal Identification Guide has known types, frequencies they may be heard on, mode, bandwidth, sample audio, and waterfall image. I find myself using the Radio Reference database search utilities to help identify signals and their owners (a premium account maybe needed for some features).

My first SDR project was to use the Raspberry Pi as a SDR remote network server. The Raspberry Pi could be placed in an attic or basement connected to an antenna and controlled by another computer.

Audio can be piped from one program into another using Virtual Audio Cable (VAC). Some time ago, during one of the digital nets on the .76 repeater in Cleveland, I used SDRSharp and VAC to receive the FLDIGI messages being passed on the net. The signal path looked like this: received RF signal (146.760) -> RTL-SDR (signal data) -> SDRSharp (audio out) -> Virtual Audio Cable -> FLDIGI (audio in) -> message decoded on screen. If I had a HackRF, I probably would have been able to transmit messages without using any “ham” gear.

The next and probably final article, I will demonstrate tracking airplanes equipped with ADS-B transmitters and listening to trunked P25 public service radio systems for under $100.

DVAP Pi Hotspot

DVAPDongleOne of my interests is digital modes, so I’m a D-STAR fan.  My first project with the Raspberry Pi would be the DVAP Pi Hotspot.  The DVAP normally connects to a computer and has a low power, 10 mW 2m or 440 transceiver that works with a D-STAR radio.  It passes the bits from the Internet & D-STAR network over the air to your D-STAR radio and vice versa.  The radio does the encoding and decoding.

Thanks goes out to the guys over at AmateurLogic.TV.  Tommy, N5ZNO, did a DVAP Pi segment in episode 57 that I used to build mine.

Requirements

Much like Tommy, my DVAP Pi had to be portable (battery operated), headless (no monitor, autostart), use a cellphone WiFi hotspot, and administered through SSH and VNC if needed.  On Windows, I use PuTTY and TightVNC.  On Android, I use JuiceSSH and PocketCloud.

Assumptions

With this tutorial, I’m assuming anyone setting this up is already familiar with D-STAR, registered on the D-STAR network, and familiar with using the DVAP on a PC.

This guide is step-by-step in nature, meant for beginners, with brief explanations of the steps.  It will help to have an understanding of Linux commands and scripting.  Capitalization is important in Linux!

DPRS problem

I was hoping to use the DVAP Pi as a portable DPRS (D-STAR APRS) iGate to report location data to the APRS network.  It currently does not.  It only reports D-PRS data to the gateway system you’re connected to.  No further.  It will show up on the gateway’s DPlus Dashboard but the DVAP Tool nor the gateway/reflector/repeater will not pass location data to the APRS network.

If you come over the RF side of a repeater with a GPS enabled radio, it will pass the location data to the APRS network.  The repeater will not pass location data to the APRS network when transmitting through a DVAP linked to the system.

This is true when the DVAP is connected to a PC or the Pi.

Program versions

I used a Windows 7 64 bit PC. Applications and versions used in this writeup:

  • Wheezy Raspbian 2014-01-07
  • Win32 Disk Imager 0.9
  • PuTTY  0.63
  • TightVNC 2.7.10 64 bit
  • DVAPTool 1.04
  • Mobile Hotspot ? (added after publishing)
  • JuiceSSH ? (added after publishing)
  • PocketCloud ? (added after publishing)

Parts list

Listed below are all the parts needed to get this project working.  It is noted when items can be left out or substituted.

That’s all the parts needed for this project.  Check out the AdaFruit Raspberry Pi page for other hardware that might be useful, like the USB to PS/2 adapter for example.  Many of these parts are included in the Raspberry Pi Starter Pack.

Downloads

01_raspberry_pi_downloads

Go to http://www.raspberrypi.org/downloads and find the “Raw Images” section.

Download the Win32DiskImager and Raspbian image (800 MB).  Save them in your Downloads folder.