Wednesday, February 1, 2017

WSPRing with Raspberry Pi, step by step

Raspberry Pi 3 and filter boad (shield) from TAPR
An article by Scotty Cowling WA2DFI in the January 2017 issue of QRP Quarterly gave me just the push I needed to buy a Raspberry Pi. I'd been thinking about it for a while, not because I'm into that sort of thing, but just the opposite. I know nothing about Linux, Python, Ubuntu or any other similar flavors of computer-speak I frequently hear tossed about. But at the staggeringly low price of $38, Raspberry Pi seemed a way to learn on the cheap.

I still don't know much (if anything yet) about those languages but I received my Pi 3 in the mail from Amazon three days ago and a $20 WSPR shield from TAPR an hour ago and am already on the air with 100 mW on 20m WSPR and have been spotted all over the US and Canada after less than an hour's worth of transmissions in my early afternoon.

I fully expect to be heard in Europe this evening, and all with a cheap, tiny set-up that that is completely independent of my shack computer. Based on the reports the Pi appears rock stable in frequency.

My set-up procedure differed slightly from that described in the article. For those similarly interested and who may know little to nothing about these amazing devices, here is a description of how to "whisper raspberries".

100mW out confirmed

What you Need

You probably already have half of these items. The first three can be bundled together in your Amazon order:

Raspberry Pi 3 Model B
5V power supply
32GB SDHC memory card
Shield for WSPR from TAPR (this is both an amplifier and a low-pass filter)
USB keyboard, USB mouse, HDMI monitor
20m antenna
A PC with Windows to write R-Pi image to SD card

Now what?

The QRP Quarterly article directs you to install the shield onto the Pi, boot it up, download the WSPR program and start transmitting. I recommend against this and suggest instead that you get the R-Pi up and running on its own first without attaching the WSPR shield yet.

You'll need to download three free programs to your PC:

