Skip to content

D1000 Auto-Relock Feature

The Auto-Relock feature configures the D1000 Deadbolt to automatically relock after an unlock operation. Minimum firmware version: 1772468928. This feature operates in conjunction with the door position sensor to determine relock timing.

Methods

enableAutoRelock

void enableAutoRelock(int seconds, MLCommandCallback<String> callback)
Enables auto-relock with a timeout value between 4-255 seconds.

disableAutoRelock

void disableAutoRelock(MLCommandCallback<String> callback)
Disables auto-relock functionality.

readIsAutoRelockEnabled

void readIsAutoRelockEnabled(MLCommandCallback<Boolean> callback)
Returns the current auto-relock state (true if enabled, false if disabled).

Behavior

Auto-relock timing is determined by the door position sensor state:

  • Door sensor enabled, door closed on unlock: The timeout begins immediately. The lock relocks when the timeout expires.
  • Door sensor enabled, door opened after unlock: The timeout is suspended while the door is open. When the door is closed, the timeout restarts from the beginning and the lock relocks once it expires. If the door is opened and closed multiple times, the timeout restarts each time the door closes.
  • Door sensor disabled: The timeout begins immediately on unlock and the lock relocks when it expires, regardless of door position.
  • Auto-relock disabled: No automatic relock occurs regardless of sensor state.

Query sensor state with readIsDoorPositionSensorEnabled() or configure it with setIsDoorPositionSensorEnabled().

LockState Delegate and Relock Countdown

The relock countdown provided in LockState is not broadcast by the lock over BLE. It is inferred by the SDK based on the configured unlock timeout and the time at which the unlock command was executed.

As a result, the countdown will not remain accurate in situations where the door sensor is enabled and the door has been opened and re-closed after an unlock. In these cases, the lock has internally restarted its relock timer on door-close, but the SDK has no visibility into that event. The delegate will emit a MechanismState.Unlocked with a countdown value of 0 rather than an accurate remaining time.