HAB Telemetry – Design & Evolution

In a recent post I wrote about experiments with a Pine A64 running the Project Horus 4FSK binary and Wenet decoders. The next steps were to work out exactly I was going to build.

Systems Diagram

Designing systems is an iterative process, you start with an idea and then modify and adapt as pieces are found and problems are solved. From the outset I wanted to build a HAB Telemetry system that could track the majority of telemetry that the Project Horus Balloon flew, this being the primary and secondary 4FSK binary telemetry and Wenet. There are times when primary and secondary Wenet systems are also flown, so allowances for two Wenet decoders were made.

I wanted this system in a box, that I could take out of the car, place on a table, switch on and magically decode the telemetry from the Balloon. Having everything setup, configured and running, before going into the field, means that less time is lost debugging faulty cables, forgetting where and how to plug things together or worse still chasing down rogue software updates.

A picture speaks a thousand words, so below is a block diagram of what I proposed to build, that would suit my needs above. This was a culmination of the equipment I found rummaging around in my shed, rediscovering more treasures and realising I had only two Pine A64’s and needed three.

Design Evolution

The first “prototype” system was thrown together for the Horus 58 flight, which consisted of the two Pine A64’s I had, some RTL-SDR’s and some Mikrotik routers to get the data out and onto the internet. Here you can see some “design for but not with”, where I’ve left a space for a third Pine A64 that I was yet to find.

On this “first” flight I was rushed for time and didn’t have time to sort out an antenna. I usually track balloons with Peter VK5KX, so I was intending to plug my box into his beam, but due to leaving a RF adapter behind, I instead used a separate 70cm Turn Style antenna mounted to the side of Peters car. Both Peter and I were surprised just how well this simple antenna worked, so the whole idea of a Turn Style antenna, remote mounted preamp sitting a top an Aldi Bike Stand was born. You can see this antenna system I built for the SHSSP 2023 flight below, again all from my junk box and rediscovered treasures.

Knowing that I needed another Pine A64, I reached out within my local radio club to see if any of these SBC’s might be languishing on other junk boxes. I’ll give a shout out to Josh VK4JNA who gifted me the third Pine A64 in the photo below. It too was the KickStarter model sporting 2GB of RAM and came with the optional WiFi interface.

It was also during these first flights both Horus 58 and the SHSSP 2023, that after a period of time the software decoders would crash or lockup and stop responding. This wasn’t hard to find by placing ones finger on top of the processor, they were getting too hot and were thermally throttling the clock until the software maxed out the processor and crashed. This was more of a problem for Wenet systems than the 4FSK binary telemetry. Adding some stick on heat sinks didn’t improve things either, it just let them run for a further 10-15 minutes before crashing again. So it was from this that the PineA64Fan project was started, that added a separate software controllable Fan and a DC-DC converter. I’ll go into further detail about this fan controller and power supply in a later post, as it on it’s own has a great story to tell.

I was also thinking of how to power this unit in the field without purchasing a separate Lithium battery. I was watching YouTube one afternoon when I saw someone powering their 100W HF Radio from a Ryobi 19V battery using a DC-DC converter. What a great idea !!! When designing the PineA64Fan I used a DC-DC converter that matched the Mikrotik router input voltage range of 9-30V DC. This meant everything in the box would work nicely from from my 19V Makita batteries I have for my power tools that sit in the shed and are only used on weekends. With 90Wh of storage, this could easily power this entire box for the duration of a balloon flight, which is typically 4 hrs or less.

So below is the photo that finally realises the system diagram above.

Here we have three Pine A64 SBC’s each with their own RTL-SDR. There are Mikrotik routers to connect the software decoders to the outside world and let them upload the data to the internet. All three Pine A64’s are rocking custom DC-DC converters and software controllable fans, that chime in and out as the processor temp gets above 50°C. As can be seen in the lower right of the case a Bias-T DC injector is used to power the LNA up by the antenna and the SDR’s are connected by a surplus 4-way splitter. Perfect, at least for now.

Next Steps

The system above was realised just before the Horus 60 flight in August of 2023. Which was a special event to celebrate the Amateur Radio Experimenters Group 25th Anniversary. For the eagle eyed reader, you may notice in the Bias-T wiring is not quite finished and that in the Horus 60 write up my callsign does not feature prominently in the logs.

I’ll continue this story and the reasons for the above however in a latter post…

HAB Telemetry – Initial Experiments

In a recent blog post I talked about finding some Pine A64 single board computers in a box and how this was the catalyst for my High Altitude Balloon (HAB) Telemetry experiments. In this post I continue describing the initial experiment with the Pine A64’s to test if they were capable of running the Project Horus software.

