ZAF Interface#

Enumerations#

enum
EINCLUSIONMODE_NOT_SET = 0
EINCLUSIONMODE_ZWAVE_CLS
EINCLUSIONMODE_ZWAVE_LR
}

Used to indicate node inclusion type that related to it working over Long Range or Z-Wave mode.

Typedefs#

typedef void(*

Functions#

void
ZAF_Init(TaskHandle_t AppTaskHandle, SApplicationHandles *pAppHandles)

Initializes the Z-Wave Application Framework.

void
ZAF_Reset(void)

Reset ZAF and command classes that have registered a reset function with a REGISTER_CC macro.

TaskHandle_t

Returns the task handle set by ZAF_Init().

void

Makes the node stay awake for either 2 or 10 seconds.

void

Function called when the EVENT_SYSTEM_LEARNMODE_FINISHED is received.

void
ZAF_setAppHandle(SApplicationHandles *pAppHandle)

Pass an application handle to the ZAF framework with pointers to application resources.

void
ZAF_setPowerLock(zpal_pm_handle_t powerLock)

Pass an application power lock handle to the ZAF framework.

void
ZAF_SetCPHandle(CP_Handle_t handle)

Set the CP context.

Get m_pAppHandles object.

Get Protocol Info object.

Get Notifying queue object.

Get Notifying queue object used for ZW Command Queue.

Get Network Statistics object.

Get m_PowerLock object.

uint8_t

Returns the granted security keys.

Get Command Publisher handle Any other module can request the address of the CP context to use the API.

bool
isFLiRS(const SAppNodeInfo_t *pAppNodeInfo)

Check if device is FLiRS based on device option mask.

Returns the current inclusion state of the node.

Returns the current ID of the node.

uint32_t

Returns the current home ID.

Returns the current Suc node ID.

Returns the current inclusion mode of the node, which indicates whether the node is acting as a Z-Wave or Z-Wave LR node.

bool
isRfRegionValid(zpal_radio_region_t region)

Checks if region is valid Z-Wave radio region.

void
zaf_set_stay_awake_callback(zaf_wake_up_callback_t callback)

Registers a wake up function to keep the node awake.

Returns the wake up callback.

Enumeration Documentation#

EInclusionMode_t#

EInclusionMode_t

Used to indicate node inclusion type that related to it working over Long Range or Z-Wave mode.

This information will be used to distinguish between these two mode in order to indicate the needed operations when they differ between Z-Wave and Long Range.

Enumerator
EINCLUSIONMODE_NOT_SET
EINCLUSIONMODE_ZWAVE_CLS

!< Does not indicate inclusion state, but that it is undefined!

EINCLUSIONMODE_ZWAVE_LR

!< This node was included as a Z-Wave Classic device.


Definition at line 36 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

Typedef Documentation#

zaf_wake_up_callback_t#

typedef void(* zaf_wake_up_callback_t) (void) )(void)

Definition at line 29 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

Function Documentation#

ZAF_Init#

void ZAF_Init (TaskHandle_t AppTaskHandle, SApplicationHandles *pAppHandles)

Initializes the Z-Wave Application Framework.

Parameters
N/AAppTaskHandle

Task handle

N/ApAppHandles

pointer to Application Handle in application

This function must be invoked by end devices and portable controllers, but not Serial API.

It initializes the following stuff:

  • Application timer

  • Board

  • Application file system

  • Power lock for FLiRS

  • True Status

  • Command Publisher

  • All command classes that have registered an init function.

  • Generates the three lists of command classes used for Node Information Frame, etc.


Definition at line 40 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_helper.h

ZAF_Reset#

void ZAF_Reset (void)

Reset ZAF and command classes that have registered a reset function with a REGISTER_CC macro.

Parameters
N/A

Definition at line 45 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_helper.h

ZAF_getAppTaskHandle#

TaskHandle_t ZAF_getAppTaskHandle (void)

Returns the task handle set by ZAF_Init().

Parameters
N/A

Returns

  • Task handle.


Definition at line 51 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_helper.h

zaf_stay_awake#

void zaf_stay_awake (void)

Makes the node stay awake for either 2 or 10 seconds.

Parameters
N/A

For an LS (listening sleeping) node, the node will stay awake for 2 seconds. If the node supports CC Wake Up, it will stay awake for 10 seconds, if CC Wake Up is active.

For RS (reporting sleeping), the node will stay awake for 10 seconds, if CC Wake Up is active.


Definition at line 61 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_helper.h

zaf_learn_mode_finished#

void zaf_learn_mode_finished (void)

Function called when the EVENT_SYSTEM_LEARNMODE_FINISHED is received.

Parameters
N/A

This function is weakly defined and can be overwritten by one command class. Applications should not overwrite this function instead they should handle the event. CC WakeUp overwrites it.


Definition at line 71 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_helper.h

ZAF_setAppHandle#

void ZAF_setAppHandle (SApplicationHandles *pAppHandle)

Pass an application handle to the ZAF framework with pointers to application resources.

Parameters
N/ApAppHandle

pointer to Application Handle in application

Can be later used by CC-s.


Definition at line 49 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

ZAF_setPowerLock#

void ZAF_setPowerLock (zpal_pm_handle_t powerLock)

Pass an application power lock handle to the ZAF framework.

Parameters
N/ApowerLock

pointer to power lock object in application

Can be later used by CC-s. Used for Power management in case of wake up of FLiRS nodes.


Definition at line 57 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

ZAF_SetCPHandle#

void ZAF_SetCPHandle (CP_Handle_t handle)

Set the CP context.

Parameters
N/Ahandle

to set

The application should use this an initialization, so the ZAF_Common interface can redistribute the pContext address subsequently


Definition at line 65 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

ZAF_getAppHandle#

SApplicationHandles * ZAF_getAppHandle (void)

Get m_pAppHandles object.

Parameters
N/A

Returns

  • m_pAppHandles


Definition at line 74 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

ZAF_getProtocolInfo#

const SProtocolInfo * ZAF_getProtocolInfo (void)

Get Protocol Info object.

Parameters
N/A

Returns

  • pProtocolInfo member of m_pAppHandles


Definition at line 80 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

ZAF_getZwTxQueue#

SQueueNotifying * ZAF_getZwTxQueue (void)

Get Notifying queue object.

Parameters
N/A

It is stored in m_pAppHandles Returns

  • pZwTxQueue member of m_pAppHandles


Definition at line 86 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

ZAF_getZwCommandQueue#

SQueueNotifying * ZAF_getZwCommandQueue (void)

Get Notifying queue object used for ZW Command Queue.

Parameters
N/A

Returns

  • pZwCommandQueue member of m_pAppHandles


Definition at line 92 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

ZAF_getNetworkStatistics#

const zpal_radio_network_stats_t * ZAF_getNetworkStatistics (void)

Get Network Statistics object.

Parameters
N/A

Returns

  • pNetworkStatistics member of m_pAppHandles


Definition at line 98 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

ZAF_getPowerLock#

zpal_pm_handle_t ZAF_getPowerLock (void)

Get m_PowerLock object.

Parameters
N/A

Returns

  • m_PowerLock


Definition at line 104 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

ZAF_GetSecurityKeys#

uint8_t ZAF_GetSecurityKeys (void)

Returns the granted security keys.

Parameters
N/A

Refer to ZW_security_api.h for the security key masks. Returns

  • 8 bit mask where a set bit indicates that a security key is granted.


Definition at line 112 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

ZAF_getCPHandle#

CP_Handle_t ZAF_getCPHandle (void)

Get Command Publisher handle Any other module can request the address of the CP context to use the API.

Parameters
N/A

Returns

  • Pointer to Command Publisher context


Definition at line 120 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

isFLiRS#

bool isFLiRS (const SAppNodeInfo_t *pAppNodeInfo)

Check if device is FLiRS based on device option mask.

Parameters
N/ApAppNodeInfo

Returns

  • True or false, based on pAppNodeInfo


Definition at line 129 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

ZAF_GetInclusionState#

EInclusionState_t ZAF_GetInclusionState (void)

Returns the current inclusion state of the node.

Parameters
N/A

Returns

  • EInclusionState_t


Definition at line 135 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

ZAF_GetNodeID#

node_id_t ZAF_GetNodeID (void)

Returns the current ID of the node.

Parameters
N/A

If the node is not added to a network, the node ID is zero. Returns

  • Node ID


Definition at line 143 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

ZAF_GetHomeID#

uint32_t ZAF_GetHomeID (void)

Returns the current home ID.

Parameters
N/A

Returns

  • Home ID


Definition at line 150 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

ZAF_GetSucNodeId#

node_id_t ZAF_GetSucNodeId (void)

Returns the current Suc node ID.

Parameters
N/A

Returns

  • Suc Node ID


Definition at line 157 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

ZAF_GetInclusionMode#

EInclusionMode_t ZAF_GetInclusionMode (void)

Returns the current inclusion mode of the node, which indicates whether the node is acting as a Z-Wave or Z-Wave LR node.

Parameters
N/A

Returns

  • EInclusionMode_t


Definition at line 165 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

isRfRegionValid#

bool isRfRegionValid (zpal_radio_region_t region)

Checks if region is valid Z-Wave radio region.

Parameters
N/Aregion

Region to check

Returns

  • True if region is valid, false if it isn't.


Definition at line 172 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

zaf_set_stay_awake_callback#

void zaf_set_stay_awake_callback (zaf_wake_up_callback_t callback)

Registers a wake up function to keep the node awake.

Parameters
N/Acallback

Function to invoke to keep the node awake.

The function will be invoked on every reception of a frame to keep the node awake.


Definition at line 180 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h

zaf_get_stay_awake_callback#

zaf_wake_up_callback_t zaf_get_stay_awake_callback (void)

Returns the wake up callback.

Parameters
N/A

Returns

  • Wake up callback


Definition at line 186 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZAF/ApplicationUtilities/_commonIF/ZAF_Common_interface.h