The 5 things that have revolutionised my Radio Shack

The articles I write for the blog are mostly technical but, I thought it was about time that I wrote this article as it’s been buzzing around inside my head for some time now.

So, what are the 5 things that I have found revolutionary in my shack that have brought new, exciting ideas and projects to life making amateur radio more enjoyable.

1: A RaspberryPi Single Board Computer

RaspberryPi 5 Single Board Computer
RaspberryPi 5 Single Board Computer

Ever since the first RaspberryPi Single Board Computer (SBC) was released I’ve been a huge fan. This little credit card sized number cruncher has been the base for so many projects, it has to be the first on my list.

The RaspberryPi SBC has been through a few iterations since its initial conception and is now powerful enough to take on most tasks that any radio HAM is going to throw at it.

So, what have I done with them?

Well I’ve used them to run Node-Red services for my many web app dashboards that control things like my QO-100 Satellite Ground Station, UPS power monitoring, Internet speed graphs, server and virtual machine monitoring, AllStarLink nodes, hosting websites, building an SDR shortwave receiver, running HAM Clock / Open HAM Clock, developing my own software, hosting virtual machines and a whole host of other fun and interesting things. I’m even writing this article using my RaspberryPi 500+ computer that is my daily desktop PC.

There are an endless number of things you can do with a RaspberryPi to bring new life and functionality to your radio hobby.

Want to get into Amateur TV?
Want to decode digital modes real time?
Want to track aircraft in the sky real time on a virtual radar screen?
Want to search the shortwave bands for stations of interest?
Want to host your own blog and website?

All these things and a lot more are easily within reach with a RaspberryPi.

The RaspberryPi is only limited by your imagination, the more imaginative you are the more your number crunching little friend will do.

2: A 3D Printer

Bambu Lab A1 Combo 3D Printer
Bambu Lab A1 Combo 3D Printer

Every HAM should have a 3D printer. These manufacturing marvels bring a new level of quality, design and simplicity to your HAM radio projects. I’ve found it incredibly useful since venturing into the rabbit hole that is 3D printing. When I think back to the weeks and months of my life I’ve spent making cabinets and boxes out of sheet metal, aluminium or wood for the numerous projects I’ve built over the years, a 3D printer would had made my life so much easier. 3D printing has revolutionised the making of things for the Amateur Radio home brewer.

There’s a multitude of useful things on websites like Printables, Thingiverse , Makerworld and others where you can just download the files and print high quality designs for all those things you’ve wanted to do but, don’t have the time or inclination to craft by hand.

The real satisfaction with 3D printing comes from designing your own things and making them. My first project was to design and print a fan cooling system for my Xiegu XPA125B amplifier.

From the factory the amp is passively cooled and doesn’t take long for the heat-sink to become saturated resulting in a high operating temperature. I was never happy with this and so was determined to resolve the problem.

Getting to grips with TinkerCAD was a bit of a vertical learning curve but, after a few mistakes and design mishaps I soon had it under my belt and pressed on with designing the cooler unit.

Designing the Xiegu XPA125b cooling system using tinkerCAD.
Designing the Xiegu XPA125b cooling system using tinkerCAD.

It’s not until you start designing and manufacturing things that you suddenly realise how much effort goes into them but, I persevered and over the period of about a week or so I had a perfectly fitting, operational cooling system that kept the amp super cool regardless of how long I waffled on for on the HF bands.

Once you’ve got your first design made you suddenly find yourself wanting to improve it and add things. In my case this was adding a Hermes Lite 2 holder to the top of the amp cooler and then a top shelf to hold my cross needle SWR and power meter.

Since then I’ve progressed massively with my designs and have even designed and printed things for other HAMs and family members, it’s totally addictive!

I can highly recommend the Bambu Lab A1 Combo (As shown above). It’s a quality piece of equipment that has operated faultlessly since purchase. Right now it’s printing a case for my RaspberryPi 4, just one of the many projects I’ve used it for since becoming a happy owner.

RaspberryPi 4 case from printables.com
RaspberryPi 4 case from printables.com

Go on, release your inner creativity and treat yourself to a 3D printer, you won’t regret it and it’ll help you bring to life all of those radio projects you’ve dreamt of doing but, never got round to starting.

