There were two goals for the link hub software, one was to provide a mechanism where good quality digital audio can be shared between a set of repeaters, and to be able to steer traffic based on a digital talk group identification.

The software provides any number of logical ‘bridges’, which can be configured as a master bridge to interconnect a series of repeaters (aka ‘peers’) together, or as a peer bridge which provides a connection to another instance of the same software, or anything that understands the USRP protocol, such as DVSwitch. Other format converters for M17 have been tried, but need some work.

All peers on a bridge receive traffic from each other unconditionally, routing to another bridge is dependent on the talk group configuration, which interconnect via a switching backbone. This enables selective linking to be accomplished by changing the TG, which is processed at the repeater using a series of DTMF codes.

Repeater Bridging software

The figure above shows how the repeaters are connected together. Each bridge contain the IP address of repeaters that are to receive all packets with no filtering. A second bridge has also been added that filters by TG 6374 (MESH), only allowing packets so tagged to be sent in from other bridges.

Three types of USRP packet are supported:

  1. Station information. These packets contain configuration information such as a talkgroup number, radio ID and callsign. They are sent each time the repeater squelch is opened as the first packet in the transmission.
  2. Voice packets. The protocol allows for three different types of voice packets, 16-bit PCM, ADPCM, and 8-bit uLaw encoded data. The packet type is dependent on the software at the source.
  3. Ping packets. These are sent periodically to keep the UDP connection alive, the timeout is programmable anywhere from 4 to 400 seconds.

A status page can be viewed with a web browser. The HTML code was based on HBLink, a DMR linking package, for consistency in the user view, and also caused a deep dive into Web Socket servers, a method of making a connection between a process and web browser to update information on the fly.

This image has an empty alt attribute; its file name is Analog-linking-1.png