SDR Television v1.0.9

Simon Brown • March 13, 2026

SDR Television v1.0.9


March 13th, 2026: A new kit, lots of receive improvements since the last official kit. As with any software project, there's always room for improvements and new features, but for now here's a stable solution which works well with the QO-100 satellite.


Many thanks to the DATV test team.


Downloads are at the bottom of this page.


To Do

The items below will be completed for the release of v1.1, target date is April/May 2026.


  • Redesign IQ from timing error detector to the S2 frame processing. This will save considerable CPU resources when searching for a signal.
  • Change frequency tracking to add a NCO (rotator) after the decimation (NCO, Downconverter). This will help with signal locking and possible decoding of weak signals.

Release Notes

v1.0.9

Receive

  • Replaced Gardner timing error detection (TED) with a corrected design based on the book "Digital Communications: A Discrete-Time Approach" by Michael Rice. This uses a second-order continuous-time phase locked loop (figure C.2.2). This implementation is designed to be robust when unexpected IQ samples are processed.
  • AGC Target default set to 1.
  • Changed IQ Imbalance design, now using code from Airspy (Youssef Touil, Leif Asbrink).
  • Removed 'None' from the list of bandpass filter options as it is superfluous.


General

  • Fixed startup error "Encountered an improper argument" when no microphones are available.


User Interface

  • When transmitting, the resolution and frame rate are shown in the transmit timer. If either value is greater than the recommended default, a warning symbol is added.


v1.0.8

Receive

  • Fixed a bug with RMS calculation in IQ Imbalance.
  • Tuned IQ Imbalance for weak signals.


v1.0.7

User Interface

  • The audio and video windows now resize the selection dropdown to the width of the main windows.


Receive

  • Improved carrier tracking, used when there are no pilots. This benefits weak signals with low FEC values, for example FEC (LDPC) 1/4.

SDR Television v1.0.6


February 13th, 2026: A new kit, lots of receive improvements since the last official kit. As with any software project, there's always room for improvements and new features, but for now here's a stable solution which works well with the QO-100 satellite.


Downloads are at the bottom of this page.


Release Notes

v1.0.6


Transmit

A FIR filter at the end of the IQ generation processing was too narrow and too sharp, must have been degrading reception of signals created with previous kits. This filter is now wider and uses fewer taps.


Pluto Support

(This is part of SDR Console.) The FIR filter support for the Pluto has been corrected:

  • Images reduced if not completely removed.
  • Transmit now works reliably when the Pluto bandwidth is greater than 2 MHz.
  • The digital filter uses a FIR design from Analog Devices, taken from the file ad9361_baseband_auto_rate.c in the libad9361-iio library.
  • The analog filter is unchanged. It will appear wider than expected to allow for roll-off.


With QO-100 and other DVB-S2 operation there really is little if any need for any filtering.


v1.0.5


Receive

  • Added optional inversion of the incoming signal inversion (swap I and Q).


Transmit

  • Now setting the Quantization Parameter (QP) to the default value of 26. I had come across this before but never really understood what it does. I was just querying the value, not trying to set it.


https://www.oupree.com/knowledge/Whats-Quantization-Parameter-QP-in-Video-Encoder.html


v1.0.4


Receive

  • Improved initial frequency detection when searching for a signal.
  • Optional advanced signal detection options.
  • Found and fixed a bug causing a lockup when a 188 byte packet checksum failed.

v1.0.3


Testing

  • Added optional Gaussian noise when in loopback mode, this is for development use only.


User Interface

  • Added display of elapsed time to the Receive Audio window. Gaps in reception of up to 10 seconds are allowed. Later use of AI may support a 'speech quality' metric, determined from quality and technical content.
  • Added tuning bars in the spectrum, these show the frequency and symbol rate for the current mouse position.
  • Added extra categories in the Log window, now Main, Radio, Transmit, Debug.
  • Audio and video windows optionally hide controls when the cursor leaves the corresponding window.


Receiver

  • Added initial Gardner timing error detection (TED).
  • Changed AGC algorithm, target output now ~0.7 using 32-bit IEEE floats.
  • Redesign #1 of the IQ to Transport Stream (TS) processing, still plenty of refactoring to do.
  • Changed default LDPC algorithm.
  • Fixed BCH implementation which was not correcting any bits, also not detecting errors.
  • Changed default matched filter (RRC) defaults.
  • Added Quadrature Imbalance correction.
  • Interpolation filter roll-off dynamically updated with the value in the base-band header byte MATYPE-1. This value is also shown in the Decoding overlay and Decode Status window.
  • Refined the list of receive filter bandwidths.


AGC

  • Added selectable reference level.
  • Added alternative algorithm, Feed forward (the default algorithm is Feedback). Feed forward is experimental.
  • Searching for a signal in the noise uses considerable CPU, especially at higher symbol rates. The spectrum data is now used to detect the possible presence of a signal, thus saving CPU while a signal is not present. When a signal is believed to be present:
  • The arrows at the top, bottom of the bandwidth display are filled in,
  • The receiver is enabled.


Transmit

  • The transmitted BB Header roll-off value in byte MATYPE-1 now matches the roll-off value used in the filter, rather than preset to 0.35.
  • Removed 12-bit camera formats, problem discovered using a new DELL laptop.
  • Added optional transmit signal inversion (swap I and Q).


