Lynx RPi5 Dual RX: Difference between revisions
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..." |
No edit summary |
||
| (5 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
== 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|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 — source code, install guide, and full documentation
- Knobler — source code
- New to Lynx? The 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: 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