Skip to content

Features Modulation Performance

Dennis Braun edited this page Mar 6, 2026 · 1 revision

Modulation Performance

The Modulation Performance module tracks how your connection's modulation levels change over time and surfaces degradation that single-snapshot views miss. It groups channels by DOCSIS protocol version, calculates a correctly scaled health index for each group, and lets you drill down into per-channel timelines for any day.

Why This Matters

A single current modulation value doesn't tell you whether your line spent half the day in a degraded state. If your upstream drops from 64QAM to 16QAM every evening for hours, that matters for troubleshooting and ISP escalation -- but it's invisible in a point-in-time dashboard.

This module answers: How much of the day was spent at reduced modulation, and on which channels?

How It Works

Protocol Groups

Channels are grouped by their DOCSIS version and direction because each combination has a different maximum QAM order:

Direction DOCSIS Version Max QAM Health Index Range
Downstream 3.0 (SC-QAM) 256QAM log2(256) = 8 bits
Downstream 3.1 (OFDM) 4096QAM log2(4096) = 12 bits
Upstream 3.0 (SC-QAM) 64QAM log2(64) = 6 bits
Upstream 3.1 (OFDMA) 1024QAM log2(1024) = 10 bits

Health Index

The health index scales from 0 to 100 based on the observed modulation relative to the group's maximum:

Health Index = 100 × (log2(observed_QAM) - 2) / (log2(max_QAM) - 2)

This means:

  • US 3.0 channel at 64QAM (its maximum) = 100/100
  • DS 3.0 channel at 256QAM (its maximum) = 100/100
  • US 3.0 channel at 16QAM = 50/100
  • DS 3.1 channel at 1024QAM = 80/100

Low-QAM Exposure

The percentage of observations at or below a configurable threshold (default: 16QAM). A high value means the line spent significant time in a degraded state.

Sample Density

Shows how many polling samples were actually collected versus how many were expected. A density below 80% means gaps in the data -- the numbers are still valid but may miss short degradation events.

Two Views

Multi-Day Overview (7d / 30d)

The default view shows each protocol group with:

  • Group KPIs: Health index, low-QAM %, dominant modulation, count of degraded channels
  • Stacked Bar Chart: Daily modulation distribution (one bar per day, colored by QAM level)
  • Trend Chart: Dual-axis line chart with health index (left) and low-QAM % (right)

Click any day bar in the distribution chart to drill down into that day's channel detail.

Intraday Channel Detail (Today / click on day)

Shows every channel in the selected protocol group with:

  • Channel card: Frequency, health index, degradation badge
  • Timeline chart: Stepped-line chart showing modulation level over the day
  • Summary text: e.g., "4.5h (30%) at 16QAM between 14:00--18:30"

Channels without degradation show "No degradation observed." Degraded channels are highlighted with a red border.

Use the back button or switch to 7d/30d to return to the overview.

Controls

Control Options Default
Direction Upstream / Downstream Upstream
Range Today / 7 Days / 30 Days 7 Days

Selecting "Today" switches directly to the intraday view for the current day.

Disclaimer

All health indices and modulation statistics are estimates based on periodic polling samples. They do not represent continuous measurement. Accuracy improves with higher polling frequency. The disclaimer is displayed at the bottom of both views.

API Endpoints

Method Path Description
GET /api/modulation/distribution?direction=us&days=7 Per-protocol-group distribution with daily breakdown
GET /api/modulation/intraday?direction=us&date=2026-03-05 Per-channel timeline for a single day
GET /api/modulation/trend?direction=us&days=7 Legacy trend data (health + low-QAM % per day)

See API Reference for full details.

Clone this wiki locally