Pluto

  • Pluto RX FIR Filter gain set to 6, example: "RX 3 GAIN 6 DEC 1 TX 3 GAIN 0 INT 1 ..."
  • Removed Pluto/Libre bandwidths below 1.5 MHz.
  • Changed filter taps for bandwidths above 2MHz, was 64 now 128. Signal is now cleaner, ~40dBm SNR.


From the AD9363 product sheet: "The AD9363 transmitters use a direct conversion architecture that achieves high modulation accuracy with ultralow noise. This transmitter design produces a best-in-class Tx EVM of −34 dB, allowing significant system margin for the external power amplifier (PA) selection."


v1.0.2

  • Improved receiver sensitivity, still not as good as it can be.


v1.0.1

  • Fixed fatal bug in receive audio AGC when the output device sample rate was 192kHz.

Download

This minimum version of SDR Radio is shown below. Only download if SDR Television displays an error message when starting. SDR Radio has not changed since v1.0.6 was released.


SDR Television

Download v1.0.9 from either:


SDR Television

Previous version. Download v1.0.6 from either:


SDR Radio

V1.0.9 and V1.0.6 require a SDR Radio 64-bit kit build 3972 February 10th, 2026 or any newer kit.


By Simon Brown June 9, 2026
SDR Television v1.1.1 June 9th, 2026: Fixes a fatal bug in the Settings, Camera page. Downloads are at the bottom of this page.
By Simon Brown May 23, 2026
Version 1.6.2 This release fixes two bugs in the new DX Spot feature. The spot age logic incorrectly affected spot display. When the map was zoomed, station markers off the map would be displayed at the top left (0, 0).  Downloads are on the World Map page . Version 1.6.1 This release fixes two fatal bugs in the new DX Spot feature. When the graphics engine is restarted, resources are correctly released. Fixed a resource leak when processing the MoseMove logic. Downloads are on the World Map page . Version 1.6 This release adds the display of DX Spots. Display spots are submitted to PSK Reporter which in turn are relayed by a MQTT Broker running on a high performance Akamia node. Spot Format Each spot consists of these fields: Sequence Frequency Band Mode Signal level Time stamp Sending station call, square, country Receiving station call, square, country Note: The country is the ADIF country. Spots are displayed as they arrive, currently no on-demand database. Bandwidth To reduce bandwidth from the broker, filtering is required for 80m up to and including 15m. Filtering requires at least one field below to be set in a definition: Receiver callsign, square or country. Sender callsign, square or country. Without filtering the bandwith from the broker could be excessive. For LF and VHF+ no filtering is required due to the lower number of spots sent on these bands. In a later version the bandwidth restriction may be reduced.
By Simon Brown May 21, 2026
Version 1.6.1 This release fixes two fatal bugs in the new DX Spot feature. When the graphics engine is restarted, resources are correctly released. Fixed a resource leak when processing the MoseMove logic.  Downloads are on the World Map page . Version 1.6 This release adds the display of DX Spots. Display spots are submitted to PSK Reporter which in turn are relayed by a MQTT Broker running on a high performance Akamia node. Spot Format Each spot consists of these fields: Sequence Frequency Band Mode Signal level Time stamp Sending station call, square, country Receiving station call, square, country Note: The country is the ADIF country. Spots are displayed as they arrive, currently no on-demand database. Bandwidth To reduce bandwidth from the broker, filtering is required for 80m up to and including 15m. Filtering requires at least one field below to be set in a definition: Receiver callsign, square or country. Sender callsign, square or country. Without filtering the bandwith from the broker could be excessive. For LF and VHF+ no filtering is required due to the lower number of spots sent on these bands. In a later version the bandwidth restriction may be reduced.
By Simon Brown May 20, 2026
Version 1.6 This release adds the display of DX Spots. Display spots are submitted to PSK Reporter which in turn are relayed by a MQTT Broker running on a high performance Akamia node. Spot Format Each spot consists of these fields: Sequence Frequency Band Mode Signal level Time stamp Sending station call, square, country Receiving station call, square, country Note: The country is the ADIF country. Spots are displayed as they arrive, currently no on-demand database. Bandwidth To reduce bandwidth from the broker, filtering is required for 80m up to and including 15m. Filtering requires at least one field below to be set in a definition: Receiver callsign, square or country. Sender callsign, square or country. Without filtering the bandwith from the broker could be excessive. For LF and VHF+ no filtering is required due to the lower number of spots sent on these bands. In a later version the bandwidth restriction may be reduced.
By Simon Brown May 19, 2026
SDR Television v1.1 May 18th, 2026: This is the official v1.1 release , code exactly the same as 1.0.16 which has survived testing for a few weeks. Lots of improvements since the last official kit. As with any software project, there's always room for improvements and new features, but for now here's a stable solution which works well with the QO-100 satellite. Many thanks to Sigi and the DATV test team. Downloads are at the bottom of this page.
By Simon Brown April 12, 2026
SDR Television v1.0.14 April 12th, 2026: A new kit, lots of improvements since the last official kit. As with any software project, there's always room for improvements and new features, but for now here's a stable solution which works well with the QO-100 satellite. Many thanks to Sigi and the DATV test team. Downloads are at the bottom of this page.
By Simon Brown March 11, 2026
First Impressions
By Simon Brown February 13, 2026
SDR Television v1.0.6 February 13th, 2026: A new kit, lots of receive improvements since the last official kit. As with any software project, there's always room for improvements and new features, but for now here's a stable solution which works well with the QO-100 satellite. Downloads are at the bottom of this page.
By Simon Brown February 13, 2026
February 10th, 2026 Pluto Correct the FIR filter definitions, this has improved reception.