Winrad ExtIO input for USRP

Winrad and its forks (HDSDR & WRplus) are software radio interfaces that run on Windows. They support a number of SDRs as input sources (known as ExtIO plugins). There was previously one for the USRP, however I decided to write a new one with UHD and legacy support, and much more (e.g. remote control and streaming over a LAN).

For instructions, help and more technical information, please visit the wiki page.

Here is the USRP in action (in my custom housing) connected to a transverter, which is in turn connected to a long-wire antenna for HF reception:

The laptop is running Winrad to demodulate the baseband signal. This is then fed into Digital Master 780 to dcode the digital HF mode found on the scope (e.g. PSK-31, CW, etc).

Here are some HAMs speaking on the 20m band:

Unfortunately those constant lines are artifacts from the +60MHz transverter used to shift the HAM bands up into the frequency range that the WBX daughterboard can hear.

Here is some output from Digital Master (part of Ham Radio Deluxe) that I had listening to the Stereo Mix of the sound card on the same laptop as WRplus was running. It includes decodes of PSK-31, CW and RTTY:

BorIP

BorIP* is a software solution that abstracts a streaming SDR interface to make it available over an IP network, allowing the SDR hardware to be physically removed from the front-end processing computer(s). The goal for BorIP is to keep the protocol simple.

For instructions, help and more technical information (such as the complete protocol breakdown), please visit the wiki page.

You can get the server, along with the ExtIO_USRP plugin, from the download page.

(* An aside on the etymology of BorIP: Bor is an intentional mis-spelling of 'bro', commonly used during chats with my 'bor' Matt Robert with whom I am journeying through this land of SDR. Paraphrasing Bor Robert: "As this software operates over an IP network, it is essentially Bro-over-IP since streams should be restricted to one's LAN - closest computers/counterparts - considering the high data rate". BorIP is thus a convenient contraction. For more information, please see the Geektionary on my wiki.)

BorIP consists of a protocol spec, which resembles plain-text client/server chat, and is realised in two parts:

The BorIP server: users can connect to the server, specific the remote SDR device they wish to use, configure is parameters and start streaming baseband I/Q data over the network to specific clients.

The BorIP client library: this library exposes the SDR-control interface (transparently handles communication with the server and reception of the streaming baseband data) making it look like the SDR is connected directly to the machine.

The first implementation was for an ExtIO plugin for Winrad to support the USRP:

Here BorIP is connected to server 'Bang' and aspects of the radio can be controlled via this window.

The BorIP server having just encountered a client (conversation below).

In the following plain-text protocol example, odd lines are sent by the server while even lines are sent by the client - the server always begins the conversation by announcing what device is currently active, if any (in this case nothing is active).