-
-
Notifications
You must be signed in to change notification settings - Fork 18
Features 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.
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?
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 |
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
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.
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.
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.
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.
| 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.
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.
| 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.
Home | Quick Start | Configuration | API Reference | GitHub
- Quick Start
- Installation
- Running without Docker
- Podman Quadlet
- Configuration
- Reverse Proxy
- Example Compose Stacks
- Dashboard
- Connection Monitor
- Signal Trends
- Before/After Comparison
- Channel Timeline & Compare
- Event Log
- Smart Capture
- Gaming Quality Index
- Modulation Performance
- Cable Segment Utilization
- In-App Glossary
- Speedtest Tracker
- BNetzA Breitbandmessung
- ThinkBroadband BQM
- Smokeping
- Weather
- Netzbremse (Peering)
- Home Assistant (MQTT)
- Prometheus Metrics