Difference between revisions of "Lynx RPi5 Dual RX"

From BATC Wiki
Jump to navigation Jump to search
(Created page with "The Lynx receiver is a DATV receiver being developed by Justin G8YTZ. As of July 2026 it was in early prototype form and not released. The hardware includes a Raspberry Pi 5...")
 
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
The Lynx receiver is a DATV receiver being developed by Justin G8YTZ.  As of July 2026 it was in early prototype form and not released.
+
== Lynx and Knobler ==
  
The hardware includes a Raspberry Pi 5 with display, network connected to a PicoTuner with G4EWJ's ethernet interface.
+
'''Lynx''' is a full DATV receiver for the Raspberry Pi 5 — not a control panel bolted onto someone else's decoder, but the whole receive chain: tuning, decoding, a genuine live picture on screen, and, when you want it, real diversity reception — two independent tuner inputs combined automatically, so a fade on one path doesn't have to mean losing the shot. Pair it with '''Knobler''', its companion rotary-dial remote built on the M5Stack M5Dial, and you've got a receiver you can actually run from across the room — glance at it, spin the dial, get on with your day.
  
Features include diversity reception across the tuner's 2 inputs.
+
It's actively developed, and it already does three genuinely different jobs well: a QO-100 ground station, a repeater input receiver, or a straightforward home DATV set-top box — same software, same interface, whichever one you're actually building.
 +
 
 +
'''Requires a Raspberry Pi 5 (4GB or better).''' It won't run on a Pi 4 — the decode workload genuinely needs the newer hardware.
 +
 
 +
