Understanding URF Reflectors


URF is the next-generation cousin of the XLX reflector — built by the same lineage of developers, but reaching further. Where XLX bridges three digital voice modes, URF handles six, and it does so with a smarter transcoder that mixes hardware and free software. This is a plain-language explanation of what a URF reflector is, the modes it supports, and how it manages to let so many different systems talk to each other.

What it is

A URF reflector is a server that acts as a central meeting point for digital voice radio — the same basic idea as XLX. Hotspots and repeaters connect to it over the internet, and once connected, their users can all talk to one another. The software (urfd) is described by its authors as a "Universal Reflector with M17 — a superset of XLX." It supports six digital voice modes: D-Star, DMR, YSF (Fusion), M17, NXDN, and P25, plus a USRP connection for linking to AllStar/analog networks.

Modules: rooms in the building

Like XLX, a URF reflector is divided into modules, labeled A to Z — 26 independent talk rooms. Everyone connected to Module C hears each other, and that conversation is completely separate from Module D. The operator decides how many modules to enable and what each one is for. (Behind the scenes, the URF server also acts as its own YSF master providing 26 Wires-X rooms — which is why, unlike a traditional YSF reflector, you don't register a URF anywhere; it stands on its own.)

"Universal" — what it really means

This is where URF goes beyond XLX. A single module can accept connections from all six digital voice systems at once — D-Star, DMR, YSF, M17, NXDN, and P25. So a D-Star user, a DMR user, an M17 user, and a P25 user can all connect to the same module. As with any reflector, though, connecting to a module and being able to talk to everyone on it are two different things.

The catch: the codec gap

Whether two connected users can actually hear each other comes down to the codec — the digital "language" their radios use to encode voice. Across URF's six modes, there are really four codec families:

Without anything extra, users only hear others who share their codec. To bridge across the gaps — say, D-Star to M17, or P25 to DMR — the reflector needs to transcode.

Transcoding: the hybrid approach

URF doesn't use XLX's old transcoder. Instead it uses tcd, a hybrid transcoder, and this is URF's cleverest feature. tcd handles the four codec families two different ways:

Hardware for the closed codecs, software for the open ones

The proprietary codecs — D-Star's AMBE and the AMBE+2 family (DMR, YSF, NXDN) — still require hardware AMBE vocoder dongles, just like XLX. But M17 (Codec2) and P25 (IMBE) use open-source software vocoders, so they cost nothing extra in hardware — tcd transcodes them in software on the server's own processor.

In practice this means a URF reflector needs surprisingly little hardware. By default, tcd asks for just two AMBE dongles — one to handle D-Star's AMBE, and one to handle the AMBE+2 modes. That pair covers the four proprietary modes, and M17 and P25 ride along for free in software.

What this means for the operator

This hybrid design is a real shift from XLX. On XLX, the only transcoding that mattered was D-Star, and it always required hardware. URF keeps that hardware requirement for the proprietary codecs, but folds in two whole additional modes — M17 and P25 — at no hardware cost at all. The result is a six-mode reflector that an operator can stand up with about the same vocoder hardware an XLX reflector needs for three.

What "fully transcoded" really means

As with XLX, a reflector that advertises itself as "fully transcoded" is making a claim that costs real money and upkeep to honor. Enabling transcoding on a module is just a setting; actually delivering it under load takes vocoder hardware for the AMBE-based modes, and enough processing headroom for the software-based ones. When a URF reflector genuinely runs fully transcoded across many modules, it represents a meaningful investment by someone providing the service free of charge.

A note on software transcoding

This is the key difference from XLX. On XLX, there is no software substitute for any of its transcoding — hardware AMBE is mandatory. URF changes that partially: M17 and P25 are handled entirely in software. But D-Star and the AMBE+2 modes still rely on hardware AMBE dongles, because no usable open-source replacement exists for those codecs.

Interlinking

URF reflectors can link to one another, extending a single talk room across multiple servers — the same idea as XLX interlinking. One important limitation: you cannot interlink a URF reflector with an XLX reflector. They're separate generations of the software and don't peer with each other.

The bottom line

URF is XLX taken further: six digital voice modes instead of three, on the same 26-module layout, joined by a hybrid transcoder that uses hardware only where it has to. The proprietary codecs (D-Star, DMR, YSF, NXDN) still need AMBE hardware; the open ones (M17, P25) come free in software. For an operator, it's the most modes for the least hardware of any reflector in this family.

Who built it — a short history

URF builds directly on the XLX lineage. The original XLX reflector was written in 2016 by Jean-Luc Deltombe (LX3JL) and Luc Engelmann (LX1IQ), and Thomas A. Early (N7TAE) later produced an improved fork. URF (urfd) is the next step: developed by Doug McLain (AD8DP) and Thomas A. Early (N7TAE), it preserves the original authors' copyright while extending the reflector to six modes and adding the hybrid tcd transcoder that makes software vocoding for M17 and P25 possible. All of it remains open source under the GPL and is run free of charge for the amateur radio community.


A noncommercial hobby reference compiled by N6JET, gathered from public sources and shared freely for anyone interested in amateur digital voice.