Skip to Content

Detector options

Every threshold in the detectors and the scanner, with its default.

These are the defaults in the code. They are not yet adjustable in the app.

Eyebrow (BROW_DEFAULTS)

OptionDefaultMeaning
rise0.28Fire above baseline × (1 + rise).
rearm0.1Re-arm once below baseline × (1 + rearm).
holdMs200How long the rise must hold.
refractoryMs800Minimum time between fires.
baselineAlpha0.01How fast the baseline follows, per sample.
smoothAlpha0.5Smoothing on the ratio, per sample.
glitch1.0Ignore samples above baseline × (1 + glitch).
Schematic, not dataBaselinerearm: baseline × 1.1rise: baseline × 1.28holdMs: 200 msFiresFiresRe-armsRe-armsTime
Schematic, not data and not to scale. The curve only shows what each option measures. A raise must stay above the rise line for holdMs before it fires, and must drop below the rearm line before another can fire.

Exhale (EXHALE_DEFAULTS)

OptionDefaultMeaning
alpha0.15Smoothing on the trace, per sample.
minDrop6Minimum fall from the peak, in trace units.
minMs2500Minimum duration of the fall.
maxSlope5Maximum fall rate, in units per second.
maxMs6000A peak older than this is treated as stale.
fallHysteresis1The fall clock starts this far below the peak.
talkWindowMs1000Window for the talking check.
talkMax0.5Suppress above this fraction of talking frames.
Schematic, not dataLast peakminDrop: 6 units below the peakmaxSlope: this line no steeper than 5 units/sminMs: falling for 2.5 sFall clock startsFall clock startsFiresFiresTime
Schematic, not data and not to scale. The curve only shows what each option measures. All three must hold at once. maxSlope is the average fall so far, the drop from the peak divided by the time since the fall clock started.

Scanner (SCAN_DEFAULTS)

OptionDefaultMeaning
graceMs350A select this soon after a move picks the previous item.
maxColLoops2Unselected passes through a row before returning to rows.

On this page