Ubuntu Mate for Raspberry Pi 2 and 3
7-zip (similar to WinZip)
Rufus utility (this allows you to write an image file (Ubuntu Mate) to the SD card

Install 7-zip and Rufus onto your PC. This is also a good time to create a (free) account on GitHub. You'll need that later in order to download the WSPR program onto your Pi.

Use 7-zip to unzip Ubuntu Mate. It'll unzip to an 8GB file. Then use Rufus to install the unzipped Unbuntu file onto your SD card. Once you open Rufus to do this, make sure that your SD card is selected for "Device". This is very important since whatever is selected in this field is about to get erased and written over!

For "File System" select Large FAT32.
The following three boxes should be checked:
  • Quick format
  • Create a bootable disc using 'DD Image'
  • Create extended label and icon files
To the right of the 'DD Image' is an icon that looks like a CD. Click on it to select your Ubuntu Mate image file (it will have a .img extension).

Hit 'Start' and go have a snack.

And now to the Raspberry...

Once the image file has been written, remove the SD card from your PC and insert it into your Pi. Connect the USB mouse and keyboard to the Pi, along with an HD monitor.

Now apply power to the Pi and it will begin booting up. At the end of the boot-up you will be presented with a Welcome screen. Click the large Raspberry Pi Information button on the Welcome screen, click the Resize button and then restart the Raspberry Pi. This ensures that all of your 32GB are available.

The next task is to set the system time and configure the Pi to communicate with your router. The Pi 3 has built-in wireless capability (and Bluetooth). Icons for time and router config are in the upper right-hand part of your monitor. Once this has been done, go to System (top left of monitor), Administration, Time and Date and then set the Configuration field to 'Keep synchronized...'

At this point, you have a fully functional Raspberry Pi with a word processor, spreadsheet, web browser and other programs built in.

Now that your Pi has online access, it's time to download the WSPR program.

To download and install it, hit CTRL-ALT-T on your keyboard to open a terminal window and then enter the following:

sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get install git
git clone
cd WsprryPi

You will have to enter your password for the Pi and your user name and password for your GitHub account.


Time to get on the air!

Shut down the Pi and remove the power connector.

Attach a 20m antenna to the TAPR WSPR shield. Labeling on the circuiboard indicates which terminal is for the ground braid and which for the center lead. I just cut an RG-58 BNC cable and attached the cut end to the board and the connector end to the feedline from my Yagi.

Now seat the TAPR shield onto the Pi and push it down firmly.

Power up the Pi, open a terminal window (CTRL-ALT-T) and type:

cd WsprryPi
sudo ./wspr -r -o -s callsign gridsquare 20 20m

Use 6 digits for your gridsquare.

Enter your password if asked. WSPR transmissions will begin on the next even minute.

Screenshot of WSPR program running in Pi terminal window

If all is successful you should see your callsign spotted after several minutes on WSPRnet (make sure to select '20m' in the field just under the map).



  1. Great John. I just turned on WSPR and received your signal -15db in NH. What a hoot!
    73 Jim W1PID

    1. Hey Jim, thanks for the reports! I do have the antenna pointed your way this morning and glad to see that 100mW is making its way up there to beautiful NH. There is so much versatility with these tiny computers.

      73 - John AE5X

  2. 2 Feb @ 1500Z:
    Now being heard in G, DJ, GM, ON, OE, PA

  3. Hello John, I should really make some more wspr time on air. But so many things happen these days. If I ever get retired I might have some more time for the hobby. This raspberry Pi project is on my wishlist. Thanks for the post. 73, Bas

    1. Hi Bas - the good thing about WSPR is that you can do other things around the house while it runs and are still be able to propagate a signal around the world. The Pi and WSPR make for a good combination - cheap and effective.

      73 - John AE5X

  4. Good evening John, I picked up my Pi 3 model B last year with the intention of getting it up and running on WSPR. I looked at all that was involved and i just have not picked it up since. You presented things in your blog in a very easy to understand process for the WSPR Pi 3 adventure. I will be ordering the shield for WSPR from TAPR soon and get this thing up and running.
    Thanks again for a great post.

    1. I hope you take the plunge Mike. It was much easier than I thought it would be - I'm really not a 'computer person' so if I did it, anyone can. Just do each thing one step at a time and you'll be on the air much sooner than you probably imagine. I'll be interested in reading of your results on your blog.

      73 - John AE5X

  5. Great write up John, just what I needed! I acquired the TAPR board awhile back but never went forward. This will help me out so thank you!

    1. Thanks for the comment. I'm hoping to put my RPi on other bands soon and will post how that goes. 73

  6. Great writeup to accompany the TAPR board guide. It should make it all come together easily.

    Thanks, de VK2HHS

  7. To hook-up antenna do you put the center wire on the left and gnd on the right, or vice-a-versa? When I got mine it was a group purchase and person said "here it's easy" K4eae

    1. Mine Isn't, that's why I am asking.

    2. I have this version of the TAPR board:

      If your is different and not labeled I don't know what other changes your version may have. The easy way to verify pin-out: just use an ohmmeter to see which of the two pins is at circuit board ground potential and put the shield of the coax there. Center conductor goes to the other one.

  8. Great blog and thanks. My Raspberry Pi 3 is up and running. For some reason, however, it only transmits my 4-digit grid square rather than six. Is there an update to wsprrypi to fix this?
    Tnx and 73

    1. Nothing is wrong with wsprrypi - it's an issue with the WSPR database itself. Here the explanation and fix:

      The fix is simply to spend a few minutes receiving WSPR - that will establish your callsign to your 6-digit gridsquare so that when you begin transmitting with your RPi, the database will then associate your callsign with a 60digit grid. You only have to do this (receive WSPR) once.

  9. Is it possible to download th WsprryPi software and compile it directly on the Pi? Can the Pi write to a SD card? Trying to figure out how to do this without a pc as I don’t have one. Still trying to see if I can do this before I buy the Pi.

  10. Pls ignore. Silly question Read the instructions John. No pc needed just buy the sd card preinstalled with noobs