Lynx RPi5 Dual RX

From BATC Wiki
Revision as of 06:25, 22 July 2026 by G8YTZ (talk | contribs)
Jump to navigation Jump to search

Lynx and Knobler

Lynx is a Raspberry Pi-based control and monitoring package for amateur DATV reception, and Knobler is its companion hardware remote — a small rotary-dial display unit built on the M5Stack M5Dial. Together they turn a Picotuner-based DATV receiver into a system you can watch and control without a laptop or the Pi's own web UI open in front of you.

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

Lynx

Lynx runs on a Raspberry Pi and sits between the Picotuner hardware and the operator, providing:

  • 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.

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

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 installation guide — covering Arduino IDE setup, board/library installation, flashing, and first-time Wi-Fi configuration — is available separately: [insert link to installation guide here].

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

  • [insert link to Lynx source/repository]
  • [insert link to Knobler source/repository]
  • Picotuner

Credits

[insert author/maintainer attribution here]