Skip to content
This repository has been archived by the owner on Oct 27, 2022. It is now read-only.

Multiple Improvements and Support for WDM Subscription to Device #35

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

suryanshup
Copy link
Contributor

No description provided.

-- Add AppEventDispatcher class which implements logic to add and remove
   event handlers and dispatch app events. It is meant to be inherited by
   other classes that require notifying interested parties of app events
   related to that class.
-- Add ButtonManager which implements logic to detect long press,
   release from long press along with regular press/release and sends
   an app event to registered handlers containing information on the
   button press.
-- Re-work the button handlers implemented in AppTask to now use the new
   ButtonManager events for long press detection. All old logic to
   detect long press for the function button was removed from AppTask.
-- In Bolt Lock Manager, use two app timers for instead of one for
   auto relock timer and actuator movement timer since the
   nordic app timer APIs (which internally use FreeRTOS Timers) only
   post to the timer queue when the timer start and stop APIs are
   called. This is because a timer that is re-started right after being
   cancelled/stopped get's ignored since the event in the timer queue is
   not processed quickly enough.
-- BoltLockManager now inherits AppEventDispatcher class. Interested
   parties can register handlers to receive BoltLock Change events such
   as kEventType_LockAction_Initiated, kEventType_LockAction_Completed.
-- AppTask now registers a handler to receive lock events and drives the
   Lock LED based of the state in the receiveing events.
-- Add ability to enable user selected mode when BUTTON3 is pressed
   briefly. This feature can be enabled by enabling
   SERVICELESS_DEVICE_DISCOVERY
-- Add ability to send a multicast Device Identify Request over link
   local to devices in the fabric. The Device Identify Request is
   targeted to devices that are of the type vendor Id Google and product
   type OpenWeave SDK Open Close Resource with UserSelectedMode enabled.
-- Added logic to make a 1 way subscription request to a discovered device for
   the SecurityOpenCloseTrait and display the subscription status on
   LED3. If SERVICELESS_DEVICE_DISCOVERY is enabled, the subscription is
   attempted right after the local device is discovered. Since the node
   id of the discovered device is not stored in persistent storage, the
   device will have to be rediscovered after a reboot for the
   subscription attempt to be made.
-- Rework auto relock logic to incorporate lock when closed feature. If
   SERVICELESS_DEVICE_DISCOVERY is enabled, defaults are provided in
   app_config.h for door check enable, auto relock duration and auto
   relock enable.
-- When SERVICELESS_DEVICE_DISCOVERY is enabled, the lock example will
   be configured as a Thread Router type instead of  a sleepy end node.
-- Other minor code improvements and refactor
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant