Skip to content

Driver & Enclosure

Open the driver editor through:

Edit -> Driver Parameters...

Typical driver parameters

Important values include:

  • Driver name
  • Rdc — DC voice-coil resistance
  • Lsp — voice-coil inductance
  • Fs — free-air resonance frequency
  • Qts
  • Qes
  • Qms
  • Vas
  • effective diaphragm diameter

KFilter6 can calculate Qts from entered Qes and Qms values.

Enclosure parameters

The driver model also contains enclosure-related state such as:

  • enclosure type
  • Vb
  • Fb
  • Ql
  • additional band-pass state where applicable
  • linear gain

The supported enclosure-state model covers:

  • Open Baffle
  • Sealed
  • Vented
  • Bandpass

Enclosure-dependent fields

The dialog keeps the enclosure type and gain available at all times, while enabling only the enclosure values used by the selected model:

Enclosure type Vb Ql Fb / Hoge Tube D / L V2
Open Baffle — — — — —
Sealed ✓ ✓ — — —
Vented ✓ ✓ ✓ ✓ —
Bandpass ✓ ✓ ✓ ✓ ✓

Changing enclosure type is non-destructive: values in temporarily disabled fields are retained and become available again when the corresponding enclosure type is selected.

Enclosure loss factor Ql

Ql represents enclosure-loss damping and must be greater than zero. It affects sealed, vented and band-pass calculations; it is not used for an open-baffle driver.

For a sealed enclosure, KFilter6 includes Ql consistently in the simplified SPL model, the full-circuit SPL model and the impedance calculation. A finite Ql lowers the resulting system quality factor without changing the enclosure resonance frequency represented by the model.

Bass-reflex tube helper

For vented and band-pass designs, the Tube D / L row provides a two-way helper with the diameter and the resulting length side by side:

Tube diameter -> Tube length
Tube length   -> Tube diameter

Both calculations use Vb and Fb. Changing the diameter recalculates the length; changing the length analytically recalculates a matching diameter. If Vb or Fb does not provide a valid positive calculation basis, the length is shown as n. a. and an attempted length edit does not overwrite the existing diameter.

Only the tube diameter is stored with the driver. Tube length remains a derived dialog value and is recalculated from the stored diameter, Vb and Fb.

Special case: Fs = 0

A driver with Fs = 0 intentionally bypasses the acoustic Thiele/Small path. Its impedance is then reduced to the electrical voice-coil model:

Z(f) = Rdc + j * omega * Lsp

This allows KFilter6 to represent cases where a full T/S acoustic model is not desired.

Vented rolloff and phase

In the simplified calculation path the vented enclosure is modelled as a fourth-order high-pass:

H(s) = s^4 / (s^4 + a3*s^3 + a2*s^2 + a1*s + a0),   s = j*omega

Since Patch 300 the denominator is formed as a complex number, so the vented branch contributes phase like the other three enclosure types. The magnitude is unchanged, which means an individual vented SPL curve looks exactly as before. What changes is the vector sum: a crossover region in which a vented driver overlaps another driver was previously summed without the rolloff phase.

There is no switch for this behaviour. The earlier magnitude-only calculation was a performance measure of the DOS-era original, not an alternative model.

Validation of loaded parameters

Driver parameters are validated before they are applied, on every loading path — JSON .kfp, legacy text .kfp and .kfd. The checks mirror exactly the divisions performed by the acoustic core:

1. Rdc, Lsp, Fs, Qts, Qes, Qms, Vas, Dm, Vb, Fb, V2 finite and >= 0
2. enclosure type within the supported range
3. Rdc > 0
4. if Fs != 0:  Qts > 0, Qes > 0, Qms > 0
5. if Fs != 0 and Vb > 0 and Fb > 0 and the enclosure is Vented or Bandpass:  Vas > 0

Rules 4 and 5 are conditional on purpose. Fs = 0 bypasses the acoustic path, so the quality factors are unused there, and rule 5 reproduces precisely the condition under which the parameter calculation divides by Vas.

Qts is deliberately not cross-checked against 1/Qms + 1/Qes. Published manufacturer data is routinely inconsistent in that respect, and rejecting such a file would be unhelpful. A non-blocking consistency hint in the dialog is a possible future addition.

No project that produced finite results before this validation existed is rejected by it.