Skip to content
Ohmic Audio

FIR, IIR, And Room Correction

Intermediate → advanced Estimated lesson: 55 minutes Includes ADAU1701 bench path Measurement and validation required

What You Will Be Able To Do

Three Filter Roles

IIR

Efficient recursive EQ, crossover, shelf, notch, and all-pass filtering. Best when the required response fits stable biquad sections and low latency matters.

FIR

Finite feedforward convolution with arbitrary coefficients. Useful for custom magnitude and phase, but tap count, latency, scaling, and resources must be controlled.

Automated correction

A measurement, target, optimization, export, and validation workflow. The generated filters may be IIR, FIR, mixed phase, or product-specific.

The Rule That Replaces “FIR Is Better”

Choose the least complicated filter that solves the verified problem within latency, headroom, spatial, and hardware limits.
ProblemLikely starting toolRequired proof
Stable magnitude peakIIR cut or minimum-phase correctionnearby positions, phase, headroom, decay
Bulk channel delaypure delayshared timing reference and crossover sum
Localized phase mismatch with acceptable magnitudeall-pass or constrained mixed-phase correctionnormal and reverse sum, group delay, nearby positions
Custom linear-phase crossoverlinear-phase FIRlatency, impulse energy, acoustic slopes, protection
Deep position-sensitive nullplacement, crossover, source balance, or no EQindividual sources and spatial measurements

1Prepare A Known Baseline

  1. Verify gain structure, routing, polarity, channel identity, and protective crossovers.
  2. Disable undocumented correction, dynamics, loudness, and factory processing where possible.
  3. Capture repeatable individual-channel and combined measurements.
  4. Save the baseline preset, raw measurements, and listening notes.
  5. Define the seat or listening region the correction must serve.

2Measure The Electrical Filter First

Before blaming the cabin, measure the DSP's electrical input-to-output transfer at safe line level. Record filter type, order, coefficients or software settings, sample rate, precision, block order, peak gain, magnitude, phase, group delay, and latency.

Then measure the installed acoustic result. The acoustic response is the electrical filter multiplied by the driver, enclosure, mounting, propagation, and reflection behavior.

3Build The IIR Reference

  1. Create a unity bypass path.
  2. Add one biquad and verify its electrical magnitude and phase.
  3. Increase Q and inspect decay, group delay, and internal level.
  4. Compare single- and double-precision modes if the platform provides them.
  5. Test coefficient changes, bypass, reset, and preset switching with mute or slew protection.

4Build The FIR Reference

Use a short, known coefficient set first:

y[n] = h[0]x[n] + h[1]x[n-1] + ... + h[N]x[n-N]
  1. Confirm coefficient order, format, scaling, and sample rate.
  2. Load with outputs muted.
  3. Send an impulse and verify the output matches the coefficient set.
  4. Measure magnitude, phase, impulse response, group delay, peak gain, and total latency.
  5. Compare a symmetric linear-phase and a minimum-phase version of the same magnitude target.

ADAU1701 / Wondom Bench Path

The enclosed Wondom two-input/four-output ADAU1701 is a strong platform for IIR, routing, summing, dynamics, and short resource-verified FIR experiments. It should not be described as a long-FIR room-correction engine without checking the actual compiler, instruction count, data memory, supported block, sample rate, and hardware revision.

OutputSuggested path
1unity reference
2IIR filter under test
3short linear-phase FIR if the compiled project permits it
4minimum-phase or bypass comparison

Use a more capable convolution engine or processor for long mixed-phase room correction when the ADAU1701 resource report cannot support the required design.

5Separate Filter Length From Resolution

6Generate Minimum And Excess Phase

  1. Use a stable timing reference and document any bulk-delay removal.
  2. Measure beyond the band being evaluated and remain above the noise floor.
  3. Record impulse windows and calibration handling.
  4. Generate the minimum-phase response from the measured magnitude.
  5. Inspect excess phase and excess group delay.
  6. Repeat after any window or timing change.

Do not assume everything below 300 Hz is minimum phase. Evaluate the actual frequency regions and positions.

7Classify The Problem Before Inverting

FindingNext test
Broad peak with stable excess delaycontrolled IIR or minimum-phase cut
constant excess delaychannel delay and crossover verification
all-pass-like rotationall-pass or constrained phase correction
deep dip that moves with microphoneindividual sources, nearby positions, geometry
trace unstable near noise floorimprove measurement before correction

8Define The Correction Contract

Before generating a filter, write down:

9Inspect Time-Domain Energy

Compare linear-phase, minimum-phase, and mixed-phase impulse responses with the same time reference. Record energy before and after the chosen main event, total delay, group delay, and peak gain. Do not call a graph pre-ringing until the aligned main event is defined.

10Run Automated Correction Deliberately

  1. Follow the current product and device instructions for position count and geometry.
  2. Document software, firmware, license, channel groups, and measurement template.
  3. Review every measured channel before filter design.
  4. Set a realistic target, correction range, and gain limits.
  5. Export to a named filter slot or preset.
  6. Retain the raw project and target data.

Do not hard-code one nine-position pattern, one 18-inch radius, one ±12 dB limit, or one branded target curve as a universal rule.

11Independently Verify The Export

  1. Start at low level and verify channel identity and polarity.
  2. Measure with a tool and workflow independent of the correction prediction.
  3. Compare bypass and corrected magnitude, phase, impulse, group delay, and latency.
  4. Repeat at the calibration positions and nearby points.
  5. Check DSP headroom, analog output, amplifier clipping, distortion, compression, excursion, and thermal behavior.
  6. Listen with representative material and preserve a known-good bypass preset.

Troubleshooting Matrix

SymptomLikely checks
Prediction is good but measurement is notwrong slot, sample rate, channel map, device limit, export error, measurement mismatch
Correction sounds clearer but image shiftschannel delay, phase target, linking, spatial weighting, nearby-position behavior
Large pre-main-event energylinear or mixed phase target, causal shift, tap length, correction bandwidth
Low-frequency boost clipstarget extension, null inversion, headroom, amplifier voltage, excursion, limiter
Passenger response worsensposition set, weights, high-frequency correction, directivity, local cancellation
Filter load creates pop or noisemute sequencing, coefficient format, scaling, clock, reset, unsupported block

Quick Knowledge Check

Does FIR automatically mean linear phase?

No. FIR describes finite feedforward structure. Coefficient design determines the phase response.

Is every IIR filter minimum phase?

No. Many standard EQ filters are minimum phase, but added delay, all-pass sections, zeros, routing, and the acoustic system can create excess phase.

Can tap count alone tell you what frequencies can be corrected?

No. Time support, transition requirements, ripple, phase target, sample rate, measurement validity, and system invertibility all matter.

What proves an automated correction worked?

An independent post-export measurement plus spatial, headroom, distortion, protection, and listening verification.

The complete 12-question data set is stored with this lesson as quiz.json for future interactive use.

Continue