Z-Wave Basis API#

This section defines functions that are implemented in all Z Wave nodes.

Modules#

_APPL_NODE_TYPE_

_NODE_TYPE_

_NODEINFO_

RSSI_LEVELS

Number of Channels

Application Node Info

Enumerations#

enum
APPLICATION_RUNNING
APPLICATION_POWER_DOWN
APPLICATION_TEST
}

Return values of ApplicationInit.

enum
E_NETWORK_LEARN_MODE_DISABLE = 0
E_NETWORK_LEARN_MODE_INCLUSION = 1
E_NETWORK_LEARN_MODE_EXCLUSION = 2
E_NETWORK_LEARN_MODE_EXCLUSION_NWE = 3
E_NETWORK_LEARN_MODE_INCLUSION_SMARTSTART = 4
E_NETWORK_LEARN_MODE_COUNT
}

Network modes that can be set by ZAF_setNetworkLearnMode.

enum
ERESETREASON_PIN = 0
ERESETREASON_DEEP_SLEEP_WUT = 1
ERESETREASON_WATCHDOG = 3
ERESETREASON_DEEP_SLEEP_EXT_INT = 4
ERESETREASON_POWER_ON = 5
ERESETREASON_SOFTWARE = 7
ERESETREASON_BROWNOUT = 9
ERESETREASON_TAMPER = 10
ERESETREASON_OTHER = 0xFF
}

Description of reset reason.

enum
E_SYSTEM_TYPE_NON_LISTENING = APPLICATION_NODEINFO_NOT_LISTENING
E_SYSTEM_TYPE_LISTENING = APPLICATION_NODEINFO_LISTENING
E_SYSTEM_TYPE_FLIRS = 0x02
}

Typedefs#

typedef struct _APPL_NODE_TYPE_

Node type structure used in ApplicationNodeInformation.

typedef struct _NODE_TYPE_
typedef struct _NODEINFO_

Node info stored within the non-volatile memory This are the first (protocol part) payload bytes from the Node Infomation frame.

typedef enum EResetReason_t

Description of reset reason.

Functions#

ApplicationInit(EResetReason_t eResetReason)

ApplicationInit() MUST be defined by the application.

void

Initialize the Z-Wave protocol stack.

void

Early startup of Z-Wave platform features.

uint16_t

Gets Z-Wave Protocol Build number.

uint8_t *

Gets Z-Wave Protocol git hash.

Macros#

#define
SYSTEM_TYPE_LISTENING_MASK E_SYSTEM_TYPE_LISTENING
#define
SYSTEM_TYPE_FLIRS_MASK E_SYSTEM_TYPE_FLIRS

Enumeration Documentation#

_APPLICATION_STATUS_#

_APPLICATION_STATUS_

Return values of ApplicationInit.

Enumerator
APPLICATION_RUNNING

Application started normally.

APPLICATION_POWER_DOWN

Application started in special mode: Scheduler started, but Z-Wave protocol task did not.

APPLICATION_TEST

Test only, not to be used in production.


Definition at line 28 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

_E_NETWORK_LEARN_MODE_ACTION_#

_E_NETWORK_LEARN_MODE_ACTION_

Network modes that can be set by ZAF_setNetworkLearnMode.

Enumerator
E_NETWORK_LEARN_MODE_DISABLE

Disable learn process.

E_NETWORK_LEARN_MODE_INCLUSION

Enable the learn process to do an inclusion.

E_NETWORK_LEARN_MODE_EXCLUSION

Enable the learn process to do an exclusion.

E_NETWORK_LEARN_MODE_EXCLUSION_NWE

Enable the learn process to do an network wide exclusion.

E_NETWORK_LEARN_MODE_INCLUSION_SMARTSTART

Enable the learn process to do an SMARTSTART inclusion.

E_NETWORK_LEARN_MODE_COUNT

Definition at line 80 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

EResetReason_t#

EResetReason_t

Description of reset reason.

Enum is defined in ZW API as its not HW platform specific. Warnings

  • For backwards compatibility the enum values must comply with the values from ZW_WAKEUP below.

Enumerator
ERESETREASON_PIN

Reset triggered by reset pin.

ERESETREASON_DEEP_SLEEP_WUT

Reset triggered by wake up by timer from deep sleep state

ERESETREASON_WATCHDOG

Reset triggered by watchdog.

ERESETREASON_DEEP_SLEEP_EXT_INT

Reset triggered by external interrupt event in deep sleep state.

ERESETREASON_POWER_ON

Reset triggered by power on.

ERESETREASON_SOFTWARE

