Z-Wave Protocol Controller Reference
zwapi_protocol_controller.c File Reference
#include <string.h>
#include <assert.h>
#include "zwapi_protocol_controller.h"
#include "zwapi_func_ids.h"
#include "zwapi_session.h"
#include "zwapi_init.h"
#include "zwapi_internal.h"
#include "zwapi_utils.h"
#include "sl_log.h"
Include dependency graph for zwapi_protocol_controller.c:

Macros

#define LOG_TAG   "zwave_protocol_controller"
 

Functions

sl_status_t zwapi_request_neighbor_update (zwave_node_id_t bNodeID, void(*completedFunc)(uint8_t))
 Start neighbor discovery for bNodeID. More...
 
sl_status_t zwapi_get_protocol_info (zwave_node_id_t bNodeID, zwapi_node_info_header_t *node_info_header)
 Copy the Node's current protocol information from the non-volatile memory. More...
 
sl_status_t zwapi_get_virtual_nodes (zwave_nodemask_t node_mask)
 Request nodemask containing virtual nodes in controller bridge. More...
 
sl_status_t zwapi_set_default (void(*completedFunc)(void))
 Remove all Nodes and timers from the EEPROM memory. More...
 
sl_status_t zwapi_transfer_primary_ctrl_role (uint8_t bMode, void(*completedFunc)(LEARN_INFO *))
 Transfer the role as primary controller to another controller. More...
 
sl_status_t zwapi_create_new_primary_ctrl (uint8_t bMode, void(*completedFunc)(LEARN_INFO *))
 Create a new primary controller. More...
 
sl_status_t zwapi_add_node_to_network (uint8_t bMode, void(*completedFunc)(LEARN_INFO *))
 Add any type of node to the network. More...
 
sl_status_t zwapi_remove_node_from_network (uint8_t bMode, void(*completedFunc)(LEARN_INFO *))
 Remove any type of node from the network. More...
 
uint8_t zwapi_remove_failed_node (zwave_node_id_t NodeID, void(*completedFunc)(uint8_t))
 Remove a node from the failed node list, if it already exist. More...
 
uint8_t zwapi_replace_failed_node (zwave_node_id_t NodeID, bool bNormalPower, void(*completedFunc)(uint8_t txStatus))
 
sl_status_t zwapi_assign_return_route (zwave_node_id_t bSrcNodeID, zwave_node_id_t bDstNodeID, void(*completedFunc)(uint8_t bStatus))
 Assign static return routes within a Routing End Node. More...
 
sl_status_t zwapi_delete_return_route (zwave_node_id_t nodeID, void(*completedFunc)(uint8_t))
 
sl_status_t zwapi_assign_suc_return_route (zwave_node_id_t bSrcNodeID, void(*completedFunc)(uint8_t))
 
sl_status_t zwapi_delete_suc_return_route (zwave_node_id_t nodeID, void(*completedFunc)(uint8_t))
 
zwave_node_id_t zwapi_get_suc_node_id (void)
 Get the currently registered SUC node ID. More...
 
sl_status_t zwapi_set_suc_node_id (zwave_node_id_t nodeID, uint8_t SUCState, uint8_t bTxOption, uint8_t bCapabilities, void(*completedFunc)(uint8_t txStatus))
 Enable/disable the Static Update Controller functionality in a specified static controller. More...
 
sl_status_t zwapi_set_learn_mode (uint8_t mode, void(*completedFunc)(LEARN_INFO *))
 Enable/disable Z-Wave Learn Mode. More...
 
sl_status_t zwapi_set_virtual_node_to_learn_mode (zwave_node_id_t node, uint8_t mode, void(*completedFunc)(uint8_t, zwave_node_id_t, zwave_node_id_t))
 
sl_status_t zwapi_request_node_info (zwave_node_id_t node_id)
 Request node information from a node. More...
 
sl_status_t zwapi_request_protocol_cc_encryption_callback (uint8_t tx_status, const zwapi_tx_report_t *tx_report, uint8_t session_id)
 Sends TX status, TX report and session ID of the ongoing protocol command class encryption session to the Z-Wave API module. More...
 
sl_status_t zwapi_send_controller_replication (zwave_node_id_t nodeID, const uint8_t *pData, uint8_t dataLength, uint8_t txOptions, void(*completedFunc)(uint8_t txStatus))
 
uint8_t zwapi_get_controller_capabilities (void)
 Get capabilities of a controller. More...
 
sl_status_t zwapi_request_network_update (void(*complFunc)(uint8_t))
 
