
Getting started on WSPR with a PlutoSDR
05/08/21 • 5 min
As you might recall, I took delivery of a device called a PlutoSDR some time ago. If you're not familiar, it's a single-board computer that has the ability to transmit and receive between 70 MHz and 6 GHz. The system is intended as a learning platform, it's open source, you get access to the firmware, compilers and a whole load of other interesting tools. I used it to play with aviation receive using a tool called dump1090 which I updated to use Open Street Map. If you're interested, it's on my VK6FLAB github page.
Over the past few months I've been steadily acquiring little bits and pieces which today added up to a new project.
Can I use my PlutoSDR to transmit WSPR?
This all started because of an experiment and a conversation.
The experiment was: "Using my FT-857d on 70cm can I transmit a weak signal mode like WSPR and have my friend on the other side of the city decode the transmission?" The answer to that was a qualified "Yes". I say qualified, since we weren't able to transmit a WSPR message, but using FT8 we were happily getting decodes across the city. We're not yet sure what the cause of this difference is, other than the possibility that the combined frequency instability at both ends was large enough to cause an issue for a WSPR message, which lasts about two minutes. On the other hand, I learned that my radio can in fact go down to 2 Watts on 70cm. I've owned that radio for over a decade, never knew.
Now that I have a band pass filter, some SMA leads and the ability to talk to my Pluto across the Wi-Fi network, I can resurrect my Pluto adventures and start experimenting.
I mentioned that this was the result of an experiment and a conversation.
The conversation was about how to create a WSPR signal in the first place. At the moment if you run WSJT-X the software will generate audio that gets transmitted via a radio. All fine, except if you don't have a screen or a mouse. Interestingly a WSPR transmission doesn't contain any time information. It is an encoded signal, containing your callsign, a maidenhead locator - that's a four or six character code representing a grid square on Earth, and a power level. That message doesn't change every time your transmitter starts the cycle, so if you were to create say an audio file with that information in it, you could just play the audio to the nearest transmitter, like a handheld radio, or in my case a Pluto, and as long as you started it at the right time, the decoding station wouldn't know the difference.
As an aside, if you're playing along with your own Pluto, and far be it for me to tell you to go and get one, you can set the Pluto up using either USB, in which case it's tethered to your computer, or you can get yourself a USB to Ethernet adaptor and connect to it via your network. If you have a spare Wi-Fi client lying around, you can get that to connect to your Wi-Fi network, connect the Pluto via Ethernet to the Wi-Fi client and your gadget is connected wirelessly to your network. I can tell you that this works, I'm typing commands on the Pluto as we speak.
As is the case in any experiment in amateur radio, you start with one thing and work your way through. At the moment I want to make this as simple as possible. By that I mean, as few moving parts as I can get away with. I could right now fire up some or other SDR tool like say GNU Radio and get it to do the work and make the transmission, but what I'd really like to do is actually have the Pluto do all the work, so I'm starting small.
Step One is to create an audio file that I can transmit using the Pluto.
It turns out that Step One isn't quite as simple as I'd hoped. I located a tool that actually purports to generate an audio file, but the file that it builds cannot be decoded, so there's still some work to be done.
On the face of it the level of progress is low, but then this whole thing has been going for months. The experiment on 70cm lasted half an hour, the discussion took all of a cup of coffee. So far, I've spent more time on this project making the Wi-Fi client talk to my network than all the rest put together and that includes finding and ordering the Pluto in the first place.
You might well wonder why I'm even bothering to talk about this as yet unfinished project. The reason is simple. Every day is a new one. Experiments are what make this hobby what it is and every little thing you learn adds to the next thing you do. Some days you make lots of progress, other days you learn another way to not make a light bulb.
I'm Onno VK6FLAB
As you might recall, I took delivery of a device called a PlutoSDR some time ago. If you're not familiar, it's a single-board computer that has the ability to transmit and receive between 70 MHz and 6 GHz. The system is intended as a learning platform, it's open source, you get access to the firmware, compilers and a whole load of other interesting tools. I used it to play with aviation receive using a tool called dump1090 which I updated to use Open Street Map. If you're interested, it's on my VK6FLAB github page.
Over the past few months I've been steadily acquiring little bits and pieces which today added up to a new project.
Can I use my PlutoSDR to transmit WSPR?
This all started because of an experiment and a conversation.
The experiment was: "Using my FT-857d on 70cm can I transmit a weak signal mode like WSPR and have my friend on the other side of the city decode the transmission?" The answer to that was a qualified "Yes". I say qualified, since we weren't able to transmit a WSPR message, but using FT8 we were happily getting decodes across the city. We're not yet sure what the cause of this difference is, other than the possibility that the combined frequency instability at both ends was large enough to cause an issue for a WSPR message, which lasts about two minutes. On the other hand, I learned that my radio can in fact go down to 2 Watts on 70cm. I've owned that radio for over a decade, never knew.
Now that I have a band pass filter, some SMA leads and the ability to talk to my Pluto across the Wi-Fi network, I can resurrect my Pluto adventures and start experimenting.
I mentioned that this was the result of an experiment and a conversation.
The conversation was about how to create a WSPR signal in the first place. At the moment if you run WSJT-X the software will generate audio that gets transmitted via a radio. All fine, except if you don't have a screen or a mouse. Interestingly a WSPR transmission doesn't contain any time information. It is an encoded signal, containing your callsign, a maidenhead locator - that's a four or six character code representing a grid square on Earth, and a power level. That message doesn't change every time your transmitter starts the cycle, so if you were to create say an audio file with that information in it, you could just play the audio to the nearest transmitter, like a handheld radio, or in my case a Pluto, and as long as you started it at the right time, the decoding station wouldn't know the difference.
As an aside, if you're playing along with your own Pluto, and far be it for me to tell you to go and get one, you can set the Pluto up using either USB, in which case it's tethered to your computer, or you can get yourself a USB to Ethernet adaptor and connect to it via your network. If you have a spare Wi-Fi client lying around, you can get that to connect to your Wi-Fi network, connect the Pluto via Ethernet to the Wi-Fi client and your gadget is connected wirelessly to your network. I can tell you that this works, I'm typing commands on the Pluto as we speak.
As is the case in any experiment in amateur radio, you start with one thing and work your way through. At the moment I want to make this as simple as possible. By that I mean, as few moving parts as I can get away with. I could right now fire up some or other SDR tool like say GNU Radio and get it to do the work and make the transmission, but what I'd really like to do is actually have the Pluto do all the work, so I'm starting small.
Step One is to create an audio file that I can transmit using the Pluto.
It turns out that Step One isn't quite as simple as I'd hoped. I located a tool that actually purports to generate an audio file, but the file that it builds cannot be decoded, so there's still some work to be done.
On the face of it the level of progress is low, but then this whole thing has been going for months. The experiment on 70cm lasted half an hour, the discussion took all of a cup of coffee. So far, I've spent more time on this project making the Wi-Fi client talk to my network than all the rest put together and that includes finding and ordering the Pluto in the first place.
You might well wonder why I'm even bothering to talk about this as yet unfinished project. The reason is simple. Every day is a new one. Experiments are what make this hobby what it is and every little thing you learn adds to the next thing you do. Some days you make lots of progress, other days you learn another way to not make a light bulb.
I'm Onno VK6FLAB
Previous Episode

