Active Radar/Microwave Intrusion Detector Hardware Guide
← Back to: Security & Surveillance
Core idea: Active radar/microwave intrusion sensors turn motion into a measurable Doppler/range signature, then decide alarms using evidence you can log—noise floor, AGC/clip state, interference counters, and temperature-calibrated thresholds.
When false alarms or missed detections happen, the fastest fix is to follow a two-measurement evidence chain (spectrum + key counters) to isolate root cause (coverage/multipath, Rx dynamic range, interference, or drift) before tuning thresholds.
H2-1. Definition & Detection Boundary
Active radar/microwave intrusion detection uses a modulated RF transmitter and coherent receiver to sense motion or approach within a defined zone. It outputs alarm events (and optionally direction/speed grades) based on Doppler/range-energy evidence, not identities or video proof. The core is RF front-end + DSP/MCU decision logic with calibration.
Boundary rule: This page focuses on RF Tx/Rx modulation, baseband evidence, and decision outputs. It does not cover cameras/ISP/video recording platforms or PoE switch infrastructure.
What it detects (scope-owned):
- Motion presence inside a coverage zone via Doppler energy above a noise-floor model (clutter suppressed).
- Approach vs leave (optional) using Doppler sign, multi-bin tracking, or simple state logic (no camera fusion here).
- Zone/priority (optional) via range-gate (FMCW/pulse) or multi-threshold Doppler windows (CW).
What it does not do (explicitly out-of-scope):
- Identity / classification that depends on face/plate/video analytics pipelines.
- Video evidence chain (codec, NVR/VMS ingest, recording integrity). Only alarm metadata is handled here.
- Passive modalities (PIR/IR beam/FO fence) beyond a single comparison sentence; their AFE/optics are not covered.
Outputs (engineer-facing):
- Logical outputs: alarm event, occupancy state, optional direction/speed grade, tamper/fault flags.
- Physical outputs: relay contact / open-collector GPIO; RS-485 frames; optional Ethernet reporting (interface presence only).
Evidence hooks (minimum measurable proof points to avoid “guessing”):
- Noise floor & spectrum:
noise_floor_db, peak-bin energytarget_energy, peak indexpeak_bin. - Front-end health:
agc_state,adc_clip_count, LO spur markerspur_detect(boolean or counter). - Event accountability:
alarm_count,false_alarm_count, last trigger reasontrigger_code. - Drift tracking:
temp_c,cal_version,nvm_crc_ok,fw_version.
H2-2. System Architecture & Signal Chain
The signal chain is the accountability backbone: every symptom must map to a block, and every block must have at least one measurable indicator. Later chapters refine each block (waveform, Tx/Rx details, baseband pipeline, drift, interference), but this chain remains unchanged.
Canonical chain (one-line):
PLL/VCO → PA → Antenna → LNA → Mixer → IF filter →
ADC → DSP/MCU (FFT/Detection) → Decision → Relay/RS-485/Ethernet (opt.)
RF front-end (Tx/Rx) responsibilities:
- Tx (PLL/VCO + PA): generates a stable, well-bounded waveform. Key risk is spectral purity (phase noise/spurs) and coupling back into Rx.
- Rx (LNA + mixer + IF): must preserve weak target energy without saturating under strong static reflectors or external interferers.
- Antenna/Isolation: shapes coverage and determines Tx→Rx leakage level (often the root of near-zone noise-floor lift).
Mixed-signal boundary (IF / ADC) — where many “mystery” failures are born:
- IF bandwidth: too narrow clips target energy (missed detection); too wide lifts noise floor (false alarms).
- ADC headroom: even short bursts of clipping can raise false alarms by corrupting noise estimation and thresholding.
- Reference sensitivity: PLL supply ripple and ADC reference noise can appear as phase/amplitude modulation artifacts in baseband.
Digital pipeline (kept minimal here; details belong to later chapters):
- Pre-conditioning: I/Q DC-offset correction, gain normalization, basic clutter removal.
- Spectral analysis: FFT (Doppler; plus range FFT for FMCW/pulse variants).
- Detection: noise-floor estimation + CFAR/threshold logic → event decision (alarm + optional grade).
Evidence map (minimum “measure to believe” items):
| Block | Key metric (1 per block) | Primary evidence | Typical symptom if wrong |
|---|---|---|---|
| PLL/VCO | Phase noise / spur level | noise_floor_db rise near DC; spur marker spur_detect |
False alarms spike; near-zone “always busy” |
| PA | Pout stability / harmonics | Tx monitor (if present), spectral snapshot, power droop correlation | Range/coverage collapses or becomes erratic |
| Antenna / Isolation | Isolation (Tx→Rx) | Baseline leakage signature; DC offset shift in I/Q | Near-field noise-floor lift, “phantom” targets |
| LNA | NF or linearity (choose one) | AGC stuck low, sensitivity check vs reference target | Missed detections, especially at edge of zone |
| Mixer + IF | IF BW / image rejection | IF passband check; spectrum shape vs expected bins | Targets “smear” or vanish; unstable thresholding |
| ADC | SNR / headroom | adc_clip_count, histogram of samples, peak occupancy |
Both false alarms and missed alarms (noise model breaks) |
| DSP/MCU | Noise model accuracy | target_energy vs noise_floor_db stability; detection hit-rate |
Random triggers; direction/speed grade flaps |
| Outputs | Event integrity | alarm_count, trigger_code, timestamp monotonicity |
“Alarm happened but panel didn’t see it” |
H2-3. Waveform & Modulation Choices (CW / FMCW / Pulse-Doppler / FSK)
Modulation is not a “feature upgrade”; it determines what can be proven with evidence. The primary decision is whether the system must separate range (where the motion happens) from velocity (how it moves), while surviving interference and staying within ADC/MCU budget.
Decision gates: Need distance gating to mask fixed reflectors → prefer FMCW or pulse-based. Only motion/approach detection with minimal compute and power → CW can be best. Dense deployments / mutual interference risk → favor waveforms that allow time/frequency scheduling and clear interference signatures.
CW (Continuous Wave)
- What it gives: Doppler velocity evidence (V). No intrinsic range separation (R).
- Strength: simple RF/baseband, low average power, stable motion detection when the zone geometry is clean.
- Weakness: fixed reflectors cannot be “gated out” by distance; multi-path and strong static clutter may raise the noise model.
- Typical false-alarm sources: moving foliage, vibrating metal sheets, rotating fans, nearby radars causing spectral lines.
FMCW (Chirp)
- What it gives: range gate (R) + velocity evidence (V) when processed with range FFT + Doppler FFT.
- Strength: distance gating can mask known static reflectors (e.g., walls, fences) and support “near / mid / far” zones.
- Tradeoffs: chirp linearity, bandwidth and calibration matter; ADC bandwidth and DSP pipeline become first-order constraints.
- Common failure pattern: sidelobe energy triggers adjacent range gates → false alarms if windowing/threshold logic is not tuned.
Pulse-Doppler / FSK (principles only)
- Why choose: easier time scheduling (duty-cycling) and interference management (time/frequency hopping), often lower average power.
- What it can give: range gating and/or velocity evidence depending on windowing and processing.
- Key constraint: peak power and timing windows shape detection probability; keep discussion at the design-principle level (no certification workflow here).
Evidence points that validate the choice (measure before blaming “algorithm”):
- Doppler spectrum: stable peak energy above
noise_floor_dbfor real motion; narrow fixed lines suggest spur/interference. - Range gate energy (FMCW/pulse): gate vector
range_gate_energy[k]shows where motion concentrates; “all gates rise” points to interference/noise model failure. - Sidelobe-driven false alarms: check the energy ratio between the main gate and adjacent gates; a rising sidelobe ratio predicts gate-to-gate false triggers.
Practical selection table (implementation-oriented, not marketing):
| Waveform | R / V | Best-fit use case | Dominant false-alarm source | Compute / ADC cost | Proof to collect |
|---|---|---|---|---|---|
| CW | R ❌ / V ✅ | Clean geometry zones; motion/approach presence; lowest power | Multi-path + moving clutter; narrow interference lines | Low (single FFT path) | target_energy, peak_bin, noise_floor_db |
| FMCW | R ✅ / V ✅ | Need distance gating; “near/mid/far” zoning; static reflector masking | Sidelobes; calibration drift; interference raising all gates | High (range+Doppler FFT) | range_gate_energy[k], gate ratio, false_alarm_count |
| Pulse-Doppler | R ✅* / V ✅* | Duty-cycled operation; time scheduling to avoid mutual interference | Windowing artifacts; peak power compressing Rx | Medium (windowed processing) | Window hit-rate, adc_clip_count, timing logs |
| FSK / hop | R ✅* / V ✅* | Interference-rich deployments; frequency scheduling and signatures | Hop collisions; spur confusion if LO is noisy | Medium | Interference counter, spectrum snapshots |
*R/V availability depends on exact implementation windows and baseband pipeline (kept at principle level here).
H2-4. RF Tx Subsystem (PLL/VCO, PA, Leakage & Phase Noise)
A stable transmitter is defined by spectral cleanliness (phase noise/spurs), power integrity, and isolation. Many “mystery” false alarms originate from Tx energy coupling into the Rx front end, lifting the noise floor or creating DC offsets/spurs.
1) PLL/VCO: why phase noise becomes false alarms
- Mechanism: strong static reflectors + higher phase noise → thicker baseband “skirt” →
noise_floor_dbrises → thresholds drift upward/downward. - What to measure: noise floor near DC in I/Q or Doppler spectrum; track
noise_floor_dbvs temperature and supply. - Evidence signature: broad noise rise (not a single line) when phase noise dominates.
2) PA: output power vs linearity and spurious risk
- Mechanism: higher Pout may improve coverage but increases harmonics/spurs and can desense the receiver through leakage paths.
- What to measure: correlation between power mode and
false_alarm_count; checkadc_clip_countfor compression episodes. - Evidence signature: narrow spectral lines (spurs) or periodic artifacts that persist without real motion.
3) Tx→Rx leakage: the three dominant coupling paths
- Over-the-air coupling: insufficient antenna isolation (Tx antenna energy directly enters Rx antenna).
- Board-level coupling: PA routing / ground return / supply ripple injects energy into LNA or mixer nodes.
- Enclosure reflection loop: metal housing and mounts form a reflective path that reinjects Tx energy into the Rx front end.
Tx-rooted evidence points (fast to confirm before re-tuning detection):
- Near-zone noise floor: baseline
noise_floor_dbwhen “no motion” should remain stable across hours. - LO spurs: fixed-frequency lines that remain when the scene is static; track a
spur_detectcounter or snapshot. - Rx DC offset: I/Q mean shift consistent with leakage (monitor
iq_dc_offsetor equivalent).
H2-5. RF Rx Subsystem (LNA, Mixer, IF, Dynamic Range & AGC)
In the field, false alarms and missed detections often trace back to receiver dynamic range and AGC behavior, not “algorithm quality.” The hard case is when strong static reflectors, a weak target, and external interference are present at the same time.
adc_clip_count
AGC: agc_state / gain_idx
IF spectrum: flatten / skirts
Compression: weak peak disappears
1) The “three-signal” field model
- Strong clutter: wall/ground/metal returns set the high end of the input envelope.
- Weak target: real intruder energy is often close to the noise floor at coverage edges.
- Interferer: nearby radars or RF sources create narrow lines or broadband floor lift.
The receiver fails when the chain allocates too much headroom to clutter/interference and not enough to the weak target, or when AGC transitions destabilize the noise model used by detection.
2) LNA: noise figure vs linearity (P1dB / IIP3)
- NF sets sensitivity: a better NF improves weak-target margin when the scene is quiet.
- Linearity sets survivability: under strong clutter/interference, low P1dB/IIP3 leads to compression and intermodulation, burying weak targets.
- Field signature: IF/Doppler peaks stop scaling with scene changes (flattening), while the baseline floor shifts.
3) Mixer + image / IF filtering: why “ghost peaks” appear
- Image/spur confusion: fixed-frequency lines that persist in a static scene are more consistent with spurs/images than motion.
- IF bandwidth mismatch: too wide → more noise and false alarms; too narrow → real target energy is clipped (missed detection).
- Evidence to collect: a static-scene IF snapshot + a motion-scene snapshot, compared against
noise_floor_dband peak stability.
4) ADC sampling rate vs IF bandwidth (hard constraints)
- Anti-aliasing is not optional: insufficient sampling/BW planning can fold energy into the baseband and corrupt gating decisions.
- Clip is a symptom, not the only one: ADC can be “fine” while earlier stages compress; always pair clip counters with AGC logs and spectrum shape.
5) AGC behavior: when gain control becomes the problem
- AGC too fast: reacts to clutter, drops gain, weak target vanishes → missed detections.
- AGC too slow: short compression windows trigger transient false alarms.
- AGC pumping: gain toggles near thresholds → unstable
noise_floor_db→ “bursty” alarm storms.
Minimum field loop (before re-tuning detection):
(1) capture static-scene IF/Doppler snapshots,
(2) check agc_state/gain_idx stability,
(3) verify adc_clip_count and peak histogram,
(4) do a quick A/B change (遮挡/转角/距离门) to see whether peaks migrate (multipath) or remain fixed (spur/interference).
H2-6. Antenna & Coverage Engineering (Beam, Polarization, Multipath)
Coverage is not just “range.” Beam shape, polarization, and mounting angle decide where false alarms concentrate. This chapter focuses on coverage geometry and multipath-driven ghost zones, without expanding into full perimeter system engineering.
1) Beamwidth trade-offs: coverage size vs false-alarm risk
- Wider beams: cover more area but collect more ground/wall reflections, increasing ghost-zone probability.
- Narrower beams: reduce multipath pickup but become more sensitive to installation error (tilt/azimuth mispoint).
- Evidence: compare Doppler/range-gate energy for the same target at multiple positions; side-lobe positions often show unstable peaks.
2) Polarization and mounting angle: two common field failure modes
- Polarization mismatch / variation: return energy becomes inconsistent across positions → thresholds become unstable.
- Incorrect tilt/height: ground reflection strengthens and can form a persistent ghost band near the main lobe.
- Evidence: a small tilt change should move ghost hotspots; fixed hotspots that ignore tilt are more consistent with spur/interference.
3) Multipath: ground bounce and wall bounce create ghost zones
- Mechanism: direct path + reflected path add constructively in certain areas, producing “target-like” energy.
- Why it looks like intrusion: environmental changes (wind/rain/people moving nearby) modulate the reflection coefficient and trigger thresholds.
- Evidence: build a
reflector_list(static peaks by gate/sector) and ahotspot_map(frequent false-alarm gates).
4) Multi-antenna (T/R split or simple multi-sector) — only for intrusion decision support
- Isolation: better T/R separation reduces Tx→Rx leakage risk (without re-entering Tx details).
- Sector consistency: “which sector fired” can reject multipath if the event appears inconsistent across sectors.
- Goal: coarse decision robustness, not high-resolution angle imaging.
Minimum coverage tuning loop:
(1) draw the intended sector and mark forbidden zones,
(2) log a baseline reflector_list in a static scene,
(3) build a hotspot_map for frequent false alarms,
(4) adjust tilt/height/polarization and verify hotspots move or shrink (evidence-based acceptance).
H2-7. Baseband & MCU/DSP Pipeline (From I/Q to Alarm)
A reliable alarm is produced by a deterministic processing pipeline, not a single “magic” detector. This chapter breaks the baseband flow into implementable modules, each with a clear input/output data shape, measurable evidence, and failure signatures that map back to field logs.
iq_dc_i/iq_dc_q
Floor: noise_floor_db
Thresh: threshold_db
Hits: hit_rate / hit_map
State: state_log
1) Data framing: define the “data contract” first
- Goal: make every downstream module consume frames with consistent length, timebase, and metadata.
- Input: ADC/IF samples or downconverted complex samples.
- Output: fixed-length frames (N samples) + metadata (
timestamp,agc_state, temperature, mode). - Evidence:
frame_drop_count,timestamp_gap, per-frame metadata coherence.
Many “random false alarms” are actually frame boundary issues (gaps/overlaps) that distort FFT statistics.
2) I/Q generation & DC offset correction
- Goal: remove leakage/DC bias that creates artificial energy near the zero-Doppler region.
- Input shape: complex I/Q vectors (int16 or float).
- Output shape: DC-corrected I/Q with near-zero mean per frame or per gate.
- Minimum implementation: running mean subtraction on I and Q; optional slow time constant to avoid wiping true slow motion.
- Evidence:
iq_dc_i/iq_dc_q, DC-bin energy, static-scene “peak near DC” disappearance.
Failure signature: a static scene produces persistent low-frequency peaks that drift with temperature or Tx power.
3) Static clutter removal (clutter suppression)
- Goal: suppress strong static reflectors (walls/ground) so thresholds track real motion, not fixed returns.
- Minimum strategies:
- Slow background subtraction (moving-average clutter estimate).
- Frame-to-frame differencing (fast and cheap, but can miss very slow approaches).
- For FMCW: per-range-gate baseline (a “clutter map” that updates slowly).
- Evidence:
noise_floor_dbstability in a static scene; reduction in idle false alarms without losing slow targets.
Failure signature: “slow intruder” is subtracted as clutter → missed detection at low Doppler. A discriminator is whether energy migrates over time (real) or stays locked (clutter/spur).
4) FFT: Doppler spectrum (and range FFT for FMCW)
- Goal: convert time-domain I/Q into frequency-domain evidence used by thresholding and tracking.
- CW path: window → FFT → power spectrum → peak/energy features.
- FMCW path: range FFT → (per range bin) Doppler FFT → range–Doppler map.
- Evidence:
peak_bin,peak_snr_db, peak-bin jitter, side-lobe ratio indicators.
Failure signature: side-lobes lift neighboring bins/gates and look like “extra targets,” especially near strong reflectors.
5) Noise-floor estimation and simplified CFAR / thresholding
- Goal: maintain a stable false-alarm rate under changing conditions (rain, interference, multipath).
- Minimum implementations:
- Fixed threshold (only valid in controlled, stable environments).
- Tracked noise floor + margin:
threshold_db = noise_floor_db + k. - Simplified CFAR (CA/GO principles): estimate local background excluding guard cells, then scale by a factor.
- Evidence:
noise_floor_db,threshold_db, andhit_ratevs time (and vs weather/interference flags).
Failure signature: noise floor steps up but threshold lags → alarm storms; threshold tracks too aggressively → weak targets vanish.
6) Minimal tracking & decision logic (alarm state machine)
- Goal: convert sparse hits into robust events while rejecting transient glitches.
- Minimum tracking: cluster adjacent bins (energy blobs), require persistence across M frames, apply hysteresis for enter/exit.
- Output: event state + summary fields (sector, speed class, optional range gate).
- Evidence:
state_log(ARMED → PREALARM → ALARM),persistence_count, hit continuity around transitions.
7) micro-Doppler features (non-AI) for common false sources
- Goal: suppress repeatable non-intrusion sources (fans, wipers, swinging signs, dense rain) without identity recognition.
- Minimal feature set:
- Spectral spread: rotating machinery tends to show stable narrow lines; human motion tends to be broader and time-varying.
- Periodicity: periodic peaks suggest mechanical motion; irregular micro-modulation suggests walking/gesture motion.
- Energy distribution: entropy/skew across bins can flag “texture-like” motion vs single-line spurs.
- Evidence: spread/period counters, false-alarm reduction without reducing true-event persistence.
Minimum acceptance loop: log iq_dc_i/iq_dc_q, noise_floor_db, threshold_db, hit_rate, and state_log.
Then verify: (1) static scene → low hit rate and stable floor, (2) real motion → persistent peaks and stable state transitions, (3) interference/weather → flagged events instead of uncontrolled alarm storms.
H2-8. Interference Rejection & Coexistence (Neighbor Radar, External RF, Environment)
Interference must be detected and handled as a mode. If a detector blindly tracks noise-floor changes, alarms can spike when a neighbor radar is installed or when external RF/environmental motion shifts the spectrum statistics. The goal here is minimum implementable coexistence, validated by logs and reproducible snapshots.
interference_event_count
Floor step: noise_floor_step
Lines: line_persistence
Duty: duty_anomaly
1) Classify the disturbance before tuning thresholds
- Same-band radar-to-radar interference: another unit overlaps in time/frequency/pattern and injects structured energy.
- External RF: narrow spurs (fixed lines) or wideband floor lift.
- Environmental motion: rain, swinging vegetation, moving metal doors; not RF, but creates time-varying clutter signatures.
Classification matters because mitigation differs: a fixed spur is not solved the same way as neighbor FMCW overlap.
2) Minimum interference detectors (loggable and cheap)
- Noise-floor step detection: trigger when
noise_floor_dbjumps beyond a configured delta →noise_floor_step. - Spectral line anomaly: detect persistent narrow peaks across frames →
line_persistence/spur_line_count. - Duty/pattern anomaly: unexpected burst occupancy (pulse/PRF-like behavior) →
duty_anomaly.
These detectors provide a clean switch: normal mode vs interference mode (avoid blindly inflating thresholds until detection becomes meaningless).
3) Same-band coexistence: minimum implementable strategies
- TDM (time-division): randomized backoff + scheduled transmit windows. Works even without network sync if windows are sparse and randomized.
- FDM (frequency-division): a small channel set with auto-hop on conflict (move away from the conflict line/region).
- Pattern separation: different chirp slopes/PRF/hop patterns to reduce correlation, improving rejection by pattern checks.
Practical rule: implement detection → mitigation → verification.
After enabling TDM/FDM/pattern separation, verify that interference_event_count drops and that floor/line anomalies become rare in static scenes.
4) External RF and environment: contain false alarms without identity recognition
- External RF spurs: prefer a “do-not-trust bins” mask (ignore known persistent lines) and validate using static-scene snapshots.
- Wideband floor lift: switch to conservative persistence/hysteresis (alarm requires continuity) rather than raising thresholds aggressively.
- Environment motion: use micro-Doppler texture (spread/periodicity) and spatial/sector consistency to reject repeating patterns (e.g., swinging doors).
5) Evidence package for field reproducibility
- Counts:
interference_event_countper hour/day (before/after mitigation). - Time series:
noise_floor_dbwith step markers (noise_floor_step). - Snapshots: two saved spectra or RD maps: (A) quiet static scene, (B) interference present, with anomaly lines highlighted.
H2-9. Temperature Drift, Calibration & NVM
Temperature drift is not a single effect. It shifts frequency, gain/noise, and threshold statistics. The implementation goal is a closed loop: temperature → observable metrics → compensation → versioned storage.
temp_c
Floor: noise_floor_db
SNR: peak_snr_db
Cal: cal_version
CRC: crc_fail_count
1) Drift sources and their field signatures
- PLL/VCO / LO drift: peak-bin location shifts with temperature; DC/near-zero artifacts can grow if leakage changes.
Evidence: peak-bin drift, spur position shift, optional
lo_offset_ppm. - PA gain drift: transmitted level changes; near-range clutter energy changes; detection margin becomes temperature-dependent.
Evidence:
noise_floor_dbandpeak_snr_dbvstemp_c. - LNA NF / linearity drift: sensitivity changes; weak targets disappear earlier at temperature extremes. Evidence: SNR drop at constant scene, AGC distribution shift.
- ADC reference drift: effective full-scale changes; clipping or quantization noise shifts.
Evidence:
adc_clip_count, floor change correlated to rail/temperature. - Antenna/match drift: coupling and coverage “shape” changes; static reflector list can reorder. Evidence: static-scene reflector energy table / sector imbalance trend.
2) Minimum logging: make drift observable
- Always log:
temp_c,noise_floor_db,cal_version,crc_fail_count. - Also recommended:
peak_snr_db, peak-bin index (Doppler or RD),agc_state,adc_clip_count.
The acceptance check is simple: in a controlled static scene, the floor and peak metrics should vary smoothly with temperature, not jump randomly.
3) Compensation A: temperature-segment LUT (most implementable)
- LUT input: temperature segments (e.g., every 5–10°C).
- LUT output (keep scope tight):
- frequency correction hint (LO/chirp slope offset, principle-level),
- threshold margin vs temperature:
threshold_db = noise_floor_db + k(temp), - gain target bias (AGC target shift, principle-level).
- Evidence: reduced false alarms across temperature sweep; more stable
hit_rateat constant scene.
4) Compensation B: online self-cal (reference reflector / background modeling)
- Reference reflector method: use a known stable return (installation baseline) to track gain/offset drift without human targets.
- Background modeling: update a slow clutter map only during confirmed “no-intrusion” windows.
- Guardrails: slow update constants; prevent absorbing slow approaches as “background”.
- Evidence: background update counters + stable floor; lower idle alarm rate without reducing persistence-based detections.
5) Calibration storage in NVM: version, CRC, rollback (no platform signing here)
- Record structure (minimum): header (
magic,schema_ver), payload (LUT entries), meta (cal_version), integrity (crc32). - A/B slots: write new record to inactive slot → verify CRC → commit flag → swap active slot.
- Rollback policy: on CRC failure, fall back to last known-good slot; increment
rollback_count.
6) Failure patterns that directly explain false/missed alarms
- False-alarm storm on warm-up:
noise_floor_dbrises but margin does not →hit_ratespikes without stable migrating peaks. - Missed weak targets in cold: gain/NF degrade →
peak_snr_dbdrops below threshold consistently. - “Sudden new spur” at a temperature corner: LO operating point shifts →
line_persistencerises; require interference mode and LUT tuning.
Minimum acceptance loop: sweep temperature and record temp_c vs noise_floor_db and peak_snr_db.
Update LUT → verify reduced variance. Then validate NVM safety: cal_version increments, CRC passes, and rollback only occurs on injected corruption.
H2-10. Power Integrity & EMC Constraints (Radar Impact Only)
Power noise is not “just power.” In radar intrusion detection, it converts directly into phase noise, DC/low-frequency artifacts, and pipeline instability—all of which change noise floor, thresholds, and alarm behavior. This chapter focuses on coupling paths and where to measure, without overlapping surge/ESD component selection pages.
rail_ripple_mv
Floor: noise_floor_db
DC: iq_dc_i/iq_dc_q
Resets: reset_count / brownout_count
Frames: frame_drop_count
1) Three coupling chains that explain false/missed alarms
- Rail ripple → PLL/VCO modulation → phase noise ↑ → noise floor ↑ → false alarms ↑
- PA pulsed current → ground bounce → ADC reference/bias shift → DC artifacts ↑ → threshold drift
- Supply droop/UVLO → resets/frame gaps → FFT/CFAR statistics break → hit_rate anomalies
2) PLL/VCO sensitivity: phase noise is “the noise floor”
- Measure points: PLL/VCO rail near the device; reference clock rail if present; compare ripple spectrum with alarm statistics.
- Evidence: static-scene
noise_floor_dbrises with rail ripple; floor shows periodic components aligned with ripple frequency. - Field signature: idle false alarms increase during power-load changes even without any motion targets.
3) PA pulsed current: ground bounce and reference pollution
- Measure points: PA rail droop during modulation; ground reference difference (near PA vs ADC/SoC region); ADC reference if accessible.
- Evidence: increased
iq_dc_*or low-frequency artifacts;adc_clip_countincreases when PA bursts occur. - Field signature: low-frequency peaks appear “in sync” with transmit patterns, confusing clutter removal and thresholding.
4) Reset / brownout: pipeline instability masquerades as RF faults
- Measure points: SoC/MCU core rail; reset pin/flag; UVLO/brownout status flags.
- Evidence:
reset_count/brownout_counttime-align withframe_drop_countand alarm storms. - Field signature: sporadic missed detections or bursts of false alarms that correlate with supply dips, not with spectrum peaks.
5) After ESD/surge events: what to check first (no component selection here)
- Priority check: compare static-scene
noise_floor_dbbefore/after the event. - Secondary checks: AGC distribution shift (
agc_statehistogram) andadc_clip_countchanges. - Interpretation: a permanently higher floor often indicates front-end sensitivity loss or new leakage/coupling paths.
Minimum measurement trio: TP_PLL (PLL/VCO rail ripple), TP_PA (PA rail droop + burst current), TP_SOC (MCU/SoC rail + reset flags).
Verify by aligning rail captures with noise_floor_db, iq_dc_*, and reset/frame counters.
H2-11. Validation & Field Debug Playbook (SOP)
What this chapter delivers (auditable + fixable)
Deliverable A: an acceptance plan that turns Pd/FAR/coverage/temp-drift/interference into measurable KPIs with explicit evidence fields (logs + waveforms). Deliverable B: a field decision tree that uses only two measurements per symptom to isolate root cause and apply the first fix—without scope creep into non-radar sensing, certification, or surge/ESD part selection.
- Evidence-first Every pass/fail item maps to specific counters or spectra (e.g.,
noise_floor_db,adc_clip_count,interference_event_count). - Reproducible Test matrix uses a small set of standard scenarios so results are comparable across sites.
- Minimal tools Laptop log capture + 3 test points + one controlled walk-through path.
Representative BOM references (example MPNs to anchor verification)
Use these as concrete anchors for validation hooks (diagnostics, SPI registers, self-test modes). Replace with your actual BOM as needed.
- Radar front-end (integrated examples):
- Infineon BGT24MTR11 (24 GHz transceiver MMIC; SPI control; on-chip monitors)
- Infineon BGT60TR13C (60 GHz radar sensor with Antenna-in-Package; FMCW sweeps + FIFO)
- TI IWR6843 (60–64 GHz single-chip mmWave FMCW sensor with built-in calibration/self-test)
- Frequency synthesis / chirp engine (discrete designs): Analog Devices ADF4159 (fractional-N PLL with modulation support).
- NVM for calibration/versioning (QSPI flash examples): Winbond W25Q64JV, Macronix MX25L64 (store calibration slots + CRC + monotonic version).
- Temperature sensing (board-level): TI TMP117 / Analog Devices ADT7420 (used for LUT indexing & drift correlation).
Note: selecting band (10.525 GHz / 24 GHz / 60 GHz) is region + regulation dependent; this chapter focuses on measurement evidence, not certification.
A. Acceptance KPIs (define → measure → log → pass/fail)
KPIs must be defined with an explicit test condition and evidence fields. Avoid “works well” statements—every KPI below has what to measure and what to log so a third party can reproduce results.
| KPI | How to test (minimal, repeatable) | Pass/Fail target (example) | Evidence to log (must-have fields) |
|---|---|---|---|
| Pd (Detection Probability) | N controlled intrusions per lane: same path, speed, distance/angle. Compute detection ratio and track persistence (avoid 1-frame spikes). |
Pd ≥ 0.95 (standard lane) Pd ≥ 0.90 (edge lane) |
event_count, hit_rate, track_frames, peak_snr_db, threshold_db
|
| FAR (False Alarm Rate) | No-intrusion soak: day/night segments (e.g., 12h+12h). Count alarms per time. Include “wind/vegetation” and “static” modes if supported. |
FAR ≤ 1/day (strict) FAR ≤ 1/hour (cost-optimized) |
false_event_count, noise_floor_db, agc_state, adc_clip_count,
interference_event_count
|
| Minimum detectable speed | Sweep speed (e.g., 0.1→1.5 m/s) with fixed path. Plot Pd vs speed. | Pd ≥ 0.90 @ 0.2 m/s (example) |
Doppler peak bin, peak_snr_db, hit_rate, noise_floor_db
|
| Coverage boundary | Angle×range grid points; per point: K walk-throughs. Produce a boundary map where Pd and FAR both meet targets. | Boundary defined at Pd≥target & FAR≤target |
sector ID, (if FMCW) range gate energy, peak_snr_db, event_count
|
| Temperature stability | Temperature sweep (cold/room/hot) with: (1) static soak for FAR, (2) fixed walk-through for Pd. |
FAR ≤ 2× baseline Pd drop ≤ 0.05 (example) |
temp_c, noise_floor_db, cal_version, crc_fail_count, threshold_db
|
| Interference robustness | Neighbor radar on/off; RF interferer on/off; validate TDM/FDM/seed strategies if available. |
Pd drop ≤ 0.05 FAR ≤ 2× |
interference_event_count, abnormal_lines_count, noise_floor_db, hit_rate
|
| Power sensitivity (radar impact) | Inject ripple / load steps within allowed limits and verify noise floor + detection stability (no part-selection discussion). | No resets; FAR within target; Pd within target |
reset_count, brownout_count, noise_floor_db, peak_snr_db
|
Targets above are illustrative. Replace values to match threat model, coverage geometry, and deployment policy.
B. Test matrix (small set of scenarios that still covers reality)
To avoid “test explosion”, use two layers: 6 mandatory scenario families and 3 standard cases per family. This keeps the plan finishable while still catching the real failure modes that cause false alarms and missed detections.
- Temperature: cold / room / hot
- Weather / visibility impact: dry / light rain-fog (observe spectrum + FAR changes)
- Strong reflectors: metal door / corner reflector / wall angle
- Multi-target: two intruders crossing / one fast + one slow
- Interference: neighbor same model on/off; time/frequency strategy on/off
- Power disturbance (radar impact only): ripple increased / transient sag (within system limits)
Recommended “per-run” log bundle (export as CSV per test case): timestamp_ms, temp_c, event_count, false_event_count, noise_floor_db, threshold_db, peak_snr_db, hit_rate, agc_state, adc_clip_count, interference_event_count, abnormal_lines_count, cal_version, crc_fail_count, reset_count, brownout_count
C. Field debug SOP (Symptom → Evidence → Isolate → First fix)
The field SOP is intentionally constrained: two measurements first, then branch. This prevents “random tweaking” and forces quick convergence to a measurable discriminator.
TP_PLL, TP_PA, TP_SOC),
(3) one controlled walk-through lane, (4) optional metal plate/corner reflector for strong-reflection reproduction.
If using an integrated radar IC (e.g., BGT24MTR11 / BGT60TR13C / IWR6843), include its built-in diagnostics/self-test flags in the log bundle.
- High false alarms (FAR high) → first check
noise_floor_dbtrend, thenagc_state/adc_clip_countto identify overload vs spur vs interference. - Missed detections (Pd low) → first check
peak_snr_db/hit_rate, thenthreshold_db/adc_clip_countto separate “threshold too high” vs “front-end compression”. - Only hot/cold failures → first check
temp_cvsnoise_floor_db, thencal_version/crc_fail_countto separate drift vs corrupted calibration slot. - Only fails with neighbor radar → first check
interference_event_count, thenabnormal_lines_countto confirm mutual interference and enable the minimal coexistence strategy.
Figure F11 — Field decision tree (two measurements per symptom)
H2-12. FAQs (Active Radar/Microwave Intrusion)
Each FAQ stays within this page’s evidence chain (noise floor / AGC / clip / Doppler spectrum / interference counters / temp drift / calibration versioning). Answers follow: Short answer (1 sentence) + What to measure (2 points) + First fix (1 point).
›Two radars mounted close start cross-triggering. Frequency-division or time-division first?
interference_event_count + abnormal_lines_count while toggling the neighbor radar. (2) noise_floor_db + hit_rate on a fixed walk-through lane.›False alarms spike on rainy days. Multipath or threshold strategy?
noise_floor_db trend vs time and weather state. (2) Doppler spectrum shape: widened low-speed energy and “micro-motion” persistence vs a clean baseline.›Detection range shrinks when temperature rises. Suspect PA or LNA first?
temp_c vs noise_floor_db (receiver sensitivity drift). (2) temp_c vs peak_snr_db on a fixed reflector or controlled walk-through.cal_version, CRC in W25Q64JV-class flash; temp from TMP117/ADT7420), then re-run the range boundary test.›ADC is not clipping, but detections are still missed. CFAR or clutter removal?
threshold_db and hit_rate vs noise_floor_db to see if the threshold tracks correctly.›A fixed spur line appears in the spectrum. Check PLL first or power coupling?
noise_floor_db and scope at TP_PLL/TP_SOC during PA activity.›Changing installation angle increases false alarms. How to prove ground reflection via spectrum?
noise_floor_db at the same time-of-day to exclude interference as the primary cause.›Near a metal door/fence, alarms become unstable. Antenna problem or Rx dynamic range?
agc_state and adc_clip_count during door/fence movement (compression signature). (2) Doppler floor “flattening” and reduced peak_snr_db on a standard walk-through.›Strong Wi-Fi/intercom radios nearby increase false alarms. Out-of-band interference or radar-to-radar?
noise_floor_db, agc_state, and any compression indicators. (2) Structure behavior: interference_event_count and abnormal_lines_count aligned to the neighbor’s activity.›LO leakage raises near-range noise floor. Which isolation path to change first?
noise_floor_db while toggling Tx power/state (leakage correlation). (2) IF/IQ baseline or DC-offset drift when Tx is on vs off (leakage into Rx chain).›Only one production batch misses detections in cold weather. Temp LUT issue or component drift?
cal_version and crc_fail_count (W25Q64JV-class storage). (2) temp_c vs noise_floor_db/peak_snr_db curves across units at the same test setup.›After a reboot, false alarms are high for a short time. Background model not converged or threshold init?
reset_count-aligned convergence of noise_floor_db and threshold_db (time-to-stability). (2) false_event_count and hit_rate during the first minutes after boot.›Power must be reduced without increasing missed detections. Change waveform first or processing window?
event_count and false_event_count across settings. (2) Signal margin: peak_snr_db and hit_rate at the edge lane when reducing window length.