3: An AllStarLink Node

M0AW AllStarLink Node 61928 sitting on the equipment rack
M0AW AllStarLink Node 61928 sitting on the equipment rack

Many people say that using VOIP over the internet isn’t real radio, I know because I used to be one of those people however, it has become an invaluable resource for keeping in touch with people all over the world.

Being part of an online HAM Radio Community it’s important that as a group we are able to talk to each other regardless of where we live, what bands we have access to and whether there is any propagation.

The AllStarLink (ASL) network gives global FM quality audio no matter where you are in the world. We use it daily for our breakfast net, general chatter throughout the day and even hold a weekly Matrix ASL Net on a Thursday evening.

Using our VHF/UHF handhelds (Real Radios!) and an easy to make AllStarLink Node we’re able to join in with the conversation regardless of propagation, licence type or distance, it really is great for bringing people together.

With devices like the SHARI and AIOC board now being readily available for minimal cost it really is very easy to get onto the AllStarLink network and talk to people even if you live in an antenna restricted location.

Why be alone when you can use the Matrix ASL node ( 642332 ) and join in the conversation.

4: Node-Red

M0AWS - Updated NodeRed QO-100 Dashboard with PTT button
M0AWS – Updated NodeRed QO-100 Dashboard with PTT button

Node-Red is a low-code programming tool for event-driven applications.

Node-RED’s goal is to enable anyone to build applications that collect, transform and visualise their data; building flows that can automate their world. Its low-code nature makes it accessible to users of any background, whether for home automation, industrial control systems or anything in between.

I’ve been using Node-Red for a number of years now and have developed a suite of web app’s that control and monitor just about every aspect of my Amateur Radio hobby and IT infrastructure.

Node-Red forms an integral part of my QO-100 Satellite Ground Station providing control of both the uplink and down link radios whilst synchronising the VFO’s, controlling filter selection and more, all from one simple to use interface using nothing more than a web browser.

It doesn’t stop there, my AllStarLink (ASL) nodes are also managed through a user friendly Node-Red Dashboard that removes all the need for technical know how and makes ASL node management as simple as clicking on a button to connect or disconnect to the many global networks.

Much of this functionality is achieved without writing a single line of code. If you can use a mouse, drag and drop objects on the screen you can develop Node-Red web app’s, it really is that easy.

M0AWS Interactive Log Flow
M0AWS Interactive Log Flow

It doesn’t end there, Node-Red is great for presenting data in easy to digest formats.

Whether it be HAM Radio Log data presented on an interactive world map or monitoring of your server, RaspberryPi, virtual machine or UPS using gauges and graphs, this can all be achieved easily with nothing more than a mouse. There’s no need to spend hours writing thousands of lines of code, just drag and drop a few nodes onto the screen and join them up. You’ll be amazed how easy it is.

I believe every Amateur Radio enthusiast should have Node-Red available in their radio shack. It’s easy to install on your RaspberryPi 4 or 5, Linux or Windows PC and Apple Mac with the same great functionality available on all platforms.

Once you’ve developed your first web app you’ll suddenly find a million more ideas will come into your head and before you know it, you’ll be where I am today with Node-Red at the centre of your radio hobby.

5: A Hermes Lite 2 HF SDR Transceiver

For years I used black box HF radios from the big 3 manufacturers along with the odd radio from the smaller enterprises like TenTec but, they all had their foibles and there was often nothing I could do about it.

My last acquisition from the big 3 was a Yaesu FTDX10, a competent hybrid SDR radio with a good receiver however, the menu system is terrible, the button layout not much better and the user experience not as good as it could be. Of course the software is closed source so there is nothing you can do about it. The radio did its job but, it wasn’t fun to use, it wasn’t what I really wanted and it didn’t put a smile on my face.

I looked at moving to software defined radios (SDR) but, with prices in the many thousands of pounds bracket and the software being closed source I came to the conclusion that they wouldn’t give me what I really wanted either.

So what was it that I was searching for?