sl_status_t zwapi_replication_receive_complete ()
 Send command completed to primary controller. More...
 
bool zwapi_is_node_primary_ctrl (void)
 Query whether the controller is a primary controller or a secondary controller in the network. More...
 
bool zwapi_is_node_failed (zwave_node_id_t nodeID)
 Check if a node is in the failed nodes table. More...
 
sl_status_t zwapi_set_max_source_route (uint8_t maxRouteTries)
 Set the maximum number of source routing attempts before the explorer frame mechanism kicks in. More...
 
uint8_t zwapi_get_priority_route (zwave_node_id_t bNodeID, uint8_t *pLastWorkingRoute)
 Get the Last Working Route (LWR) for a destination node if any exist. More...
 
sl_status_t zwapi_set_priority_route (zwave_node_id_t bNodeID, uint8_t *pLastWorkingRoute)
 Set the Last Working Route (LWR) for a destination node. More...
 
sl_status_t zwapi_get_old_routing_info (zwave_node_id_t bNodeID, uint8_t *buf, uint8_t bRemoveBad, uint8_t bRemoveNonReps)
 Read out neighbor information. More...
 
sl_status_t zwapi_enable_suc (uint8_t state, uint8_t capabilities)
 Enable the SUC functionality in a controller. More...
 
sl_status_t zwapi_add_smartstart_node_to_network (uint8_t bMode, const uint8_t *dsk, void(*completedFunc)(LEARN_INFO *))
 Add any type of node to the network and accept prekit inclusion. More...
 
sl_status_t zwapi_set_virtual_node_application_node_information (zwave_node_id_t dstNode, uint8_t listening, const node_type_t *node_type, uint8_t *nodeParm, uint8_t parmLength)
 Sets the Application Node Information data for all virtual nodes owned by the Z-Wave API Module. More...
 
sl_status_t zwapi_enable_node_nls (const zwave_node_id_t nodeId)
 Set the NLS State of the node in the controller NVM. More...
 
sl_status_t zwapi_get_node_nls (const zwave_node_id_t nodeId, uint8_t *nls_state, uint8_t *nls_support)
 Get the NLS State of the node in the controller NVM. More...
 
sl_status_t zwapi_get_nls_nodes (uint16_t *list_length, zwave_nodemask_t node_list)
 Get the NLS State of the nodes of a network in the controller NVM. More...
 
sl_status_t zwapi_transfer_protocol_cc (const zwave_node_id_t srcNode, const uint8_t decryptionKey, const uint8_t payloadLength, const uint8_t *const payload)
 Transfer a decrypted Protocol Command Class to the controller module. More...
 

Macro Definition Documentation

◆ LOG_TAG

#define LOG_TAG   "zwave_protocol_controller"

Function Documentation

◆ zwapi_assign_suc_return_route()

sl_status_t zwapi_assign_suc_return_route ( zwave_node_id_t  bSrcNodeID,
void(*)(uint8_t)  completedFunc 
)
Here is the call graph for this function:

◆ zwapi_delete_return_route()

sl_status_t zwapi_delete_return_route ( zwave_node_id_t  nodeID,
void(*)(uint8_t)  completedFunc 
)
Here is the call graph for this function:

◆ zwapi_delete_suc_return_route()

sl_status_t zwapi_delete_suc_return_route ( zwave_node_id_t  nodeID,
void(*)(uint8_t)  completedFunc 
)
Here is the call graph for this function:

◆ zwapi_replace_failed_node()

uint8_t zwapi_replace_failed_node ( zwave_node_id_t  NodeID,
bool  bNormalPower,
void(*)(uint8_t txStatus)  completedFunc 
)
Here is the call graph for this function:

◆ zwapi_request_network_update()

sl_status_t zwapi_request_network_update ( void(*)(uint8_t)  complFunc)
Here is the call graph for this function:

◆ zwapi_send_controller_replication()

sl_status_t zwapi_send_controller_replication ( zwave_node_id_t  nodeID,
const uint8_t *  pData,
uint8_t  dataLength,
uint8_t  txOptions,
void(*)(uint8_t txStatus)  completedFunc 
)
Here is the call graph for this function:

◆ zwapi_set_virtual_node_to_learn_mode()

sl_status_t zwapi_set_virtual_node_to_learn_mode ( zwave_node_id_t  node,
uint8_t  mode,
void(*)(uint8_t, zwave_node_id_t, zwave_node_id_t completedFunc 
)
Here is the call graph for this function: