🎤 measuring — please don't touch the page
A measurement sweep is running and its result has not been fully read back yet. Changing filters, re-pushing, or starting another run now would apply to the sweep already in flight. This clears on its own. "Stop After Current Test" still works.
Pragmatic Audio Measurement Tools

🎛️ PEQ Hardware Verification Tool

Step 1 — Connect the Device Under Test

Connect a device above to see its resolved PEQ constraints here.

Step 2 — Capture method

For automatic REW capture and read-back, run REW with its API enabled and an active REW Pro licence. Then click Check REW API before starting the baseline or test plan.
not checked

Step 3 — Baseline Measurement

This is the reference every test below is measured against. Click below to have this page push every filter band, set to 0 dB gain and disabled, to the connected device, then trigger a measurement automatically (or prompt you to start it manually when the selected method requires it) and adopt that measurement as the baseline (frequency response cached in this page).

no baseline

Prefer to set the device up yourself instead (e.g. picking a dedicated "PEQ disabled" preset in the device's own app)? Run that measurement with the selected capture method, then use the fallback below to adopt the latest available measurement, without this page touching the device.

Step 4 — Build the Test Plan

Test cases are generated from the connected device's resolved PEQ constraints (min/max gain, min/max Q, supported filter types). Each case applies a single isolated filter, pushes it to the device, triggers a measurement, and compares the whole measured frequency-response curve against the theoretical biquad shape (log-spaced points across 20Hz–20kHz, not just one frequency) for any filter type with an RBJ model — PK/LSQ/HSQ plus LPF/HPF/BPF/NOTCH/BSF/APF/CQ. Many devices automatically reduce overall output level ("pregain") when a boost filter is applied, to protect headroom — that shows up as a constant broadband offset, not a shape error. This tool detects that offset (median residual across the whole curve), subtracts it out, and reports it separately from the actual filter-shape fit. Any type code without a theoretical model falls back to a single-point measurement and is always record-only.

Test groups

Run parameters

Settle time after push
ms
Shape fit tolerance (RMSE)
dB
Sweep timeout
ms
Device DSP sample rate
Hz
Gain/Q sweep frequencies
Hz

Shape fit tolerance is the max allowed RMSE (dB) between the measured and theoretical curves; default 0.3dB leaves margin above real noise while still catching real filter defects. "Effective Q" (on failing rows) is the Q that would best explain the measured curve, when that's a meaningful finding and not just search noise.

Step 4b — Measure a filter set by another tool

optional

For filters applied outside this tool — a vendor web app, a phone app, anything that isn't the connected-device path above. Set one filter in that tool, capture a sweep here, and the tool works out which filter actually reached the output. Needs the Step 3 baseline, measured with that tool's EQ off.

Step 5 — Run

REW Pro sweep trigger isn't available — start the sweep yourself in REW now (click Start Measurement in the REW window), then click Continue below once it finishes.

Step 6 — Summary & Export

Run the test plan to see a summary here.
Insights looks for a systematic cause across every measured case — a constant level offset, a gain/Q/frequency scale factor, or an error that trends with frequency — and works out the numbers behind it.