Acoustic/Ultrasonic Sensing: Tx/Rx AFE, Phase & Edge Analytics
← Back to: Security & Surveillance
H2-1. Definition & Scope Boundary
Definition (45–55 words)
Acoustic/ultrasonic sensing for security perimeter applications is a complete edge signal chain: controlled Tx excitation drives a transducer, T/R isolation and blanking protect reception, Rx AFE conditions echoes, and phase/amplitude (plus correlation) features feed an on-edge MCU decision that outputs stable trigger/relay actions with audit-friendly event counters.
What this page solves (engineering focus)
- Reliable echo metrics under ring-down and EMI: avoid Rx saturation, false peaks, and unstable phase.
- Measurable AFE performance: noise floor, bandwidth, gain trajectory, and ADC headroom tied to detection margin.
- Maintainable edge decisions: thresholds + hysteresis/holdoff + logs that reproduce field failures.
Minimum evidence chain (measurable, audit-friendly)
Each conclusion should map to at least one measurement point and one log field.
- Tx stimulus: confirm
tx_freq,tx_vpp, burst length, repetition; verify no thermal derating or current limiting. - Rx front-end margin: check
noise_rms(ADC codes) and saturation flagssat_cnt; confirm band-pass center and bandwidth. - Feature integrity: track
phase_std,amp_rms,corr_peakover time windows; compare to baseline distribution. - Decision robustness: record
thr_ver,state(armed/triggered/holdoff), andtrigger_cnt; require hysteresis/holdoff to prevent chatter.
Minimum measurement checklist: (1) Tx waveform at driver output, (2) ADC input/range check,
(3) feature traces phase_std/corr_peak, (4) decision state transitions + counters.
Banned list (anti-scope-creep; Ctrl+F enforcement)
This page is not a radar, camera, VMS/NVR, PoE switch, or cloud platform deep-dive. Exclude the topics below:
- mmWave radar (FMCW/beamforming), fiber optic perimeter (Rayleigh/interferometry)
- camera ISP pipelines, ANPR/LPR, VMS ingest, NVR recording integrity/watermarking
- PTP grandmaster / SyncE design, PoE PSE switch architecture
- cloud dashboards / MQTT platforms, biometric templates / liveness / key management details
Figure F1 — System Signal Chain Overview
H2-2. Use Cases & Signal Metrics
Purpose: align scenario → metric → pass/fail → first evidence
Avoid generic descriptions. Each use case is defined by one primary metric and a second corroborating metric, plus two first-look evidence items that separate real targets from ring-down, EMI, or mechanical coupling noise.
| Scenario | Goal | Primary metric | Secondary metric | First 2 evidence items | Common traps | First fix |
|---|---|---|---|---|---|---|
| Presence / Proximity | Detect a nearby object reliably | Envelope / RMS energy in listen window | Correlation peak (corr_peak) |
ADC noise floor (noise_rms) + peak distribution |
Wind/mechanical vibration; AGC masking true changes | Adjust blanking/window; tighten BPF; cap AGC max gain |
| Intrusion / Approach | Detect motion/approach with low false alarms | Phase stability (phase_std) |
Energy slope (Δamp/Δt) | phase_std trace + decision state transitions |
Multipath phase jumps; temperature slow drift | Add hysteresis + time voting; temperature-compensate thresholds |
| Surface / Contact | Detect material/contact change | Amplitude ratio (baseline vs now) | Ring-down τ / Q change | Ring-down time constant + Tx Vpp stability | Mount torque/adhesive aging; enclosure resonance | Re-baseline + self-test; mechanical isolation; fixed reference target |
Recommended minimum log fields per event: thr_ver, state, phase_std, amp_rms, corr_peak, sat_cnt, trigger_cnt.
Metric notes (engineering interpretation)
Amplitude / Envelope
- Best for: proximity and contact-style detection where energy changes dominate.
- Sensitive to: broadband noise and AGC behavior; always track gain trajectory.
- Pass/fail hint: stable baseline histogram; target shifts distribution beyond hysteresis bands.
Phase stability
- Best for: separating structured reflections from random interference.
- Sensitive to: multipath and temperature drift; require windowing and compensation.
- Pass/fail hint:
phase_stdremains below threshold for N consecutive windows (time voting).
Correlation peak / ToF window
- Best for: detecting “echo-like” structure under ring-down and noise.
- Sensitive to: sidelobes and wrong window placement; blanking must be correct first.
- Pass/fail hint: corr peak index is stable; false-peak rate stays bounded across environments.
Practical pass/fail recipe
- Step 1: prove Rx is not saturating (
sat_cnt≈ 0 in listen window). - Step 2: verify feature stability (
phase_stdandcorr_peakdistributions). - Step 3: enforce decision robustness (hysteresis + holdoff + event counters).
Figure F2 — Metric Generation Path (from samples to decision)
H2-3. Transducer & Front-End Coupling
Why the transducer + mounting defines the AFE
In acoustic/ultrasonic sensing, the “sensor” behaves like a resonant energy store. Its electrical interface,
resonance frequency (f0), quality factor (Q), and ring-down time constant (τ) directly set the minimum
blanking time, the required Rx recovery margin, and the usable listen window. Mechanical coupling (adhesive, preload,
enclosure stiffness) can shift Q enough to turn near-range echoes into “invisible” events buried under ring-down.
Piezo ultrasonic vs MEMS microphone (AFE viewpoint only)
- Piezo / ultrasonic transducer: capacitive, high-impedance source with a sharp resonance; can reflect Tx energy back into the front end. AFE priorities: T/R isolation, input protection, fast recovery, and band-pass alignment to
f0. - MEMS microphone: low-level audio-band signal, bias/rail sensitive; typically requires low-noise gain, anti-alias filtering, and robust supply/grounding. AFE priorities: noise floor, EMI immunity, and stable bias/reference behavior.
- Shared system constraint: the AFE must produce stable metrics (envelope, phase, correlation peak) whose distributions stay separated across temperature and mounting variation.
Rule of thumb (design direction): high-Q piezo builds longer ring-down → longer blanking → reduced near-range sensitivity. If near-range detection is mandatory, reduce effective Q (mechanical damping or controlled drive energy) or enforce a later listen start.
Ring-down dominates near-range echoes
This page treats ring-down as a measurable, design-limiting artifact (not a “noise” label).
- What happens: after Tx stops, the transducer continues oscillating. The Rx chain sees a large residual waveform that may saturate the front end or inflate envelope/correlation metrics.
- What it breaks: early listen windows (near-range) become indistinguishable from ring-down unless blanking + recovery are sized by
τ. - What fixes it: enforce blanking gates, improve T/R isolation, prevent Rx saturation (headroom + clamps), and align BPF to avoid off-resonance energy that prolongs settling.
Evidence chain (measurable coupling parameters)
Each item below should be recorded at least once for “free” vs “mounted/loaded” conditions.
- Resonance
f0: measure via sweep or spectral peak after a short burst; verify BPF center matchesf0under real mounting. - Quality factor
Q/ ring-downτ: fit the post-Tx envelope decay. Useτto setblanking_usand the earliest listen start. - Free vs loaded amplitude: compare
amp_rmsandcorr_peakdistributions; ensure separation remains after temperature shifts and mounting tolerance. - Recovery headroom: track saturation indicators (
sat_cnt) during the listen window; near-zerosat_cntis a prerequisite for meaningful phase/correlation metrics.
Figure F3 — Equivalent model + ring-down vs listen window
f0), effective damping (Q), and ring-down (τ) which sets blanking and the earliest valid listen window.
H2-4. Tx Driver & Excitation
Tx sets the SNR ceiling — and the EMI risk
Transmit excitation defines the maximum usable signal energy at the receiver, but also determines conducted/radiated EMI, power dissipation, and recovery stress on the Rx front end. A “controllable” Tx is one whose waveform, amplitude, timing, and protection behavior are measurable and repeatable across temperature and supply variation.
Topology selection logic (no deep derivations)
- H-bridge: highest control authority for bipolar drive and energy delivery; primary risks are peak current, dv/dt EMI, and Rx overdrive recovery.
- Half-bridge: balanced cost/complexity; suitable when drive voltage is moderate and EMI can be managed with controlled edge rates and layout discipline.
- Push-pull: useful when higher excitation voltage is required (step-up stage use-cases); focus here is waveform symmetry and thermal stability (not magnetics deep-dive).
Acceptance criterion: the chosen driver must keep tx_vpp and burst timing stable, while preventing Rx saturation during the valid listen window (sat_cnt ≈ 0 post-blanking).
Waveform choices (measurable + verifiable)
- Burst: simplest to validate; supports clear blanking and stable windowing. Best when ring-down is the dominant constraint.
- Chirp: improves robustness under narrowband interference; verification relies on stable correlation peak behavior (
corr_peakdistribution) rather than a single-tone amplitude. - Coded sequences: use only when correlation sidelobes and timing can be bounded; verification is “false-peak rate” + “peak index stability” under environment variation.
Keep waveform documentation “audit-ready”: list tx_freq range, burst length, repetition period, and the exact listen window definition used for metrics.
Protection and observability (field-diagnosable)
- Over-current / short detection: current sense enables fast shutdown and produces a hard log signature (
oc_cnt). - Over-voltage / open-load: detects missing/loose transducer or cable fault; log with
ov_cnt/open_cnt. - Thermal derating: prevent “silent SNR collapse” by logging
ot_cntand recording the derate state; otherwise thresholds drift without explanation. - Repeatability check: store a lightweight Tx “fingerprint” per session (peak V, peak I, burst duration) to explain metric shifts later.
Figure F4 — Tx driver with protection + measurable points
H2-5. T/R Switching & Blanking
What this chapter controls
In ultrasonic/acoustic sensing, Rx instability is most often caused by Tx leakage and ring-down that drive the receiver into saturation or non-linear recovery. This chapter locks two design variables: isolation (how much Tx energy is prevented from reaching Rx) and blanking (how long the system waits until metrics become trustworthy).
T/R switching options (selected by voltage, speed, and recovery)
Selection is driven by measurable recovery behavior, not by component name. The decision target is: after Tx stop,
Rx must return to linear operation before Listen start.
| Option | Strength | Risk / cost | Best fit |
|---|---|---|---|
| Diode clamp / TVS | Fast protection, simple, survives high Tx peaks | Non-linearity and recovery “tail” can create early-window artifacts | High peak voltage where survival and robust clamps are mandatory |
| Analog switch / FET T/R | Controllable gating (disconnect Rx during Tx), tunable timing | Ron, leakage, charge injection, and isolation specs must be validated | Systems needing repeatable blanking and lower false-peak rate |
| Relay | Excellent isolation, low leakage | Slow switching, wear-out, timing jitter; limits high-PRF operation | Low-speed sensing where minimal leakage is prioritized |
Blanking window: a measurable gate (not a guessed constant)
- Definition: the period after Tx where Rx sampling and/or feature computation is disabled to avoid corrupted metrics.
-
Listen start criterion: begin sampling only when both are true:
- Linearity: ADC clipping is absent (
clip_flagcleared;sat_cnt≈ 0). - Settled baseline: residual ring-down envelope is near noise floor with margin (no structured peaks inside blanking).
- Linearity: ADC clipping is absent (
-
Practical guard: treat listen timing as a bound:
listen_start = tx_stop + max(recovery_time, ringdown_to_floor, settling_margin).
A short blanking window increases near-range sensitivity only if it does not reintroduce saturation and false peaks.
Crosstalk paths (and fast isolation checks)
- PCB coupling: Tx edges capacitively inject into high-impedance Rx nodes → early-window spikes.
- Ground return / common impedance: Tx current modulates Rx reference → baseline wobble and phase drift.
- Cable / connector coupling: harness becomes an antenna → inconsistent false peaks by cable routing.
- Enclosure / structure coupling: mechanical vibration couples energy directly into the transducer → “electrical isolation” alone is insufficient.
Fast checks: (1) overlay Rx waveform with Tx gating to confirm time-locked spikes, (2) inspect blanking statistics to ensure no structured peaks exist before listen start.
Evidence chain & acceptance checks
- Rx saturation / recovery time: time until
sat_cntstops increasing postTx stop. - Blanking noise floor: distribution of
amp_rmsinside blanking should resemble noise, not peaks. - False-peak rate: probability of
corr_peakabove threshold during blanking should be near zero (or tightly bounded). - Window integrity: keep logs of
blanking_us,listen_us, and window index used for feature extraction.
H2-6. Rx AFE Design
AFE targets derived from f0 / Q / τ and blanking
Rx AFE design must remain valid under real ring-down and crosstalk. Targets are not “typical” values; they are derived
from measured resonance and recovery behavior. The acceptance goal is stable metric distributions
(amp_rms, corr_peak, phase_std) while keeping clipping absent in the valid listen window.
- Noise floor: input-referred noise must allow far-range detection above noise statistics.
- Dynamic range: prevent near-range saturation without losing far-range sensitivity.
- Band definition: align filtering to measured
f0and expected drift. - Observability: expose
sat_cnt,clip_flag,gain_trace, and ADC peak statistics for field diagnosis.
LNA: noise + bandwidth (engineerable, testable)
- Noise focus: use input-referred noise as the sizing anchor for far-range capability.
- Bandwidth discipline: limit bandwidth around the target band to avoid integrating environmental noise.
- Recovery readiness: ensure the LNA returns to linear behavior before
Listen start(post-blanking). - Protection impact: clamps and input protection must not introduce long recovery tails that mimic echoes.
BPF: center frequency and bandwidth matched to measured resonance
- Center frequency: set near measured
f0under final mounting (not only bench conditions). - Bandwidth: wide enough for the chosen excitation, narrow enough to suppress out-of-band noise and interferers.
- Stability: avoid filter behaviors that distort phase metrics or move correlation peak location.
PGA / AGC: avoid near-range saturation without “gain pumping”
- Two-region strategy: use predictable base gain plus controlled gain adjustments to cover range.
- Gating: freeze AGC during Tx and blanking; allow updates only in valid listen windows.
- Telemetry: record
gain_traceso threshold shifts and detection drift remain explainable. - Hard stop: clipping removal has priority; clipped data invalidates phase/correlation reliability.
ADC: sampling, ENOB, and input-range matching
- Sampling rate: support the target band and feature pipeline (envelope, correlation, phase) without aliasing.
- ENOB: size for noise-floor resolution; insufficient ENOB collapses separability of distributions.
- Input range: match PGA output so peaks remain below full-scale in the valid listen window.
- Flags: expose
clip_flagand trackadc_peakstatistics to prove headroom.
Evidence chain (minimum signals to log)
- Input-referred noise estimate: noise RMS in a known “no-target” listen window.
- Saturation indicators:
sat_cnt,clip_flaggated to listen window only. - AGC behavior:
gain_traceand state transitions (freeze/unfreeze). - ADC health: peak histogram or max/min per window (
adc_peak), overflow markers. - Metric stability: running stats of
corr_peakandphase_stdfor drift detection.
H2-7. Phase/Amplitude Measurement
Engineering boundary (accurate measurement without a “paper”)
Phase/amplitude measurement is only reliable when the receiver is linear and the listen window is clean. This chapter defines a practical measurement pipeline that stays testable: windowed amplitude statistics, I/Q-derived phase stability, and correlation-peak ToF extraction with sidelobe guards.
Amplitude: envelope vs peak vs RMS (choose by failure mode)
Amplitude is not “one number.” Different choices fail differently under residual ring-down, crosstalk spikes, and noise-floor changes.
| Metric | Best use | Most sensitive to | Minimum evidence to log |
|---|---|---|---|
| amp_peak | Strong echoes, simple presence checks | Spikes (Tx leakage, clamp tail), single-sample outliers | clip_flag, peak_index, peak histogram (optional) |
| amp_rms | Energy-based detection, robust trend across windows | Window definition, noise-floor drift | noise_rms, window start/end, amp_rms |
| env_peak | Burst echo envelope, easier thresholding than raw peak | Filter shape, non-linearity and saturation recovery | listen window id, sat_cnt, env_peak |
- Hard gate: any clipping (
clip_flag) inside the listen window invalidates amplitude and phase outputs. - Noise reference: record
noise_rmsfrom a known “no-target” region to keep thresholds portable.
Phase: I/Q demod (or correlation-phase) expressed as stability
Phase is most useful as a stability metric, not as a single instantaneous number. The implementation stays practical:
demodulate with a known reference, compute phase per sample (or per block), then use phase_std (and optional outlier count)
in the listen window.
- I/Q demod path: Mix (NCO/reference) → LPF → I/Q →
atan2(Q,I)→ phase. - Correlation-phase option: phase estimate around the correlation peak; only valid if peak quality passes
peak_ratio. - Guardrails: freeze AGC during Tx/blanking; compute phase only when listen gate is enabled and clipping is absent.
Primary evidence: phase_std distribution over temperature points and mounting conditions; phase drift must remain explainable with logged version tags.
ToF / correlation peak: windowing, peak rules, sidelobe handling
- Listen-window anchoring: correlation search starts at
Listen start(post blanking), not at Tx stop. - Peak validity: require both
corr_peakabove threshold andpeak_ratio(main/secondary peak) above a guard limit. - Search constraints: limit peak search range to physically plausible ToF bins to reduce false positives.
- Sidelobes: coded/chirp excitation may produce sidelobes; the guard is
peak_ratio+ optional “peak width/shape” check.
Evidence chain & acceptance checks
- Linearity:
clip_flag==0and listen-windowsat_cntnot increasing. - SNR anchor:
amp_rmsreferenced tonoise_rms(ratio or dB, either acceptable). - Phase trust:
phase_stdremains stable for the same target across temperature points (logtemp_point). - ToF trust: output ToF only when
corr_peakandpeak_ratiopass; trackfalse_peak_rate. - Traceability: every measurement record tags
algo_ver,threshold_set_id, and window index.
H2-8. Edge MCU Analytics
Goal: reproducible decisions under compute and noise constraints
Edge analytics turns measurable features into stable triggers. This chapter defines a repeatable pipeline (features → thresholds → consistency → trigger), with versioned parameters and minimal field logs that can explain every event.
Compute budget & real-time scheduling (keep it bounded)
- Per-window runtime: treat each listen window as a fixed-time budget (feature extraction must complete before next window).
- Tiered workload: run lightweight gates first (energy/RMS), then correlation, then phase stability if needed.
- Deterministic latency: log
decision_latency_msto confirm real-time behavior across firmware builds. - Gated processing: skip compute when
listen_enis false or whenclip_flagis set.
Feature vector (small set, high explainability)
Features are grouped by what failure mode they reject. Keeping a compact feature vector improves tuning, logging, and field interpretability.
- Energy / amplitude:
amp_rms,amp_ratio(range / surface change). - Correlation quality:
corr_peak,peak_ratio(reject sidelobes and noise peaks). - Phase stability:
phase_std(reject unstable reflections / mechanical noise signatures). - Band energy:
band_energy(reject out-of-band interference).
Decision logic: multi-threshold + hysteresis + time consistency
- Stage 1 (gate): Energy must exceed
Th1to consider a candidate. - Stage 2 (quality): Correlation must pass
Th2andpeak_ratiomust exceed a guard limit. - Stage 3 (stability): Phase stability requires
phase_std < Th3(optional per use-case). - Hysteresis: separate enter/exit thresholds to prevent chatter; include a hold-off timer for relay outputs.
- Consistency: vote N-of-M windows (or consecutive windows) before asserting
TRIGGER.
Every event must reference threshold_set_id and algo_ver so a field trace can be reproduced in the lab.
Trigger / relay outputs (controlled, debounced, safe)
- Output forms: GPIO trigger pulse, latched output, or relay drive (implementation-specific; the policy remains the same).
- Debounce / minimum pulse: enforce minimum assert width; reject re-trigger within hold-off window.
- Anti-chatter: combine hysteresis + vote + hold-off to prevent rapid cycling in borderline conditions.
Logging for replay (minimal “event packet” for support)
- Ring buffer: keep short pre/post-event windows (raw decimated samples or feature snapshots).
- Feature snapshot: store the feature vector at trigger time: energy, corr quality, phase stability.
- Counters:
event_cnt,false_cnt(or “rejected candidate” count) for on-device health tracking. - Tags:
log_schema_ver,threshold_set_id,algo_ver, plustemp_pointand supply tag if available.
H2-9. Outputs & Interfaces
Engineering pitfalls (reliable action without false triggering)
This chapter addresses the common engineering pitfalls related to output reliability: relay surge, output jitter, cable ESD, and interlocking logic.
Output types: open-drain/relay/isolated DO (select by load)
- Open-drain: for triggering or low-power short-line applications (requires external pull-up).
- Relay: for driving larger loads with isolation, but consider coil surge and mechanical bounce.
- Isolated DO: for long-line, high-interference environments; ensures separation between the load and control electronics.
Each output type has its failure mode: open-drain is vulnerable to voltage instability; relay suffers from mechanical bounce; isolated DO must handle external surge without causing reverse backflow.
Anti-chatter policy: minimum hold time, release condition, bounce handling
- Minimum hold time: ensure output remains stable for a defined period to avoid chatter (typically 20-100ms).
- Release condition: ensure a stronger threshold for output deactivation to prevent premature switching.
- Re-arm delay: prevent multiple triggers by introducing a hold-off period after a release.
The goal is to ensure stable output actions and prevent rapid switching that can lead to mechanical or electronic failure.
Driver & load stress: surge, back emf, and current waveform analysis
- Relay coils: Ensure proper flyback protection and current limiting to prevent damage to the driver or MCU.
- Inductive loads: Protect the driver from inductive kickback and ensure that the output is designed to handle such stresses.
- Bounce handling: Minimize the risk of contact bounce by using debouncing algorithms or physical mechanisms.
Monitoring current waveform during load switching can help identify potential issues such as excessive surge or back emf that could damage the output circuitry.
I/O protection: TVS, current-limiting, and surge suppression (module-level focus)
- TVS: Use TVS diodes near the output to clamp any voltage spikes and protect the device.
- Current-limiting: Ensure that series resistors or current-limiting components are in place to protect the relay and drivers.
- Surge suppression: Use common-mode chokes or other components to protect against high-energy transients from long cables or inductive loads.
Protecting the output from both transient and continuous electrical surges is critical for ensuring long-term reliability and preventing failure.
Evidence chain & acceptance checks: timestamp, jitter count, current waveform, fault code
- Timestamp: Record precise timestamps for output actions, including activation, deactivation, and fault events.
- Jitter count: Count the number of times the output jittered or failed to meet the required time threshold.
- Current waveform: Record the load current waveform during output switching to verify that it matches the expected behavior.
- Fault code: Implement fault codes for various output failure modes such as overcurrent, relay sticking, or ESD reset events.
These logs ensure that all output actions are traceable and that any failures can be debugged and corrected quickly.
H2-10. Calibration & Compensation
Environmental consistency (how to maintain performance across environments)
This chapter focuses on the necessary calibration items for maintaining consistency across temperature, humidity, and aging. It provides the engineering strategies and verification methods for calibration without discussing storage systems or NVM.
Temperature drift: frequency, gain, sound speed
- Frequency drift: change in resonance due to temperature variations.
- Gain drift: changes in system gain as a function of temperature.
- Sound speed variation: distance mapping changes for ultrasonic distance sensing due to temperature fluctuations.
Humidity, wind, rain: effects on the echo
- Echo attenuation: reduced echo return due to environmental conditions.
- Phase instability: increased jitter or inconsistency due to environmental impact.
- Engineering countermeasures: applying filtering or threshold compensation strategies to mitigate environmental influences.
Field self-test: transmission, reception, blockage detection
- Transmission self-test: periodic transmission checks to ensure consistent output under different environments.
- Reception self-test: validate received signal strength and quality.
- Blockage detection: detect obstructions that could affect the sensing accuracy.
Evidence chain & verification: calibration before and after error comparison
- Verification: ensure that calibration before and after application produces consistent, measurable improvements.
- Drift curve: verify and log drift curves for all key metrics (gain, frequency, sound speed).
- Test plan: conduct environmental testing with multiple conditions to assess overall system accuracy and consistency.
H2-11. Validation & Field Debug Playbook
How to use this playbook (minimal tools, evidence-first)
- Lock the condition: reproduce with the same range/target/angle/weather, and note temperature + moisture.
- Collect the first 2 evidences: one “analog-side” (saturation/noise/AGC) + one “feature-side” (phase/correlation/peak ratio).
- Isolate fast: change only one variable (blanking, Tx energy, window, threshold set, cable disconnect) and compare logs.
- Apply the first fix: prefer firmware/window/threshold policies first; use hardware fixes when evidence points to coupling/surge/backflow.
Minimum Field Evidence Pack (log fields + 2 waveforms)
Capture these items first; they map directly to the symptom cards below.
| Stage | What to capture | Typical meaning | Fast discriminator |
|---|---|---|---|
| Gating | blanking_us, listen_start_us, window_len_us |
Whether Rx listens during ring-down / leakage | If failures cluster at window start → blanking/leakage |
| Rx health | clip_flag, sat_cnt, noise_rms, agc_gain (trace or end value) |
Saturation, recovery, noise floor, gain hunting | sat_cnt up + agc_gain down → overdrive/coupling |
| Features | amp_rms, phase_std, corr_peak, peak_ratio, (optional) tof_bin |
Amplitude SNR, phase stability, correlation confidence | peak_ratio low → multipath/sidelobes/noise |
| Decision | threshold_set_id, algo_ver, event_cnt, decision_latency_ms |
Traceability + consistency | Different threshold_set_id → different false/miss behavior |
| Outputs | output_assert_ts, output_release_ts, chatter_cnt, fault_code |
Chatter, cable injection, load stress | chatter_cnt > 0 → debounce/hold-off insufficient |
| 2 waveforms | 1) Rx node (post-LNA/PGA or ADC input) 2) Tx drive (voltage or current sense) | See leakage/ring-down vs valid echoes | Rx saturates after Tx → blanking/T/R isolation |
Note: This chapter references calibration only as “runtime compensation/threshold profile” and does not discuss storage/versioning mechanisms.
Pre-field validation checklist (fast acceptance gates)
- Window sanity:
listen_start_usmust start after ring-down; window must cover expected ToF/echo span. - No-clipping rule: near-range target should not create persistent
clip_flagor risingsat_cnt. - Noise baseline: record
noise_rmsin “no target” state; thresholds should be relative to this baseline. - Temp points: at least 3 points (low/room/high) with logged
corr_peak+phase_stddrift. - Output stress: output toggling must not cause resets;
chatter_cntshould remain 0 in steady conditions. - Traceability: always log
algo_ver+threshold_set_idin every event.
Symptom 1 — False alarms are frequent (stable target, random triggers)
- Feature:
peak_ratio+corr_peak - Rx health:
noise_rms(andagc_gainif available)
- Low peak_ratio + high noise_rms: noise/multipath dominating → tighten window/ratio gates.
- High corr_peak but false events persist: decision policy too permissive → add hysteresis/N-of-M consistency.
- Shrink search window; raise
peak_ratiothreshold; require 2–3 consecutive windows (vote). - Freeze AGC (or limit AGC range) and compare false rate.
- Firmware: add hysteresis + N-of-M vote + minimum hold-off before re-arm.
- Noise immunity hardware (module-level): add better Rx band limiting and ESD hardening near the connector.
- MPN examples: CM choke TDK ACM2012 series; ESD diode Nexperia PESD5V0S1UL; low-noise op-amp TI OPA1652 (audio/low-noise) or ADI ADA4807 (wideband).
Symptom 2 — Missed detections (low sensitivity / shorter range than expected)
- Feature:
amp_rms/noise_rms(SNR proxy) - Feature:
corr_peak
- SNR low: coupling/Tx energy/environment attenuation issue.
- SNR OK but corr_peak low: frequency/window/filter mismatch (listening in the wrong place).
- Increase Tx burst length by 20–30% (temporary) and see if corr_peak rises.
- Shift BPF center / demod reference slightly (±1–3%) and compare corr_peak.
- Firmware: tighten listen window around expected ToF; switch to relative SNR thresholds.
- Analog path: ensure Rx BPF matches transducer band; avoid excessive loading of the sensor.
- MPN examples: PGA/VGA ADI AD8336 (VGA) / TI VCA821 (VGA); ADC TI ADS7042 (fast SAR) / ADI AD7685 (SAR); low-leak analog switch TI TS5A23157 (T/R gating helper).
Symptom 3 — Works in dry air but fails in rain / high humidity
- Feature:
phase_std(phase jitter) - Feature:
peak_ratio(echo confidence)
- phase_std ↑ and peak_ratio ↓: scattering/multipath increases → strengthen consistency gates.
- noise_rms ↑ strongly: environmental noise / water impact → raise SNR-relative thresholds.
- Switch to a “wet profile” threshold set (runtime selection) and compare false/miss rates.
- Increase N-of-M voting length; widen blanking slightly if early clutter increases.
- Firmware: use
amp_rms/noise_rmsgating + time-consistency vote; avoid absolute amplitude thresholds in wet conditions. - Port protection: humidity often correlates with cable injection → harden the I/O edge.
- MPN examples: TVS Littelfuse SMBJ series (select voltage per line); GDT Bourns 2037 series (for higher-energy surge, if applicable); isolator ADI ADuM141E / TI ISO7721 for noisy long-line outputs.
Symptom 4 — Near-range saturation / long recovery after Tx (dead zone too large)
- Rx health:
sat_cnt+clip_flag - Gating:
listen_start_usvs expected ring-down time
- sat_cnt spikes at window start: blanking too short or T/R leakage too high.
- sat_cnt persists across the window: Rx gain too high or clamp/protection missing.
- Increase
blanking_usand re-test; reduce Tx burst amplitude/length by 20% temporarily. - Limit AGC maximum gain; compare saturation counts.
- Firmware: set conservative blanking + adaptive window start (based on measured recovery time).
- Hardware: improve T/R isolation or add fast clamp at Rx input.
- MPN examples: analog switch ADI ADG1419 / TI TS5A23157; fast diode clamp Nexperia BAV199 (low leakage) / Vishay BAS70; relay option (slow but high isolation) Omron G5Q (if switching speed allows).
Symptom 5 — Worse at night / low temperature (drift-driven performance drop)
- Feature:
corr_peakdrift vs temperature - Feature:
phase_stddrift vs temperature
- corr_peak drops systematically: resonance / band mismatch or sound-speed mapping drift.
- phase_std rises: stability degrades → tighten consistency gates and/or adjust demod reference.
- Try a temperature-based threshold profile (runtime) and compare event quality.
- Shift demod reference frequency slightly and observe corr_peak recovery.
- Firmware: apply temperature-driven compensation to thresholds/window start (runtime only).
- Sensor/temperature readout hardware: ensure stable temperature sensing for compensation.
- MPN examples: temp sensor TI TMP117 / Microchip MCP9808; precision reference (if ADC needs it) TI REF3425; low-drift op-amp TI OPA2192 (DC/low drift, if applicable in the chain).
Symptom 6 — Directional blind spot / mounting sensitivity (one angle fails)
- Feature:
amp_rmsbaseline vs angle - Gating/Rx: early-window energy (proxy for ring-down/clutter) +
noise_rms
- amp baseline low at one direction: mechanical coupling/beam pattern/obstruction.
- early clutter high: housing coupling / crosstalk path dominates.
- Change mounting torque/position; compare amplitude baseline.
- Apply temporary shielding/grounding change to see if clutter reduces.
- System fix: define an “installation acceptance test” based on baseline
amp_rmsdistribution and early clutter. - EMI/cable coupling fix: add controlled return paths and filtering near the transducer/connector.
- MPN examples: shielded inductor (if rail ripple coupling is suspected) Coilcraft XAL series; ferrite bead Murata BLM21 series; ESD diode TI TPD1E10B06.
Symptom 7 — ToF / correlation peak “jumps” (ghost peaks or multipath)
- Feature:
peak_ratio(main vs secondary peaks) - Feature:
corr_peak+ peak position histogram (if available)
- peak_ratio near 1: sidelobes/multipath → tighten peak selection rules.
- corr_peak weak overall: wrong band/window or excessive noise.
- Shrink the search window; increase
peak_ratiothreshold. - Change burst/chirp length slightly and compare peak stability.
- Firmware: enforce “peak must persist for N windows” + sidelobe rejection rule.
- Analog: improve band limiting to reduce out-of-band clutter.
- MPN examples: active filter op-amp TI OPA1642 / ADI ADA4898-2 (wideband); analog switch for clean gating TI TMUX1101 (low leakage); precision resistor network (gain consistency) Vishay ACAS series.
Symptom 8 — Unit-to-unit variation (same firmware, different pass/fail)
- Feature: amplitude baseline spread (
amp_rmsat a fixed fixture) - Rx/decision:
noise_rmsbaseline +threshold_set_id
- amp baseline spread large: coupling / sensor variance dominates.
- noise baseline spread large: analog noise / layout / shielding differences.
- Use a fixture input or a known reference target and measure baseline distributions.
- Switch to relative thresholds (SNR-based) and compare pass rate.
- Process fix: define production acceptance limits using baseline distributions (not a single absolute threshold).
- Analog consistency: stabilize gain/filters using tight-tolerance networks and low-drift parts.
- MPN examples: resistor network Vishay ACAS; reference TI REF3312; LDO for low-noise rail TI TPS7A20 / ADI LT3042 (ultra-low noise).
Symptom 9 — Output chatter / interlock false action (relay toggles, unstable DO)
- Output:
chatter_cnt+ toggle interval fromoutput_assert_ts/output_release_ts - Fault:
fault_code(overcurrent / suspected reset / brownout)
- Short intervals + no faults: debounce/hold-off policy insufficient.
- Resets / brownout indicators: load surge or cable injection (ESD/EFT) backflow.
- Disconnect the external cable/load and repeat; if chatter disappears → injection/load issue.
- Increase minimum hold time + re-arm delay; compare chatter count.
- Firmware: minimum ON time + hysteresis + hold-off + N-of-M vote before asserting output.
- Driver path: add proper flyback and surge protection; isolate long lines when needed.
- MPN examples: relay driver array TI ULN2003A; MOSFET (low-side) AOS AO3400A / Nexperia PMV65EN; flyback diode SS14 (Schottky) / 1N4148 (fast small-signal); TVS Littelfuse SMBJ series; digital isolator TI ISO7721 / ADI ADuM1201.
Figure F11 — Field debug decision tree (compact)
H2-12. FAQs ×12 (Answers included)
Q1. False alarms are frequent: Is it environmental noise or Rx saturation? (→H2-6/H2-11)
Answer: To diagnose false alarms, first check the noise_rms baseline against sat_cnt. If noise_rms is higher than expected and sat_cnt increases, the issue may be from external noise or insufficient signal filtering. If the saturation is due to Rx overload, check for proper blanking_us settings and increase peak_ratio thresholds.
Q2. Near-range detection failure: Is it too long blanking or ring-down time? (→H2-5/H2-3)
Answer: If near-range detection fails, the issue might be related to an excessively long blanking_us period or ring-down time. First, measure the sat_cnt and compare the response time of the system after Tx. If sat_cnt is high and the window isn’t aligned correctly, adjust the listen_start_us and reduce the blanking_us.
See: H2-5 T/R Switching & Blanking, H2-3 Transducer & Front-End Coupling
Q3. Failure only in rain or strong winds: Is it coupling change or threshold strategy issue? (→H2-3/H2-10)
Answer: In harsh weather conditions, such as rain or strong winds, the failure may be due to either a change in coupling or an inappropriate threshold setting. If the signal strength drops when the environment changes, you may need to adjust the threshold dynamically or employ a weather-specific threshold profile. Measure the phase_std and peak_ratio to assess the effect of environmental factors.
See: H2-3 Transducer & Front-End Coupling, H2-10 Calibration & Compensation
Q4. Phase is very unstable but amplitude is normal: Is it clock jitter or multipath reflections? (→H2-7/H2-2)
Answer: If the phase is unstable but amplitude remains steady, it is likely due to clock jitter or multipath reflections. Use phase_std to detect jitter and compare it to the corr_peak. If the jitter is high and correlation peaks are fluctuating, it suggests multipath interference. Adjusting the frequency or filter window can mitigate this issue.
See: H2-7 Phase/Amplitude Measurement, H2-2 Use Cases & Signal Metrics
Q5. Amplitude fluctuates widely: Is AGC hunting noise? (→H2-6)
Answer: Amplitude fluctuations can occur if the AGC (Automatic Gain Control) is hunting noise. When agc_gain increases due to noise, it indicates that the AGC is amplifying unwanted signals. To resolve this, set a noise floor threshold using noise_rms to prevent AGC from reacting to fluctuations.
See: H2-6 Rx AFE Design
Q6. Tx voltage is normal, but echo is weak: Prioritize transducer or T/R isolation? (→H2-3/H2-5)
Answer: If the Tx voltage is normal but the echo is weak, the issue is more likely due to insufficient T/R isolation rather than the transducer itself. Check the listen_start_us and increase blanking_us to ensure proper isolation. Weak echoes could also indicate that the transducer’s gain or sensitivity is not matched with the system.
See: H2-3 Transducer & Front-End Coupling, H2-5 T/R Switching & Blanking
Q7. Worse performance at night: Is it temperature drift or un-compensated thresholds/windows? (→H2-10)
Answer: If performance degrades at night, it is likely due to temperature drift affecting the system’s frequency or amplitude calibration. Use temp_point to check drift and implement temperature-based compensation to adjust the thresholds or window start times. Apply corr_peak and phase_std to verify the stability of the readings.
Q8. After replacing the mainboard, performance deteriorates: Is it front-end gain calibration or frequency shift? (→H2-6/H2-10)
Answer: A deterioration in performance after replacing the mainboard is likely due to mismatched front-end gain calibration or a frequency shift. Check the gain_offset_trim and measure the drift in the amp_rms. If the gain calibration is off, recalibrate the system. Also check the phase_std to identify any frequency shift.
Q9. Trigger output jitter: Is it decision hysteresis insufficient or output stage bounce? (→H2-8/H2-9)
Answer: Output jitter often occurs if decision hysteresis is insufficient or if there is bouncing at the output stage. Check the chatter_cnt and the interval between output_assert_ts and output_release_ts. If the jitter is due to insufficient decision hysteresis, increase the hold-off time and add more voting rules in the decision stage.
Q10. EMI/ESD causes intermittent failure: Which two measurements are most informative? (→H2-9/H2-11)
Answer: When EMI or ESD causes intermittent failure, measure the output current waveform (current_waveform) and saturation count (sat_cnt). If the failure correlates with surges or spikes in the current waveform, the issue is likely due to insufficient protection or isolation. If the saturation count increases without adequate signal reception, T/R isolation might be inadequate.
See: H2-9 Outputs & Interfaces, H2-11 Validation & Field Debug
Q11. Correlation peak looks fine but the decision is unstable: How should windowing and sidelobe be handled? (→H2-7)
Answer: If the correlation peak looks fine but the decision is unstable, it may be due to poor handling of sidelobes or improper windowing. Adjust the window_len_us and ensure the sidelobe rejection filters are strong enough to prevent false peaks. Tighten the selection criteria for valid peaks.
Q12. How to perform minimal self-check: Can the sensing link health be assessed without external targets? (→H2-10/H2-8)
Answer: To perform a minimal self-check without external targets, use internal self-test features like loopback tests or virtual targets to check signal integrity. Implement built-in self-diagnostics for transmission and reception to ensure that the sensing chain is operational. The threshold_set_id can be used to check if self-test routines match the normal operating profile.
See: H2-10 Calibration & Compensation, H2-8 Edge MCU Analytics