This page gives a brief overview of both. See [[#Getting_Started|Getting Started]] below for setup instructions.
 +
 
 +
=== Get Started ===
 +
 
 +
Ready to get something on screen? Here's everything you need.
 +
 
 +
* '''Lynx''' — [https://github.com/G8YTZ/lynx-datv-receiver source code, install guide, and full documentation]
 +
* '''Knobler''' — [https://github.com/G8YTZ/lynx-knobler source code]
 +
* New to Lynx? The [https://github.com/G8YTZ/lynx-datv-receiver/raw/main/docs/lynx_install_guide.docx Installation Guide] takes you from a blank SD card to a working receiver in one sitting, including a one-line installer.
 +
 
 +
=== Lynx ===
 +
 
 +
Built around the Picotuner, Lynx gives you a full receiver, not just a viewer:
 +
 
 +
* A local web UI (default port 8080) for status, tuning, and configuration
 +
* Live decode status — lock state, MER, and related quality metrics, read from the Picotuner's status broadcast
 +
* A preset system for quickly recalling known frequencies/symbol rates across plugs (including saved presets created from the web UI)
 +
* Optional receive diversity combining across two tuner inputs, with automatic MER-based switching and a "hard freeze breaker" safeguard against repeated lock loss
 +
* Optional notifications — Slack, QRZ logbook lookups, and GPIO-triggered outputs (e.g. driving an external "on air" indicator) — each independently configurable and disabled by default
 +
* Optional RTMP relay of the decoded stream
 +
 
 +
Configuration lives in a single YAML file covering site details (callsign, locator, location), the Picotuner connection, presets, streams, diversity settings, and notification integrations.
 +
 
 +
Full documentation, including an install guide, a Web UI reference, and a guide to the on-screen display, is kept alongside the source: [https://github.com/G8YTZ/lynx-datv-receiver/tree/main/docs docs folder on GitHub].
 +
 
 +
=== Knobler ===
 +
 
 +
Knobler is a physical companion display for Lynx, built on an [https://docs.m5stack.com/en/core/M5Dial M5Stack M5Dial] — a small ESP32-based device with a round touchscreen and a rotary encoder. It polls Lynx's web API directly and gives you a dedicated, always-on physical readout and control surface, separate from the web UI.
 +
 
 +
'''Current capabilities:'''
 +
 
 +
* Live status display (lock state, signal quality) with a configurable poll interval
 +
* A menu system for browsing and selecting presets and streams via the rotary encoder, with an auto-timeout back to the normal display
 +
* Self-service Wi-Fi setup — no need to hardcode network credentials into the firmware or edit code to get it on your network (see below)
 +
* Automatic discovery of the Lynx receiver on the local network — no need to hardcode or manually enter an IP address
 +
 
 +
==== Wi-Fi Setup ====
 +
 
 +
On first boot (or if it can't find a previously-saved network), Knobler opens a temporary Wi-Fi access point of its own and displays a short prompt on screen. Connecting a phone or laptop to that access point brings up a normal Wi-Fi configuration page, where you select your network from a list and type in the password on a proper keyboard — rather than fumbling through SSID entry on a 1.28" touchscreen.
 +
 
 +
Once configured, credentials are saved on the device. If the saved network ever becomes unreachable (moved out of range, router replaced, etc.), Knobler automatically falls back into setup mode after a short timeout, without any need to reflash or reconfigure it by hand.
 +
 
 +
==== Auto-Discovery ====
 +
 
 +
Rather than requiring a fixed, manually-entered IP address for the Lynx receiver, Knobler broadcasts a small discovery request on the local network on startup. Any Lynx instance running current software answers directly, providing its name, callsign, IP address, and API port — so Knobler finds the right receiver automatically, even if its address changes (e.g. after a router reboot hands out a new DHCP lease).
 +
 
 +
=== Getting Started ===
 +
 
 +
'''Requirements:'''
 +
 
 +
* An M5Stack M5Dial device and USB-C cable
 +
* Arduino IDE, with ESP32/M5Stack board support and the required libraries (M5Dial, WiFiManager, ArduinoJson) installed
 +
* A Lynx receiver running current software (the discovery responder must be present — see below)
 +
* A computer or phone to complete Wi-Fi setup
 +
 
 +
'''Lynx:''' the [https://github.com/G8YTZ/lynx-datv-receiver/raw/main/docs/lynx_install_guide.docx Installation Guide] covers everything from a blank SD card to a working receiver, including a one-line installer script.
 +
 
 +
'''Before flashing Knobler:''' make sure the Lynx receiver is running a version of the software that includes the discovery responder (it prints a line similar to <code>Discovery responder listening on UDP :9998.</code> on startup). Older Lynx installs will need updating first, or Knobler won't be able to find them automatically.
 +
 
 +
A full step-by-step Knobler installation guide — covering Arduino IDE setup, board/library installation, flashing, and first-time Wi-Fi configuration — is not yet published separately; for now, see the [https://github.com/G8YTZ/lynx-knobler Knobler repository] directly.
 +
 
 +
=== Status ===
 +
 
 +
Both projects are under active development. Known limitations at time of writing:
 +
 
 +
* If more than one Lynx receiver answers a discovery request on the same network, Knobler currently connects to whichever reply arrives first — a picker screen for choosing between multiple receivers is planned but not yet built.
 +
* There is currently no on-device way to force Knobler back into Wi-Fi setup mode (e.g. to deliberately switch networks) short of clearing its saved credentials via a computer.
 +
 
 +
=== See Also ===
 +
 
 +
* [https://github.com/G8YTZ/lynx-datv-receiver Lynx source code and documentation on GitHub]
 +
* [https://github.com/G8YTZ/lynx-knobler Knobler source code on GitHub]
 +
* [[Picotuner]]
 +
 
 +
=== Credits ===
 +
 
 +
''Justin D. Cockett - G8YTZ''
 +
 
 +
[[Category:DATV]]
 +
[[Category:Receivers]]

Latest revision as of 15:17, 27 July 2026

Lynx and Knobler

Lynx is a full DATV receiver for the Raspberry Pi 5 — not a control panel bolted onto someone else's decoder, but the whole receive chain: tuning, decoding, a genuine live picture on screen, and, when you want it, real diversity reception — two independent tuner inputs combined automatically, so a fade on one path doesn't have to mean losing the shot. Pair it with Knobler, its companion rotary-dial remote built on the M5Stack M5Dial, and you've got a receiver you can actually run from across the room — glance at it, spin the dial, get on with your day.

It's actively developed, and it already does three genuinely different jobs well: a QO-100 ground station, a repeater input receiver, or a straightforward home DATV set-top box — same software, same interface, whichever one you're actually building.

Requires a Raspberry Pi 5 (4GB or better). It won't run on a Pi 4 — the decode workload genuinely needs the newer hardware.

This page gives a brief overview of both. See Getting Started below for setup instructions.

Get Started

Ready to get something on screen? Here's everything you need.

Lynx

Built around the Picotuner, Lynx gives you a full receiver, not just a viewer:

  • A local web UI (default port 8080) for status, tuning, and configuration
  • Live decode status — lock state, MER, and related quality metrics, read from the Picotuner's status broadcast
  • A preset system for quickly recalling known frequencies/symbol rates across plugs (including saved presets created from the web UI)
  • Optional receive diversity combining across two tuner inputs, with automatic MER-based switching and a "hard freeze breaker" safeguard against repeated lock loss
  • Optional notifications — Slack, QRZ logbook lookups, and GPIO-triggered outputs (e.g. driving an external "on air" indicator) — each independently configurable and disabled by default
  • Optional RTMP relay of the decoded stream

Configuration lives in a single YAML file covering site details (callsign, locator, location), the Picotuner connection, presets, streams, diversity settings, and notification integrations.

Full documentation, including an install guide, a Web UI reference, and a guide to the on-screen display, is kept alongside the source: docs folder on GitHub.

Knobler

Knobler is a physical companion display for Lynx, built on an M5Stack M5Dial — a small ESP32-based device with a round touchscreen and a rotary encoder. It polls Lynx's web API directly and gives you a dedicated, always-on physical readout and control surface, separate from the web UI.

Current capabilities:

  • Live status display (lock state, signal quality) with a configurable poll interval
  • A menu system for browsing and selecting presets and streams via the rotary encoder, with an auto-timeout back to the normal display
  • Self-service Wi-Fi setup — no need to hardcode network credentials into the firmware or edit code to get it on your network (see below)
  • Automatic discovery of the Lynx receiver on the local network — no need to hardcode or manually enter an IP address

Wi-Fi Setup

On first boot (or if it can't find a previously-saved network), Knobler opens a temporary Wi-Fi access point of its own and displays a short prompt on screen. Connecting a phone or laptop to that access point brings up a normal Wi-Fi configuration page, where you select your network from a list and type in the password on a proper keyboard — rather than fumbling through SSID entry on a 1.28" touchscreen.

Once configured, credentials are saved on the device. If the saved network ever becomes unreachable (moved out of range, router replaced, etc.), Knobler automatically falls back into setup mode after a short timeout, without any need to reflash or reconfigure it by hand.

Auto-Discovery

Rather than requiring a fixed, manually-entered IP address for the Lynx receiver, Knobler broadcasts a small discovery request on the local network on startup. Any Lynx instance running current software answers directly, providing its name, callsign, IP address, and API port — so Knobler finds the right receiver automatically, even if its address changes (e.g. after a router reboot hands out a new DHCP lease).

Getting Started

Requirements:

  • An M5Stack M5Dial device and USB-C cable
  • Arduino IDE, with ESP32/M5Stack board support and the required libraries (M5Dial, WiFiManager, ArduinoJson) installed
  • A Lynx receiver running current software (the discovery responder must be present — see below)
  • A computer or phone to complete Wi-Fi setup

Lynx: the Installation Guide covers everything from a blank SD card to a working receiver, including a one-line installer script.

Before flashing Knobler: make sure the Lynx receiver is running a version of the software that includes the discovery responder (it prints a line similar to Discovery responder listening on UDP :9998. on startup). Older Lynx installs will need updating first, or Knobler won't be able to find them automatically.

A full step-by-step Knobler installation guide — covering Arduino IDE setup, board/library installation, flashing, and first-time Wi-Fi configuration — is not yet published separately; for now, see the Knobler repository directly.

Status

Both projects are under active development. Known limitations at time of writing:

  • If more than one Lynx receiver answers a discovery request on the same network, Knobler currently connects to whichever reply arrives first — a picker screen for choosing between multiple receivers is planned but not yet built.
  • There is currently no on-device way to force Knobler back into Wi-Fi setup mode (e.g. to deliberately switch networks) short of clearing its saved credentials via a computer.

See Also

Credits

Justin D. Cockett - G8YTZ