LD2402 observation: "Moving" reported despite motion energy never approaching threshold

Viewed 37

Additional observation: "Moving" reported despite motion energy never approaching threshold

While testing gate thresholds, observed the sensor consistently reporting result=1 (moving)
even when motion energy stayed well below its threshold on every gate throughout, and only
micro/static energy came close to (and briefly touched) its own threshold.

Example (single frame, gate index : motion energy dB / motion threshold dB, micro energy dB / micro threshold dB):
Gate 5: motion 30.29 / 37.99 (7.7 dB below) -- micro 34.99 / 34.99 (at threshold)
Gate 6: motion 30.44 / 37.99 (7.5 dB below) -- micro 34.51 / 34.99 (0.5 dB below)

Sampled 12 consecutive frames (~300ms apart) during a seated, mostly-still period:

  • Motion energy never crossed its threshold on any gate, in any frame (consistently 3-9 dB below).
  • Micro energy on gates 5-6 repeatedly sat within ~0.5 dB of its threshold, touching it exactly in one frame.
  • Result byte was 1 (moving) in every frame where a target was present -- never 2 (still) -- despite
    motion never being the thing near its threshold.

Per the datasheet's documented decision logic (any gate's moving energy over its threshold -> moving,
else any gate's static energy over its threshold -> still, else none), this case should have reported
"still," not "moving."

Question: is there additional undocumented logic governing the moving/still classification -- e.g. new
detections defaulting to "moving" for an initial period regardless of which threshold triggered them,
or a different evaluation window than a single frame? Documentation of the actual decision logic beyond
the simple per-frame threshold comparison in Table 5-7 would help us tune thresholds correctly.

2 Answers

Hello, pls kindly check following reply:
As long as the energy of the radar at any distance exceeds the triggering/micro motion threshold, the module will output that someone is present; Even if a person briefly leaves and the radar instantly drops below the threshold, no one will be immediately cut off. It is necessary to continuously pass the set disappearance delay time without any human signals exceeding the threshold throughout the entire process before reporting no one.
Wish this reply can help you.

Subject: Re: Moving/still classification — your reply addresses a different mechanism

Thank you for the reply, but I want to clarify — that explains presence disappearance hysteresis (why detection doesn't instantly clear when someone leaves), which is a different mechanism from the question asked, which was about moving vs. still classification while a target is continuously present, based on which threshold (motion vs. micro) each gate's energy actually crossed.

To restate precisely: across 12 consecutive frames (~300ms apart), with a target continuously present and seated/mostly-still, motion energy never crossed its threshold on any gate (consistently 3–9 dB below), while micro energy on gates 5–6 repeatedly sat within ~0.5 dB of its threshold, touching it exactly once. Per the documented decision logic in Table 5-7, this should classify as "still" — but result was 1 (moving) in every frame.

One thing I want to rule out myself: is the moving/still classification subject to the same kind of hold/latch behavior your last reply described for presence itself — i.e. if motion crossed its threshold once, earlier, before this sample window began, does the module continue reporting "moving" for some hold period even after motion drops back below threshold and only micro stays elevated? If so, what governs that hold duration for the classification specifically (is it the same "disappearance delay" setting, or separate)?

If that's not the mechanism, then the discrepancy stands as described above, and I'd appreciate clarification on what actually drives the moving/still decision beyond the single-frame threshold comparison in Table 5-7.

If the energy value does not exceed the triggering threshold and exceeds the micro motion threshold and remains stationary for a period of time, it will be displayed as stationary. If this period of time exceeds the triggering threshold, the timer will restart.