Ergonomics in your shack
Foundations of Amateur Radio
In my day job I work in computing. For many years that consisted of going on-site and fixing stuff. Invariably this involved me fixing servers that were installed into a room the size of a broom closet with an optional air conditioner screaming in my ear. The experience often included sitting on a crate, or the floor, holding a keyboard and if it was a Windows Server, rolling a mouse on my knee in order to click on stuff barely discernible on a tiny screen that likely sat a meter too high above my eye line with Ethernet wires going diagonally from one end of the room to the other.
These days with ubiquitous internet connectivity that kind of experience is mostly a thing of the past.
That said, operating a radio during a contest in many stations I've used over the years is not far from that kind of layout.
Often a traditional shack starts off with a radio on a table with a notepad to record contacts. Over time that gets expanded with technology like a computer. It's common to have to juggle the radio display and keyboard, to find a spot for the mouse that doesn't interfere with the desk microphone, or to have to reach over to change band and to activate a different filter, select another antenna, use the rotator or some other essential tool that's required for making that elusive contact.
Some stations have multiple monitors, sometimes they're even together, but more often than not they're a different size, sitting too high and the radio sits as a road-block between your eye line between the screen and the keyboard.
I'm raising this because over the years I've not actually seen anyone spend any energy on discussing how you might improve this experience.
If this was your workplace, the occupational health and safety police would be all over you and for good reason. You could argue that amateur radio is a hobby and that OH&S is of lesser concern, but to that I'd like to point out that you have the same risk of self injury at work as you do in your shack, especially if you're doing a contest for 24 or 48 hours.
Not only is there a risk of injury, why make the experience harder than it needs to be? Ergonomics is the process of designing or arranging a workplace to fit the user. It's a deliberate process. You have to actually stop to consider how you are using a space, in this case your shack.
At the moment I'm experimenting with different aspects of the layout of my shack. For example, I started with a layout of the computer, counter intuitive perhaps, since we're talking about a radio shack, but given that I'm spending much of my time doing contests and digital modes, the computer is used much more than the radio is, even if the radio is what's making all the on-air noise.
After making sure that my keyboard, mouse and screen were in locations that actually helped me, I started trying to figure out where to put the radio and what role it actually plays in making the contact. If during a contest you're using search and pounce, which is when you hunt up and down the bands looking for a contact, you might argue that you'll need access to the radio to change frequency, but if you already have your computer connected to the radio, you can change frequency from the keyboard or by control with your mouse.
Another way I'm looking on reducing the amount of stress to my body whilst operating my station is by sorting out audio. Almost every radio has a speaker on it, but if you've got more than one going at the same time it becomes really difficult to determine which one is actually making noise and even harder if multiple stations are on different frequencies on different radios at the same time.
You could wear headphones and select a radio, one at a time, either by plugging in a particular radio, or by using a selector. If you're using digital modes, the audio might already be going into the computer, which offers you the ability to select from different sound cards, but there are other options. I'm working on plugging the audio from each radio into an audio mixer that will allow me to set the level for each radio independently, mute at will, set the tone, the balance between left and right ear and a few other things.
For a microphone I plan on using the same mixer and I'm working on how to have my digital audio coming from the computer incorporated into the same audio environment, because the digital audio could just as easily be a voice caller using the same system.
For push to talk I settled on a foot switch a couple of years ago. That said, if I'm on my own, I tend to use VOX, or voice operated switching, which turns on the transmitter when microphone audio is detected by the radio. This will need some careful planning if I'm going to connect multiple radios, since I don't want to transmit the same message across each radio at the same time, but with computer control, that ...
Next Episode