Thinking long and hard about it I came to the conclusion that what I really wanted was a radio that gave me the same satisfaction that OpenSource software has given me for decades, namely an HF radio that I have complete control over, from the hardware through to the software and everything in between.

I wanted something that I could tailor to my exact needs. Something that was built using open hardware and open software, something where if I wasn’t happy with it I could change it, improve it and do the things I wanted with it.

At this point my search for the ideal radio headed in a completely different direction.

Xiegu XPA125b Cooler with Hermes Lite 2 cradle - front view
Xiegu XPA125b Cooler with Hermes Lite 2 cradle – front view

The Hermes Lite 2 SDR HF Transceiver (HL2) has been around for a number of years. I was first introduced to it by Michael, DK1MI and then Roger, G8VLR via the Matrix. Both Michael and Roger use the HL2 on a regular basis and have often waxed lyrical about how good it is.

Being designed by radio amateurs for radio amateurs it’s based on an open architecture from the ground up. Being an OpenSource junky this really appealed to me and as I looked deeper into it from both a hardware and software point of view I soon realised that it had the potential to be exactly what I was looking for.

It wasn’t long before I found myself on the Makerfabs website placing an order for the HL2 mainboard, filter board, I/O board and case. A couple of weeks later it arrived and I dived head first into the SDR rabbit hole.

2 years later and the HL2 has become my main HF radio in the shack. Partnered with a Xiegu XPA125B amplifier and PiHPSDR software running on my Kubuntu Linux PC it is everything I have been looking for in an HF radio.

I’ve made modifications to the software to suit my operating style and needs with the user interface being exactly how I want it, no unnecessary buttons or knobs, just the controls that I use on a daily basis cleanly placed in a logical, easy to use layout, the way I want it.

My understanding of software defined radio and how it works has improved a hundred fold. Having access to the software and being able to go through the code and understand the architecture has been an interesting journey and one that has enhanced my radio enjoyment considerably. I now have a smile on my face every time I go on air.

Do I miss the FTDX10?

No, not in the slightest!

So, those are the 5 things that I feel have revolutionised my radio amateur hobby and made it a more enjoyable experience. I’m sure over time I will add to this list as I venture down future rabbit holes in our wonderful radio hobby.

More soon …

FreeDV audio routing with PiHPSDR and Hermes Lite 2

I’ve recently been trying out the FreeDV RADEv1 digital voice mode on the HF bands with great success. The audio quality is astounding when compared to the normal analog SSB mode. Using only 20w I’ve been surprised how successful I’ve been talking to stations in the UK and Europe as can be seen in my FreeDV Log.

FreeDV has been around for quite a few years with development being funded by an ARDC grant and financial sponsorship from the Software Freedom Conservancy.

So what is FreeDV?

To quote the FreeDV website:

FreeDV is a suite of digital voice modes for HF radio. Our flagship mode is the Radio Autoencoder (RADE). You can run RADE using a free GUI application for Windows, Linux and macOS that allows any SSB radio to be used for high quality digital voice.

And the most important part:

All software is open source, released under the (a) GNU Lesser Public License version 2.1 (GUI and legacy FreeDV modes) and two-clause BSD license (RADE).

FreeDV running under KDE-Plasma on Kubuntu PC
FreeDV running under KDE-Plasma on Kubuntu PC

Looking at the digital voice (DV) community in the HAM Radio world, it’s stuffed full with proprietary DV modes from small software houses and black box transceiver manufacturers with no real OpenSource alternatives, until now.

Installing FreeDV is pretty simple regardless of which operating system (O/S) you use. Being a Linux user I grabbed the AppImage from the website and set about reading up on how it works and how it is configured.

I decided to take the two sound card approach since I have 2 USB sound cards connected to my shack Kubuntu Linux PC.

Configuring the audio routing isn’t straight forward as both the receive and transmit audio to/from the radio needs to be routed via the FreeDV app. To make this even more complicated I am using my Hermes Lite 2 SDR transceiver and PiHPSDR software, a complete OpenSource/OpenHardware Amateur Radio Station.

M0AWS FreeDV and PiHPSDR Audio Routing Diagram
M0AWS FreeDV and PiHPSDR Audio Routing Diagram