Pine A64 Operating System

So the choice of Linux operating system for the Pine A64 2GB SBC had grown substantially since the first time I experimented with these boards after the initial KickStarter campaign. After some trials and tribulations I settled on the DietPi distribution. This included a relatively modern kernel and a nifty installation and package management system, with a Debian based back-end. It is also highly optimised to run on small SBC’s, it only runs the bare minimum processes required and has logging to RAM enabled rather than to SDCard.

Setting up DietPi on this board was no different to any other ARM based SBC. Burning the image to SDCard, booting the device with a USB keyboard and monitor was straight forward. One nice part of DietPi is the setup and configuration is done within a Ncurses menu, similar to the raspberry Pi. So tuning and setting up the board just requires poking around these menus and configuring the hardware you want to use. Once done I found I was using just under 1GB of the 32GB SDCard I’d inserted, which included all of the GCC build tools I needed to compile programs from source. I was impressed.

Tracking Software and SDR’s

The first HAB tracking software I wanted to try was the Horus 4FSK binary telemetry. The Project Horus software team have done a great job documenting how to build and run this software in their GitHub wiki. The Horus guide recommends the RTL-SDR if you intend to run a Headless Raspberry Pi and I had a draw full of them left over from various projects. If you’re not familiar with these you can find them here, please be aware of fakes on eBay the frequency stability of these fakes typically results in tears. I’ve used the RTL-SDR V3 as pictured above.

It didn’t take me more than an hour to get this software running which included building the RTL-SDR software from source, editing the startup scripts and testing that dual 4FSK de-modulators were running. I was lucky to have a RS41 radio sonde that had been modified to generate this data mode, more detail can be found here. I was thankful that the DietPi distribution is very similar to the current Raspberry Pi platform, so all commands simply worked, those that didn’t required nothing more than installing the missing package or dependency and trying again.

Running both Horus 4FSK binary telemetry decoders on DietPi saw the system peak load get no higher than 0.6 (~15%), considering that the Pine A64 is a quad core 1.2GHz ARM, this is very lightly loaded. There is definitely more scope to add further functionality on this SBC.

So having cloned the SDCard just prior to installing the Horus 4FSK binary telemetry software, I then started again a fresh on the second Pine A64 and installed the Wenet software. Again the installation documentation for Wenet is excellent and I chose to go the Docker path rather than build from source. This time however the system peak load, rose to 1.6 and peaked no higher than 2.5 (~63%), meaning a single Docker Wenet decoder is about as much as I was confident loading this system with using a RTL-SDR.

Next Steps

So based on the above experiments, it was clear the Pine A64’s that spent the better part of 5 or more years languishing in my shed were more than capable of tracking HAB balloons and would finally be pressed into service.

As hinted within the Project Horus documentation there is more than just software required to track High Altitude Balloons. It was time to continue digging through that shed to find more treasures for this new project.

That however will need to wait for the next post, more to follow.

HAB Telemetry – Introduction

As with all of my projects, they typically start by finding a crucial piece of kit that then sparks a whole development. Back in late 2022 I was searching through my shed for something when I happened upon a box of Pine A64 single board computers, that I’d completely forgotten about.

These were purchased from a Kickstarter campaign when 64-bit ARM was in its infancy and 64-bit ARM Linux distributions were not common. These new machines were difficult to get going, which is likely why they ended up in the shed. Needless to say, that box was pulled from the shed and sat on a shelf in my office until inspiration struck… could I build them into a High Altitude Balloon (HAB) telemetry tracking system ?

I’ve been involved with the Project Horus High Altitude Ballooning (HAB) group since August of 2010, my first flight was Horus 7 where we watched it land at our feet just shy of Pinnaroo in the North Eastern region of South Australia. Fast forward some 15 or more years and I’m still out there tracking balloons, having retired from actively chasing after them a number of years ago.

Over time much of the software for tracking these balloons had been ported to various flavours of Python from the original implementations in Java. For better or worse it has meant that this custom tracking software has migrated towards running on small embedded ARM single board computers. In late 2022 I’d heard that some within the Project Horus community were tracking balloons with Raspberry Pi’s and SDR’s, so here was the catalyst for some inspiration and I started to wonder if my original Pine A64’s were up to the task ?

Over the Christmas break in 2023 I cobbled together my first ARM based system and I’ve been experimenting with my High Altitude Balloon Telemetry System ever since. This work has been done on and off, when ever I was able to catch a few hours or days. The main focus typically came a few weeks before an actual balloon launch. This series of blog posts will document what I’ve learnt and how I’ve gone about setting my system up to current time.

More to follow.