Reset triggered by software.

ERESETREASON_BROWNOUT

Reset triggered by brownout circuit.

ERESETREASON_TAMPER

Reset triggered by tamper attempt.

ERESETREASON_OTHER

Reset triggered by none of the above.


Definition at line 98 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

_E_SYSTEM_TYPE_#

_E_SYSTEM_TYPE_

DeprecatedUse Application Node Info instead

Enumerator
E_SYSTEM_TYPE_NON_LISTENING
E_SYSTEM_TYPE_LISTENING
E_SYSTEM_TYPE_FLIRS

Definition at line 154 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

Typedef Documentation#

ZW_APPLICATION_STATUS#

typedef enum _APPLICATION_STATUS_ ZW_APPLICATION_STATUS

Return values of ApplicationInit.


Definition at line 34 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

APPL_NODE_TYPE#

typedef struct _APPL_NODE_TYPE_ APPL_NODE_TYPE

Node type structure used in ApplicationNodeInformation.


Definition at line 51 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

NODE_TYPE#

typedef struct _NODE_TYPE_ NODE_TYPE

Definition at line 59 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

NODEINFO#

typedef struct _NODEINFO_ NODEINFO

Node info stored within the non-volatile memory This are the first (protocol part) payload bytes from the Node Infomation frame.


Definition at line 70 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

E_NETWORK_LEARN_MODE_ACTION#

typedef enum _E_NETWORK_LEARN_MODE_ACTION_ E_NETWORK_LEARN_MODE_ACTION

Network modes that can be set by ZAF_setNetworkLearnMode.


Definition at line 88 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

EResetReason_t#

typedef enum EResetReason_t EResetReason_t

Description of reset reason.

Enum is defined in ZW API as its not HW platform specific. Warnings

  • For backwards compatibility the enum values must comply with the values from ZW_WAKEUP below.


Definition at line 112 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

E_SYSTEM_TYPE#

typedef enum _E_SYSTEM_TYPE_ E_SYSTEM_TYPE

DeprecatedUse Application Node Info instead

DeprecatedUse APPLICATION_NODEINFO_LISTENING instead


Definition at line 161 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

Function Documentation#

ApplicationInit#

ZW_APPLICATION_STATUS ApplicationInit (EResetReason_t eResetReason)

ApplicationInit() MUST be defined by the application.

Parameters
[in]eResetReason

The reason that triggered a reset/boot of the firmware. For instance, external pin, wake up timer, power on, etc. Please see EResetReason_t.

This function will be invoked by the Z-Wave stack during boot.

ApplicationInit() is invoked before the scheduler starts.

ApplicationInit() MUST invoke ZW_ApplicationRegisterTask() as a minimum.

Returns

  • The Z-Wave stack acts differently depending on the returned value. If APPLICATION_RUNNING is returned, everything will boot normally. If APPLICATION_POWER_DOWN is returned, the Z-Wave stack will NOT start, but the scheduler will start.


Definition at line 184 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

sl_zwave_protocol_startup#

void sl_zwave_protocol_startup (void )

Initialize the Z-Wave protocol stack.

Parameters
N/A

Definition at line 191 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

sl_zwave_platform_startup#

void sl_zwave_platform_startup (void )

Early startup of Z-Wave platform features.

Parameters
N/A

Definition at line 196 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

ZW_GetProtocolBuildNumber#

uint16_t ZW_GetProtocolBuildNumber (void )

Gets Z-Wave Protocol Build number.

Parameters
N/A

Returns

  • Z-Wave Protocol Build number


Definition at line 202 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

ZW_GetProtocolGitHash#

uint8_t * ZW_GetProtocolGitHash (void )

Gets Z-Wave Protocol git hash.

Parameters
N/A

Returns

  • uint8_t* Z-Wave Protocol git hash


Definition at line 209 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

Macro Definition Documentation#

SYSTEM_TYPE_LISTENING_MASK#

#define SYSTEM_TYPE_LISTENING_MASK
Value:
E_SYSTEM_TYPE_LISTENING

DeprecatedUse APPLICATION_FREQ_LISTENING_MODE_1000ms or APPLICATION_FREQ_LISTENING_MODE_250ms instead


Definition at line 162 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h

SYSTEM_TYPE_FLIRS_MASK#

#define SYSTEM_TYPE_FLIRS_MASK
Value:
E_SYSTEM_TYPE_FLIRS

Definition at line 164 of file /mnt/raid/workspaces/ws.WDdsgIAV6/overlay/gsdk/protocol/z-wave/ZWave/API/ZW_basis_api.h