Trying to clearly describe the audio routing using words alone would be impossible and very confusing so, I put together the diagram above.

Using two USB sound cards I’ve configured the system such that USB Sound Card 1 (an old Griffin iMic USB sound device) handles just the audio from/to the headphones and microphone. All the audio at this point in the system is analogue.

The second USB sound card, a cheap Plug and Play (PNP) USB audio device from Amazon, handles all the digitised signals from/to FreeDV and PiHPSDR.

Taking this 2 sound card approach keeps confusion to a minimum and separates the analogue and digital components of the audio routing.

So, how does this translate to the FreeDV and PiHPSDR audio settings?

Transmit Audio Chain

FreeDV Transmit Audio Settings

Starting at the beginning of the transmit audio chain, let’s look at the transmit audio settings in FreeDV.

Looking at the FreeDV Transmit audio settings screenshot below we can see that the
Input From Microphone to Computer device is set to:

alsa_input.usb-Griffin_Technology_Inc_iMic_USB_audio_system-00.analog-stereo

This is the microphone connection on the iMic USB device (USB Sound Card 1) and is the analogue transmit audio input to FreeDV.

The Output From Computer to Radio device is set to:

alsa_output.usb-0c76_USB_PnP_Audio_Device-00.analog-stereo

This is the digitised audio output from FreeDV (via USB Sound Card 2) to PiHPSDR and is used as the transmit audio that is sent to the Hermes Lite 2 transceiver.

FreeDV Transmit Audio Settings
FreeDV Transmit Audio Settings

PiHPSDR Transmit Audio Setting

To complete the transmit audio path we next need to look at the PiHPSDR transmit audio setting.

PiHPSDR Transmit Audio Settings
PiHPSDR Transmit Audio Settings

As can be seen in the screenshot above, the Local Microphone device in PiHPSDR is set to the Monitor of USB PnP Audio Device Analogue Stereo.

This effectively routes the digitised output audio from FreeDV (Output From Computer to Radio device) to the Input audio of PiHPSDR.

The reason for using the Monitor audio feed is because FreeDV does not recognise the Mic Input in PiHPSDR as a valid output device for FreeDV to use, hence we just need to monitor the FreeDV output device and use it as our input audio device in PiHPSDR.

This completes the transmit audio chain.

Receive Audio Chain

PiHPSDR Receive Audio Setting

Starting at the beginning of the receive audio chain we first look at the PiHPSDR receive audio setting.

PiHPSDR Receive Audio Setting
PiHPSDR Receive Audio Setting

In the screenshot above we can see that the receive audio output from PiHPSDR is set to
USB PnP Audio Device Analogue Stereo (USB Sound Card2). This is the DX station’s digitised audio as received by the Hermes Lite 2.

FreeDV Receive Audio Settings

Next let’s look at the receive audio setting in FreeDV.

FreeDV Receive Audio Settings
FreeDV Receive Audio Settings

The Input To Computer from Radio device is set to the monitor of the
USB PnP Audio Output Device:

alsa_output_usb_0c76_USB_PnP_Audio_Device-00.analog-stereo.monitor

This effectively routes the digitised audio output from the PiHPSDR receiver to the digitised audio input of FreeDV.

Once again we have to use the monitor of the USB PnP Audio Output device as FreeDV does not recognise the PiHPSDR output as a valid input device.

Next, the Output From Computer To Speaker/Headphones device is set to:

alsa_output.usb-Griffin_Technology_Inc_iMic_USB_audio_system-00.analog-stereo

This is the analogue audio output on the iMic USB Sound card (Sound Card 1) that routes the analogue audio to the headphones and completes the receive audio chain.

Summary

The audio routing required by FreeDV can appear very daunting when first attempting to configure it on the Linux platform but, hopefully the diagram and screenshots above will help in understanding the complete end-to-end audio chain that is required to make this mode work.

PiHPSDR can of course be replaced by your black box radio CODEC entries that will appear in the device lists shown above if you have your radio connected via USB. The config is basically the same but, just uses a different device instead of USB sound card 2 shown in the diagram above.

I hope this article is useful to those wanting to try FreeDV on the Linux platform and I look forward to hearing you on RADEv1.

More soon …