Since the birth of
~2019, the “back-end” had historically used (and stuck with) the official
core third-party programs found in
compiled by the Pi-Star author Andy,
MW0MWZ. This was deliberate…
Firstly, I really didn’t want to hand-compile all of the upstream binary sources by-hand. And secondly, they were perfectly stable enough for daily usage and didn’t merit any changes.
However, as of 1/26/2022, that has since changed.
If you’re running
W0CHP-PiStar-Dash, you may have noticed that the binaries
/usr/local/bin are now sourced and replaced by/with my own
This is also deliberate, and is now a core part of
W0CHP-PiStar-Dash going forward…
There are new (and fully open-source!) modes/protocols being developed for
digital ham radio, namely, M17. And I wanted to use
these new modes and protocols on my
W0CHP-PiStar-Dash hotspots, but could
not due to the old age of Pi-Star’s binaries (and lack of required binaries).
G4KLX (the author of pretty much EVERY software that makes
hotspots actually work) and his contributors were fast-improving upon
MMDVMHost and its myriad companion client and gateway programs. A recent and
very cool improvement to these programs are the system-wide implementation of
RemoteCommands, which allows client and gateway programs to be both queried
for status, as well as change reflectors/TGs/links, etc.
I really wanted to leverage these features/modes/improvements because they are so incredibly welcome. So I got to work…
I mentioned earlier, that I didn’t want to hand-compile these programs/binaries (and there are a lot of them). So the first thing I did, was develop a custom build and C/I system, with built-in tests and QA checks for stable functionality. I was able to complete that system in my (minimal) spare time within a few days.
Now that I had an automated build/CI/deployment/test system working, it was time to perform some real-world testing on my test hotspots. These hotspots have been using my binaries for a few months now, and my production/daily use hotspots are also using my new binaries since they have proven stable and provide the new features missing from the official Pi-Star distribution.
Around Christmas of 2021, I deemed the new binaries/programs stable enough to
integrate natively in
Part of my regression tests described earlier, involved developing a mechanism that would automatically switch to my binaries vs. the official Pi-Star binaries. This is not an easy task for a host of reasons:
I wanted it to be fully-automated as part of the daily (auto) and manual updating facilities in Pi-Star
It needed to introduce the new config statements/files/variables etc. for the new modes/features, etc. which are not part of the current Pi-Star distribution.
It needed to work flawlessly with zero user interaction.
It needed to be “uninstallable” as part of the native
Once I had all of that developed, tested and validated, I updated the
W0CHP-PiStar-Dash code, to swap to my own custom binary/program
Overall, the whole process took a few months; simply to ensure stability and perfect automation for deployments.
Unlike Pi-Star itself, and the myriad other forks like mine out there; I
provide the actual upstream and modified source
code for the
W0CHP-PiStar-Dash binaries and programs1. In fact, based on principle alone and
the wonderful spirit of F/OSS, this was a requisite. I do not believe anything
should be closed-off. It also aligns with the open and experimental spirit of
I hope you are enjoying my program, and I hope you’re also enjoying the new features. Switching to my own binaries turned out to be inevitable after all, since I wanted to play with all the new modes and leverage the new features that continuously lag in the official Pi-Star distribution2.
I’d like to invite you to submit problem reports, pull requests, etc. for the
respective areas of
W0CHP-PiStar-Dash, if you encounter any issues:
Also, I, and a few other users are available for issue reports and help on
E. It’s always nice
to hear from the
W0CHP-PiStar-Dash users out there; and they are always
expressing their gratitude, which is awesome!
Not all of the Pi-Star binaries have been changed/custom-complied. Only the necessary ones. The rest are a mirror of the official Pi-Star binaries, which are always kept up-to-date with Andy’s (automatically). ↥
By no means is this a knock on Pi-Star or its author Andy. In fact, Andy is one of the most talented and nicest chaps in the ham radio and software communities. But he’s a busy guy, and unfortunately, there aren’t many of us (talented) ham radio hackers out there (read: hard to find good help). Ergo, features may lag in his software as a result (one-man shows are fucking HARD). But that’s where I come in; I scratch my own personal itches and share them with you. ↥