Skip to content

TGXL Fwd Power/SWR gauges always read incorrect — meter data from port 9010 not parsed #625

Description

@boydsoftprez

Problem

The TunerApplet Fwd Power and SWR gauges always display 0 when a TGXL (Tuner Genius XL) is connected, even during active TX with a tune carrier.

Root Cause

The TGXL reports forward power and SWR via its direct TCP connection (port 9010), not through the radio's VITA-49 meter stream (PCC 0x8002). SmartSDR v3.9.18+ gets TGXL power/SWR from the TGXL directly — this was a key change in TGXL firmware v1.2.17.

AetherSDR's TgxlConnection already polls status every 1 second and receives fwd= and swr= fields in the response KV pairs. However, TunerModel only reads relay positions (relayC1, relayL, relayC2) and antenna state (antA) — it ignores the fwd and swr fields entirely.

The alternative path through MeterModel (VITA-49 AMP meters disambiguated by handle) appears to not receive TGXL-specific meter definitions from the radio in this configuration (FLEX-8600 + PGXL + TGXL 3x1).

Code Path Trace

  1. TgxlConnection::pollStatus() sends "status" command on port 9010 every 1 second
  2. Response parsed into KV map containing fwd=, swr=, relay positions, etc.
  3. TunerModel::setDirectConnection() handles stateUpdated and statusUpdated signals
  4. But only reads: relayC1, relayL, relayC2, antA, tuning, operate, bypass
  5. fwd and swr fields are in the KV map but never extracted

Fix Approach

  1. Add m_fwdPower and m_swr fields to TunerModel
  2. Parse fwd= and swr= in TunerModel::applyStatus() and the direct connection handler
  3. Emit a signal (e.g. metersChanged(float fwd, float swr)) when values update
  4. Wire TunerModel::metersChangedTunerApplet::updateMeters() in MainWindow
  5. This replaces or supplements the current MeterModel::tgxlMetersChanged path

Environment

  • FLEX-8600 with PGXL and TGXL 3x1 (firmware 1.2.17)
  • AetherSDR v0.7.18.2 on Windows 11

References

  • FlexRadio Community: TGXL integration with SmartSDR v3.9.18 introduced direct metering
  • 4O3A Tuner Genius XL User Guide, firmware v1.2.17
  • SmartSDR gets TGXL power/SWR from the TGXL directly, not through VITA-49

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingexternal devicesFlexControl, MIDI, serial port, USB peripheralsprotocolSmartSDR protocol

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions