Re: Intent to create new SDR ports: comms/ka9q-radio and comms/SoapyRX888

Tomek CEDRO <[email protected]>
Newsgroups gmane.os.freebsd.devel.ports
Message-ID <CAFYkXjmu6mbBh5g6fejof67E748LCPDann3GBzOqRro6ZkkYxQ@mail.gmail.com>
On Tue, Sep 16, 2025 at 8:58 PM Larry Gadallah <[email protected]> wrote:
> Hello FreeBSD ports maintainers,
> I'm announcing my intention to create two new ports in the comms category for Software Defined Radio (SDR) applications:
>
> Port 1: comms/ka9q-radio
>
> Description: Multichannel SDR platform based on fast convolution and IP multicasting
> Upstream: https://github.com/ka9q/ka9q-radio
> License: Mixed (primarily BSD/MIT compatible)
> Author: Phil Karn (KA9Q)
>
> Overview: ka9q-radio is a high-performance SDR platform that can simultaneously demodulate hundreds of channels using efficient fast convolution algorithms. It's designed for applications requiring many concurrent receivers (APRS gateways, monitoring systems, etc.). The software already has partial macOS support, providing a BSD-compatible foundation for FreeBSD porting.
>
> Dependencies: FFTW3, Opus, Avahi, ncurses, various SDR hardware libraries
> Challenges: Requires adaptation from systemd to rc.d service management
>
> Port 2: comms/SoapyRX888
>
> Description: SoapySDR module for RX888 wideband SDR receivers
> Upstream: https://github.com/cozycactus/SoapyRX888
> License: Open source (investigating specific license)
> Author: CozyCactus
>
> Overview: SoapySDR backend module for the RX888, a popular $200 16-bit SDR with up to 64 MHz bandwidth. This would complement existing SoapySDR modules already in ports (SoapyRTLSDR, SoapyHackRF, SoapyAirspy). The module already works on macOS via Homebrew, demonstrating BSD compatibility.
>
> Dependencies: SoapySDR, libusb, librx888 (may need separate port)
> Challenges: RX888 has a somewhat fragmented driver ecosystem
>
> Questions for the Community:
>
> Port naming: Are comms/ka9q-radio and comms/SoapyRX888 appropriate names and categories?

Looks good :-) No minus in the name is preferred but there are ports
with minus too :-P


> Dependencies: Should librx888 be a separate port, or bundled with SoapyRX888?

If this can serve other applications / ports as standalone library
then yes it can be a separate port, if only used by SoapyRX888 then it
can be bundled. Depending on how big is the package libs may be just
part of bigger bundle.


> Staging: I plan to develop these incrementally. Is it acceptable to submit PRs with basic functionality while continuing development?

Yes, assuming basic port is operational, and new working features are
added with updates these may come as port options / flavors :-)


> Conflicts: Are there any existing ports or planned developments that might conflict?
>
> Development Timeline:
>
> Phase 1: ka9q-radio interactive components (control, monitor) - leveraging existing macOS compatibility
> Phase 2: ka9q-radio daemon (radiod) with rc.d service management
> Phase 3: SoapyRX888 module porting from macOS implementation
> Phase 4: Integration testing and optimization
>
> I have experience with both SDR hardware and FreeBSD systems, and I'm committed to maintaining these ports long-term. The SDR community has expressed significant interest in FreeBSD support for these tools.
>
> I welcome any feedback, suggestions, or offers of collaboration. Please let me know if there are any concerns or recommendations before I begin development.
>
> Related Existing Ports:
>
> comms/SoapySDR (framework)
> comms/SoapyRTLSDR, comms/SoapyHackRF, comms/SoapyAirspy (similar backends)
> comms/rtl-sdr, comms/hackrf (hardware support)
> math/fftw3 (dependency)
>
> Thank you for your time and consideration.
> Best regards,
> --
> Larry Gadallah, NM7A/VE6VQ lgadallah AT gmail DOT com
> PGP Sig: 0247 9AD1 FFA8 2E35 0B5B  E387 F9B8 2875 FDFE DB69

Thank you Larry and Have Fun! Let me know if there is anything to test
and how to test :-)

You should find all necessary hints in the Porter's Handbook :-)

https://docs.freebsd.org/en/books/porters-handbook/

NM7A 73 SQ7MHZ / Tomek

-- 
CeDeROM, SQ7MHZ, http://www.tomek.cedro.info
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.