Soldering Irons and Software
Foundations of Amateur Radio
The activity of amateur radio revolves around experimentation. For over a century the amateur community has designed, sourced, scrounged and built experiments. Big or small, working or not, each of these is an expression of creativity, problem solving and experimentation.
For most of the century that activity was accompanied by the heady smell of solder smoke. It still makes an appearance in many shacks and field stations today, even my own, coaxed by an unsteady hand, more and more light and bigger and bigger magnification, I manage to join bits of wire, attach components and attempt to keep my fingers from getting burnt and solder from landing on the floor.
I've been soldering since I was nine or so. I think it started with a Morse key, a battery and a bicycle light with a wire running between my bedroom and the bedroom of my next door neighbour. In the decades since I've slightly improved my skill, but I have to confess, soldering isn't really my thing.
My thing is computers. It was computers from the day I was introduced in 1983 and nothing much has changed. For reasons I don't yet grasp, I just get what computers are about. They're user friendly, just picky whom they make friends with.
When I joined the amateur community, it was to discover a hobby that was vast beyond my wildest imagination, technical beyond my understanding and it was not computing. Little did I know.
Computing in amateur radio isn't a new thing. For example, packet radio was being experimented with in 1978 by members of the Montreal Amateur Radio Club, after having been granted permission by the Canadian government. In 2010 when I came along we had logging, DX-clusters and the first weak signal modes were already almost a decade old.
Software Defined Radio has an even longer history. The first "digital receiver" came along in 1970 and the first software transceiver was implemented in 1988. The term "software defined radio" itself was 15 years old when I joined the hobby and truth be told, it's a fascinating tale, I'll take a look at that at another time.
When I started my amateur journey like every new licensee, I jumped in the deep end and kept swimming. From buying a radio, to discovering and building antennas, from going mobile to doing contests and putting together my home station, all of it done, one step at a time, one progressive experiment after another, significant to me, but hardly world shattering in the scheme of things.
Now that I've been here for a decade I've come to see that my current experiments, mostly software based, are in exactly the same spirit as the circuit builders and scroungers, except that I'm doing this by flipping bits, changing configurations, writing software and solving problems that bear no relation to selecting the correct combination of capacitance and reactance to insert into a circuit just so.
Instead I'm wrestling with compilers, designing virtual machines, sending packets, debugging serial ports and finding new and innovative ways to excite transceivers.
For example, today I spent most of the day attempting to discover why when I generate a WSPR signal in one program, it cannot be decoded by another. If that sounds familiar, that was what I was doing last week too. This time I went back to basics and found tools inside the source code of WSJT-X and started experimenting. I'm still digging.
As an aside I was asked recently why I want to do this with audio files and the short answer is: Little Steps.
I can play an audio file through my Yaesu FT-857d. I can receive that and decode it. That's where I want to start with my PlutoSDR experiments, so when I'm doing this, I can use the same audio file and know that the information can be decoded and that any failure to do so is related to how I'm transmitting it.
Back to soldering irons and software. In my experience as an amateur it's becoming increasingly clear that they're both the same thing, tools for experimentation, with or without burning your fingers.
I'm Onno VK6FLAB
If you like this episode you’ll love
Episode Comments
Generate a badge
Get a badge for your website that links back to this episode
<a href="https://goodpods.com/podcasts/foundations-of-amateur-radio-201138/getting-started-on-wspr-with-a-plutosdr-20260729"> <img src="https://storage.googleapis.com/goodpods-images-bucket/badges/generic-badge-1.svg" alt="listen to getting started on wspr with a plutosdr on goodpods" style="width: 225px" /> </a>
Copy