ZULU
1 ZULUProjectsRS1Modules › RS1.FLEX.MONITOR
Module 09Live

RS1.FLEX.MONITOR

FlexRadio Transceiver State Monitor

What the radio is doing, right now, to the second.

What it is

A daemon holds an open connection to the FlexRadio 6700 and subscribes to its state: every slice receiver, its frequency, mode and band, which one is armed for transmit, which client is driving it, and whether the radio is transmitting this instant. It also watches the SmartLink cloud registration separately, so “the radio is up” and “the radio is reachable from outside” are two different answers rather than one hopeful one.

The interesting part of this module is what it does when the radio disappears without saying goodbye. A radio that loses power does not close its socket — it simply stops talking, and a naive monitor will happily report a dead radio as healthy for as long as you let it. So there are three independent defences: TCP keepalive so the kernel probes a silent peer, a periodic command down the socket so there is traffic to fail on, and a staleness guard that refuses to publish “up” when nothing has actually arrived. Any one of them catches it. All three are there because this module's whole value is being trusted when it says the station is fine.

At a glance

Talks toFlexRadio 6700, TCP port 4992
Subscribes toslice, tx, client
Also watchesSmartLink cloud registration, separately
PublishesA JSON state file, pushed to the public panel
LivenessTCP keepalive + periodic command + publisher staleness guard

Where it runs

  • sitenamepi
  • sitename-exit-node

Hardware

  • FlexRadio Systems FLEX-6700

Shows up in

  • /stats/status/
  • RS1.ONAIR
  • RS1.FLEX.LOG

Depends on

Used by

Media

Screenshots and video

Nothing here yet. Drop images or video into /projects/rs1/modules/rs1-flex-monitor/media/ and they appear on this page at the next build — or list them in module.json with captions to control the order and the wording.

Code

Source

Not published yet. Code for this module will live in /projects/rs1/modules/rs1-flex-monitor/ alongside its module.json, and gets listed here once it does.