I’ve recently built a new AllStarLink (ASL) node for my MB7IBW gateway that I have recently brought up on air on the 2m band.
AllStarLink 3 has a lot of changes in it when compared to the previous version and this of course impacts my Node-Red Control Dashboard that I’ve been using to manage my first ASL node for well over a year now.
To build the node I used the RaspberryPi imager and added the AllStarlink 3 image as detailed on the allstarlink.org website.
Installing the system this way makes it pretty easy compared to previous installs but, it comes with some quirks which cause issues with Node-Red.
From the outset the plan has always been to have AllStartLink 3 and Node-Red running on the same Pi4 to keep it totally self contained. This was easy enough to achieve and works without issue.
Node-Red Control Dashboard for AllStarLink 3
Installing Node-Red onto a Pi4 is really easy and is fully documented on the Node-Red Website.
Once the AllStarLink 3 operating system was installed on my SD card, booted and operational I installed Node-Red. I soon realised that there were a few things I had to do before loading the Node-Red flow.
AllStarLink 3 no longer logs connect and disconnect messages in the connectlog like it did in AllStarLink 2. To get logging working again I had to create two new BASH scripts as detailed below and put them into /etc/asterisk/myscripts.
For the connect information I created the BASH script as detailed below.
Next I disabled the temporary filesystems that are used by default for the apache and asterisk logging as it’s useful to keep the apache logs for debugging and I needed the asterisk logs for the Node-Red dashboard.
Disabling the temporary file system is very easy to do, just edit the /etc/fstab and comment out the two lines as shown below.
# Comment out the next line for persistent Apache logs
#tmpfs /var/log/apache2 tmpfs defaults,noatime,nosuid,nodev,noexec,mode=0775,size=32M 0 0
# Comment out the next line for persistent Asterisk logs
#tmpfs /var/log/asterisk tmpfs defaults,noatime,nosuid,nodev,noexec,mode=0775,size=32M,uid=102,gid=106 0 0
# Note: These lines are wrapped, should be on 1 line in the /etc/fstab
Once the entries in the /etc/fstab were commented out I rebooted the Pi4 to get persistent filesystems.
The final thing that had to be done was to allow user repeater to use sudo without a password so that it could be used to perform reboot/shutdown/process restart as user root from within the dashboard.
# /etc/sudoers
# Allow repeater sudo without password
repeater ALL=(ALL) NOPASSWD: ALL
Once this was all done I imported the Node-Red flow, configured the SSH nodes with login credentials for the Pi4 (important to use the user repeater for SSH), clicked deploy and the dashboard was ready for use.
Node Red AllStarLink3 Control Dashboard Flow
I’ve been using the dashboard for a few weeks now and it’s running perfectly, without error.
If you want to build your own Node-Red Control Dashboard for your AllStarLink 3 node then, just download the flow using the button below and import it into your flow editor.
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
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
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.
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
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
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
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
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
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.
I’m sure there are many radio amateurs around the world today who have an old handheld radio sat on the shelf that works perfectly but, has been replaced by a new, shiny, all singing, all dancing model that gets used on a daily basis. I for one have fallen into this trap with the recent purchase of a very nice Wouxun KG-UV9K full duplex 2m and 70cm handheld.
On my shelf there is a cheap Retevis RT85 that gave sterling service for a number of years and even today is ready to continue that service, if only I had a need?
Well now I do!
Currently I have an AllStarLink node running on a RaspberryPi 3b connected to a SHARI device that operates on the 70cm band. This node works great and gives me the ability to chat with people all over the world from my trusty handheld. It does of course also give me access to the weekly Matrix AllStarLink Net that happens on our Matrix node ( 642332 ) every Thursday evening at 20:00 UK time, a great way of bringing the Matrix HAM Radio community together regardless of propagation.
For some time I’ve been wanting to bring another AllStarLink node online so that I can have a connection to HUBNET/FreeNet whilst keeping my current node connected to the Matrix node for our regular daily chats. Since my new Wouxun handheld is a full duplex unit it makes sense to bring a new node up on the 2m band as I can then monitor both at the same time easily. I do have a spare SHARI node however, it’s a UHF only unit and I don’t want another node on the 70cm band. This is where the old Retevis RT85 comes in to play.
The AIOC board really is tiny but, beautifully put together. The four large solder pads on the top and more on the underside are positioned such that the TRS plug solder lugs line up perfectly for soldering. Attempting to do this by hand would be impossible as it’s critical that the spacing between the two connectors matches that of the spacing of the sockets on the radio.
AIOC Solder Jig.
Searching online I found a very handy soldering jig on Github that enables you to hold both the TRS connectors and AIOC board in the perfect position for soldering.
Downloading the .STL file I quickly printed off a solder jig on my Bambu Lab A1 Combo 3D printer and fitted the components into place ready for soldering.
Fitting TRS connectors into the AIOC solder jigFitting AIOC board into the solder jig.
Everything fitted rather snugly into the jig and I soon had the board and connectors soldered together. Test fitting to my Retevis RT85 I found the TRS plugs lined up perfectly and it slid into the sockets with ease.
I then thought about designing a case for the AIOC board so that the bare circuit was nicely protected but, quickly searched online and found that NA6D has already designed a case and made the .STL available publicly for download on Printable.com. I quickly grabbed a copy of the file and punted it off to my 3D printer to get to work on.
3D print NA6D AIOC case.
Once the print was complete I fitted the AIOC board and snapped it together ready for testing.
Fitting the AIOC into the 3D printed case.AIOC case with 2 x TRS connectors in place.AIOC case USB-C view
Now that the AIOC was production ready I moved on to getting the latest version of AllStarLink onto my RaspberryPi 4 that I had taken out of my RadioBerry based shortwave receiver that I am going to upgrade to a Hermes Lite 2 in a later project. The RaspberryPi 4 is perfect for AllStarLink 3, a 64bit app and operating system.
Using the RaspberryPi Imager I pulled the image down onto an SD card and slipped it into my Pi4. ( Instructions on how to do this are on the AllStarLink website here )
Booting the Pi4 for the first time I found that it went through a number of reboot and configuration cycles before it was ready for use.
AIOC connected to the Retevis RT85.AIOC connected to the Retevis RT85.
Once ready I went through all the normal configuration of the Pi4 namely, static IP assignment, timezone config, security, port forwarding etc etc.
Having configured an AllStarLink node for myself and only just a few days ago for another HAM I was pretty familiar with the setup. Wanting to make sure there were no “gotcha’s” I also watched a couple of KM9G’s videos on Youtube to make sure I wasn’t missing anything.
Using the asl-menu command line app as user root I set about configuring Asterisk to work with the AIOC board. Much to my frustration I could not get Asterisk to recognise the AIOC board as an available sound device. I checked and double checked all the settings ensuring that I had selected “AIOC” in the available devices menu but found that Asterisk constantly errored saying it could not find the selected audio device. This went on for a whole day without success and so, I decided to put it to one side and come back to it later, a method I found that often worked.
A couple of days later I revisited the problem and had decided to take a different approach. Rather than continue going through the asl-menu app I decided to drop down to a lower level and go through the asterisk config files in the /etc/asterisk directory.
It wasn’t long before I found a file called res_usbradio.conf. Inside this file was the config for the AIOC board however, it was all commented out which meant it was disabled.
I’m guessing here but, I imagine this is what should get enabled when selecting AIOC in the available devices menu in the asl-menu command line app but, for some reason it doesn’t happen.
[general]
;usb_devices = 1209:7388 ;comma delimited list of usb
;descriptors to allow.
;format vvvv:pppp in hexadecimal
;vvvv=vendor id, pppp=product id
;
;1209:7388 = AIOC (all in one cable)
Above is the disabled configuration which is easily edited to enable the AIOC device as shown below.
[general]
usb_devices = 1209:7388 ;comma delimited list of usb
;descriptors to allow.
;format vvvv:pppp in hexadecimal
;vvvv=vendor id, pppp=product id
;
1209:7388 = AIOC (all in one cable)
Once the updated file had been saved and I restarted Asterisk using systemctl the AIOC burst into life and Asterisk recognised it immediately. The Retevis RT85 switched between TX and RX and I was ready to check out the audio.
Setting the volume levels for both RX and TX via the command line tuning app I connected the node to my already existing node. Sure enough the two nodes connected without error and I was able to send and receive audio between them via the AllStarLink net.
Connecting the new node to the parrot I checked the audio levels to ensure it sounded ok and then connected it to the Matrix node where I had a brief chat with Ben, M8TKK.
All that is left to do now is to 3D print a case for the Pi4 so that it isn’t left naked and at risk of being shorted out on conductive surfaces and it’ll be ready for service.
I also plan to build another AllStarLink node using a 4m band handheld and another AIOC board and then will apply for MB7Ixx callsigns for the two new nodes. This will hopefully help to bring some life to the 2m/4m bands locally and introduce HAM’s both to the weekly Matrix Net and HUBNet/FreeStar via AllStarLink.
Checking the ISS pass data I could see it was going to be a good pass for me to listen and so I setup my Wouxun KG-UV980P quad bander on 145.800Mhz to see if I could hear Jack.
Having only a Diamond V2000 vertical antenna, I don’t have the best station for satellite communications however, it has worked well in the past.
Sure enough, as the ISS approached the UK from the South West and reached 2deg above the horizon the signal started coming through. Below is the video I took of the pass.
I ended the video at 6min and 35sec as I thought I’d lost the satellite as it was out to the East over Russia and blocked by farm buildings near my QTH however, once I stopped videoing I remembered to move the VFO down 5Khz and sure enough I was able to hear the ISS right up until the point that Jack signed and ended the QSO.
I really should try to see if I can get some QSO’s via the ISS FM Repeater as the received signal really is very good. Whether the transmitted signal would be as good remains to be seen.
For some time I’ve wanted a full duplex 2m/70cm handheld so I could have a go at working the LEO FM satellites during the summer months from the garden.
Searching through all the handhelds available today I came across the Wouxun KG-UV9K dual band, full duplex VHF/UHF radio.
Since I already own a Wouxun KG-UV980PL Quad bander (6/4/2m & 70cm) I’m familiar with the menu system and the very good build quality so I decided to research it further.
Wouxun KG-UV9K Full Duplex Handheld
Looking at the spec for the handheld it does everything I want and more whilst being reasonably priced.
Jumping onto the Martin Lynch and Sons website I found there were two listings, the radio on its own or the “Pro Pack”.
The radio on its own was £79.00 but, the Pro Pack was only £20 more at £99.00 and came with every option available for the handheld including a programming cable, 2 batteries and a rather nice carry case.
Wouxun KG-UV9K Pro Pack
The full specification and other details for the “Pro Pack” can be found on the ML&S website but, here’s a brief summary:
Pro pack contains:
KG-UV9K Transceiver with 2 antennas
Two batteries Two belt-clips Software and transfer data Cable Fast charger dock and Power Supply Hand speaker mic Battery eliminator Manual Wrist strap Leather case In-car charger SMA-SO239 adaptor Hands-Free kit
Like my Wouxun quad bander the handheld can also be configured as a cross-band repeater, something I’ve not yet found a use for but an interesting feature. Of course being a full duplex radio with two receivers you can listen to signals on 2m and 70cm simultaneously or transmit on one and listen on the other, a feature I’ve wanted for LEO satellite operations.
The radio is really easy to programme using CHIRP and easy to setup via the very logical menu layout. The hand held has a good solid feel to it and I’ve found the battery lasts a good 3-4 days even though I use it to chat with other stations via my AllStarLink node most mornings and the radio is left monitoring all day.
The larger of the two supplied antennas works extremely well having a relatively good gain. I can now easily get into my two local repeaters on 2m & 70cm from within the house, something I’ve never been able to do with my old Retevis RT85 even with a high gain antenna on it.
The receivers in the UV9K are head and shoulders better than that of the Retevis RT85, I’m hearing signals much stronger now and can even get into repeaters that I’ve never even heard on the old Retevis handheld.
The display on the Wouxun is bright and easy to read, even in bright sunshine which is great as I plan to use it outside a lot during the summer months.
The supplied speaker mic gets good unsolicited audio reports on transmit and has clear audio on receive with plenty of volume. The speaker mic doesn’t have any radio control buttons on it sadly, something I really like about the Wouxun UV980PL quad bander as you can control every aspect of the radio without touching the front panel. Would be a nice upgrade for the handheld if it every became available.
Overall I’m really impressed with the Wouxun UV9K Pro Pack. The radio performs very well, comes with every optional extra available and is a bargain at just £99.00.
If you’re looking for a full duplex handheld radio then I recommend you grab the Pro Pack before the offer ends.
Following on from my previous article on using Node-Red to build interactive log maps I’ve now reworked the flow to make it more efficient with less Javascript.
The original flow had a function that handled the issue of FT4 contacts being recorded in two different ways depending on which app you use for your FT4/8 operations.
<mode:4>MFSK <submode:3>FT4
or
<mode:8>MFSK FT4
The code I wrote to handle this wasn’t particularly elegant and so I decided to remove the code entirely and just use a simple change node.
M0AWS New node to handle FT4 more efficiently
This is the great thing about Node-Red, there’s always more than one way to do something.
With this fix in place and the old code stripped out of the format generic payload function, the new flow is much tidier and easier to comprehend.
M0AWs Updated ADI Log Map flow
With testing complete and the two maps now live on my website the flow is finally ready for release into the wild.
If you fancy presenting your ADIF logs in a more visual, interactive format then just download the flow below and import it into your Node-Red flow editor.
Don’t forget that you will need to change the path to the log files in the file read nodes to suit your setup and change the location data in the My QTH trigger to match your callsign and location. Other than this the flow should just work.
I’ve not been on the radio much over the last few weeks as I’ve had my head down other radio related rabbit holes.
One of the rabbit holes is a Node-Red project to make my online logs a little more interactive. For sometime now my logs have been displayed on my website as nicely formatted, searchable HTML pages however, they don’t really allow the viewer (myself included) to see the global coverage of all the contacts so, I decided to write a Node-Red flow that would do just that.
M0AWS Interactive Log Flow
The flow itself isn’t too complicated and basically consists of reading in the individual ADIF formatted log files, processing the data and then sending the data in the correct format to the map node for display.
I’ve had to write a few functions to handle the processing of the ADIF formatted data but, these aren’t particularly complex and are fairly easy to understand even if like me, you’re not a Javascript programmer.
The flow is working perfectly however, I’m in the process of reworking the format generic payload function to reduce the amount of code and make it more efficient.
M0AWS SSB / CW / FreeDV Interactive Log World Map
M0AWS Interactive Log Map Layers Menu
The flow generates two maps, one for voice / CW /Satellite contacts and the other for WSJT-X FT4/8 contacts. Every pin on the map is colour coded by band with satellite contacts being denoted by a satellite icon.
Each pin / icon on the map is clickable and reveals the data of the QSO being displayed.
In the top right-hand corner of the map there is a drop down layermenu that allows the viewer to filter by band thus reducing the number of icons on the screen at any one time.
Seeing the data presented on a map really brings my logs alive. An example of this is that I had no idea I’d worked so many stations in India on the QO-100 Satellite.
The small icons in the pins show a microphone for SSB/FM/FreeDV contacts and a downwards pointing triangle in a box for CW contacts. Sadly I couldn’t find a Morse key icon in the collection available.
M0AWS filtered view of QO-100 Satellite contacts
I only use FT4/8 for testing new antenna designs however, it’s interesting to see the global coverage accomplished with this weak signal mode.
M0AWS WSJT-X FT4/8 Interactive Log World Map
Once I’ve finished rewriting the format generic payload function I will make the flow available for download here so that others can also create an interactive view of their radio logs.
If you want to have a look at the maps and try them out for yourself, they are available under the Logs menu above.
This Node-Red instance is running in a virtual machine (VM) on a 16GB RAM RaspberryPi 5 that is also running a number of other VMs at the same time so, it’s safe to say it’s not heavy on CPU and will run on the older Pi4 as well.
Back in January 2025 I wrote an article about a little RadioBerry Project I’d started that was based around a very old Philips 170A-15 receiver from 1946.
The idea of the project was to build a nice shortwave receiver for the radio shack based around the RadioBerry HAT on a RaspberryPi 4 housed in a vintage receiver cabinet.
The project has taken longer than I imagined due to getting side-tracked by other projects that I already had ongoing.
With the original internals removed there’s plenty of room inside for the RadioBerry, RaspberryPi 4 and the small 15w audio amplifier. The audio is delivered via a pair of Celestion speakers that I had that were originally part of an old surround sound TV system.
Power distribution is achieved very simply using a multi-plug adapter that also has USB A connections in it. The whole thing is then powered via one 240v mains cable.
The screen fits over the original opening for the glass tuning display and is held in place by two mounting screws on the rear of the LCD panel.
I purchased some new speaker grill cloth from Amazon and remade the speaker grill front with cut outs for the speakers. It looks really tidy and matches the rest of the bakelite cabinet nicely.
1946 Philips 170A-15 Shortwave Receiver RadioBerry HAT on RaspberryPi 4
To finish the project off I need to purchase 3 rotary encoders so that I can have a VFO knob and two more knobs for other things (to be determined). The Volume control is already in place with the original knob fitted to it. It will be nice to complete the 4 knob line up.
I had to make a couple of fittings top and bottom to hold the original rear panel in place but, it worked out just fine and I only had to fit an SO239 antenna connector and ethernet RJ45 port so that it can be connected to my local LAN.
Receiving radio Caroline on 648Khz
The audio quality from the little RadioBerry and 15w amp is pretty good. With the speakers hidden nicely behind the refurbished speaker grill the project looks quite tidy!
It also makes a great receiver for the HAM bands with it’s coverage of 100Khz to 30Mhz.
The DL1YCF Enhanced fork of PiHPSDR works really well on the touchscreen and provides a modern control interface to the RadioBerry HAT.
Listening to the 20m HAM Band
I’ll drop a final article once I have purchased the 3 rotary encoders to fill the 3 remaining holes in the front of the cabinet.
Sometime back I purchased a RadioBerry HAT for my RaspberryPi 4 single board computer (SBC) to use as an experimental platform to test PiHPSDR software modifications and to test changes to the actual RadioBerry software. With these two projects completed I decided that the receiver on the RadioBerry was so good it would be a shame not to put it to good use.
RadioBerry HAT
For many decades I’ve been an avid Short Wave Listener (SWL) but, haven’t had a general coverage receiver for many years. The RadioBerry fills this gap in my radio lineup perfectly but, needs to be put into a suitable cabinet with speakers, display, control knobs and antenna connections.
Rather than just buy another bland square box I decided it would be nice to repurpose an old, vintage radio receiver from a bygone era and bring it into the 21st Century.
1946 Philips valve radio receiver
After much searching on the popular auction sites online I eventually found the perfect old receiver for the project, a vintage Philips 170A-15 valve receiver from 1946.
This lovely old Art Deco looking receiver is made from Bakelite which was an early type of plastic made from phenol-formaldehyde resin, obtained from coal tar and methanol.
The full specification for the receiver can be found on the Radio Museum Website.
Sadly this is a non working example of this lovely old receiver and so I don’t feel so guilty stripping it out and replacing it’s internals with the RadioBerry.
1946 Philips receiver Serial Number plate1946 Philips receiver Licence Plate
Having the original serial number and Licence plate on the radio is nice, it also makes it easy to search for information about the old receiver.
One nice thing I did discover during the disassembly of the receiver was the signature of the person that put the radio together during manufacture on the inside of the Bakelite cabinet.
1946 Philips receiver builder signature
Getting the internals out of the cabinet was fun, so many little screws holding the old valve electronics and tuning display in place.
1946 Philips Receiver – Internal View1946 Philips receiver – removing the original control knobs
Once the electrical part of the radio was removed I gained access to the old speaker that was fitted to the front panel of the receiver. Unfortunately the speaker cone had a tear in it rendering it useless so I’ll need to get a new speaker(s) for the rebuild.
1946 Philips receiver speaker view
Once I got the speaker and fittings removed I set about cleaning the cabinet inside and out to remove the 79 years worth of dirt and grime that had collected within. The fascia of the receiver cabinet seems to have lost it’s shine and will need to be polished to get it back to it’s original beauty.
79 years worth of grime and dirt to be removed!Washing the Bakelite receiver case
It took 5 lots of fresh water and washing up liquid to get the cabinet clean. The first three lots of water looked like mud in no time at all such was the state of the cabinet.
With the cabinet now cleaned and put to one side to dry thoroughly I have started to search for the best type of polish to use to put the sheen back onto it.
Once I’ve got the cabinet looking good again I’ll start fitting the new internals. I also need to find a source for a new piece of material to cover the speaker hole at the front of the cabinet as the original material is looking somewhat tired.
The old Philips Emblem from 1946 on the receiver case
Since I’ve had my Hermes Lite 2 (HL2) and Xiegu XPA125B amplifier combo I’ve had to manually change the band setting on the amp as I never purchased the HL2 I/O board when I initially purchased the kit.
At the time I didn’t think I would need it but, changing band manually on the amp (and sometimes forgetting causing tuning issues) is a nuisance and so I put my hand in my pocket once again and ordered the I/O board for the HL2.
Hermes Lite 2 I/O Board
The HL2 I/O board is a small RaspberryPi Pico controlled device that can be used for a multitude of functions depending on the software loaded. Many people are writing their own software for the Pico to do things like control transverters, remote antenna switches, amplifiers and just about anything else you can think of. It’s a really versatile little add on board for the HL2.
The I/O board arrived after about 10 days from Makerfabs, all nicely packaged as always. Unfortunately due to Christmas, New year and other priorities it’s sat in the box since it arrived.
A couple of days ago I finally got round to getting it out of the box and set about configuring it to control the Xiegu amp.
The Xiegu amp needs three connections from the I/O board. They are PTT, Band Switching Voltage and Ground. These are easily accessed from the I/O board via 3 jumper wires to connect to the DB9 connector on the rear of the board.
The other thing that is required is some software for the RaspberryPi Pico to control the whole process. Steve, M0XVT has kindly supplied me with a copy of the software.
Soldering the jumpers from the relevant points on the circuit board to the DB9 connector was pretty straight forward. You can use any of the pins on the DB9 connector that you like as from the factory the DB9 connector isn’t connected to anything. I decided to use pins 2, 6 and 8 and so will refer to those pins from this point forward.
HL2 I/O Board Jumpers
I used a different colour for each of the jumpers so that I knew which jumper was for which connection. The colours used also match the colours of the wire in the old RS232 serial lead that I cannibalized to make the connection between the I/O board and the amp thus making it easy to ensure continuity.
The colours are as follows:
Black Jumper - Ground - Pin 2 on DB9 Connector
White Jumper - PTT - Pin 6 on DB9 Connector
Red Jumper - Band Control - Pin 8 on DB9 Connector
The I/O board gets its power feed directly from the HL2 main board however, the 3 pins it needs to connect to don’t have any headers in place and so, it’s necessary to solder a short row of 3 header pins onto the HL2 main board.
I found the easiest way to do this was to put the 3 header pins into the correct position and then use the HL2 to N2ADR filter board connector to hold them in place whilst soldering. This worked perfectly and I soon had the header pins soldered onto the main board.
Extra 3 header pins soldered to the main HL2 board
It’s important to note that the 3 extra header pins need to be placed 2 holes away from existing header pins as shown above. Take care to get these pins in the right position so as not to cause any damage to the 3 circuit boards once all are connected and powered up.
Note: The HL2 main board must be removed from the case to solder the extra 3 header pins in place. Take care to ensure the correct fitting of the PA heatsink when when refitting the HL2 main board into the case.
At this point I refitted the N2ADR Filter board back into the HL2 case so that the two sets of header pins aligned correctly ready for the placement of the new I/O board that would connect all 3 circuit boards together.
Preparing the N2ADR Filter board for reconnection
Once the filter board was in place I fitted the new I/O board taking care to ensure all pins aligned with the socket and then gently pushed it home.
Close up of the HL2 I/O board fitted to the main HL2 board and N2ADR Filter board
The close up of the I/O board connector above shows how the extra 3 header pins connect to the last 3 sockets in the I/O board connector. It’s a snug fit with the N2ADR filter board below it.
View of the fitted HL2 I/O board from above
Before the HL2 case can be put back together it’s necessary to load the software onto the RaspberryPi Pico (top left in photo above) that controls the I/O board.
This is accomplished by pressing the tiny button on the Pico whilst connecting a USB lead to the USB socket on the board that had already been plugged into my PC. Once connected the Pico appeared as a USB drive on my Kubuntu Linux desktop. All I then had to do was to copy the software file onto the drive. Once the software file is on the drive the Pico will reboot automatically and the little LED on the board will start to flash to show it has booted successfully. At this point I could safely unplug the USB cable.
The software for the RaspberryPi Pico is available for download below.
The I/O board comes with a new back panel for the HL2 to accommodate the extra connectors on the rear. Refit the top of the HL2 case and then attach the new rear panel using the original 4 counter sunk screws.
Supplied HL2 I/O board replacement rear panel fitted to the case
The final part of this project is to make the lead that will go from the HL2 rear DB9 ACC connector to the Xiegu XPA125B mini din ACC socket.
DB9 Pin 2 (BLACK) to Mini Din Pin 6 (GND)
DB9 Pin 6 (WHITE) to mini Din Pin 2 (PTT)
DB9 Pin 8 (RED) to Mini Din Pin 3 (Band Switching Voltage)
Below are a couple of screenshots from the Xiegu XPA125B user manual showing the Mini Din pin layout and the data interface connections for the amplifier.
Before I connected the lead to the two devices, I tested the end-to-end continuity of the lead to ensure all pins were correctly connected and that there were no shorts between any of the pins.
It’s important that the wires are connected to the correct pins on each end of the lead. Failure to ensure correct connection could cause damage to your HL2 and/or amplifier.
Once the lead had been tested, I connected it to both the Hermes Lite 2 and the Xiegu XPA125B amplifier. I also had to switch the amplifier band switching to AUTO.
Now when I change band on my HL2 in the PiHPSDR software the amplifier also changes band at the same time keeping the two devices in sync. No more manual band changing for me!
I hope this article is of use to other Hermes Lite 2 users who have purchased the Xiegu XPA125B but, have yet to setup auto band switching between the two devices.
Thanks to Steve, M0XVT for all the jumper information and the RaspberryPi Pico Software to get this all working.
UPDATE: The RaspberryPi Pico software originally came from Ramon, KP4RX. More information can found in this Google Groups article where he released the binary into the wild.
A full table of I/O resources available on the HL2 I/O board can be found on the KP4RX Guthub page.
The source code for the main.uf2 file above can be found at KP4RX.com
More soon …
We use cookies to ensure that we give you the best experience on our website. If you continue to use this site we will assume that you are happy with it.