Current Behavior:
The system currently uses a fixed debounce timer (e.g., 250ms) to prevent double-triggering. However, if a subject moves slowly or stands in the beam path ("lingers") for longer than the debounce window, the system re-arms and fires a second trigger event while the subject is still exiting.
Expected Behavior:
The system should utilize a "Latch/Hold" state. It should not re-arm the trigger logic until the beam has been continuously restored (HIGH) for a safe threshold (e.g., >1000ms), ensuring the doorway is fully cleared before accepting a new event.
Current Behavior:
The system currently uses a fixed debounce timer (e.g., 250ms) to prevent double-triggering. However, if a subject moves slowly or stands in the beam path ("lingers") for longer than the debounce window, the system re-arms and fires a second trigger event while the subject is still exiting.
Expected Behavior:
The system should utilize a "Latch/Hold" state. It should not re-arm the trigger logic until the beam has been continuously restored (HIGH) for a safe threshold (e.g., >1000ms), ensuring the doorway is fully cleared before accepting a new event.