Z-Wave Protocol Controller Reference
zwave_network_management.h File Reference
#include <stdint.h>
#include <stdbool.h>
#include "zwave_controller_types.h"
#include "zwave_generic_types.h"
#include "zwave_network_management_types.h"
#include "zwave_controller_keyset.h"
#include "sl_status.h"
Include dependency graph for zwave_network_management.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define ADD_REMOVE_TIMEOUT   60000
 
#define NOP_FOR_REMOVE_FAILED_TIMEOUT   65000
 
#define SMART_START_SELF_DESTRUCT_TIMEOUT   3000
 
#define SET_DEFAULT_TIMEOUT   15000
 
#define LEARN_MODE_TIMEOUT   30000
 
#define SEND_DATA_TIMEOUT   125000
 
#define ADD_NODE_STATUS_ADDING_END_NODE_TIMEOUT   60000
 
#define ADD_NODE_PROTOCOL_NEIGHBOR_DISCOVERY_TIMEOUT    (76000 + ZW_MAX_NODES * (3517 + 732))
 
#define PRIORITY_ROUTE_SIZE   5
 4 hops + speed More...
 

Functions

zwave_network_management_state_t zwave_network_management_get_state ()
 Get the current state of the network management module. More...
 
sl_status_t zwave_network_management_abort ()
 Abort current state and return to idle if its possible. More...
 
sl_status_t zwave_network_management_add_node ()
 Put the Z-Wave controller in add node mode. More...
 
sl_status_t zwave_network_management_add_node_with_dsk (const zwave_dsk_t dsk, zwave_keyset_t granted_keys, zwave_protocol_t preferred_inclusion)
 Put the Z-Wave controller in SmartStart add node mode. More...
 
void zwave_network_management_enable_smart_start_add_mode (bool enabled)
 Set the controller in SmartStart Add mode. More...
 
void zwave_network_management_enable_smart_start_learn_mode (bool enabled)
 Configures if the Network Management module will enter SmartStart learn mode when it goes back to IDLE, we are alone in a network SmartStart Add mode is disabled. More...
 
sl_status_t zwave_network_management_keys_set (bool accept, bool csa, zwave_keyset_t granted_keys)
 Inform an S2 bootstrapping controller which keys must be granted to the node being bootstrapped. More...
 
sl_status_t zwave_network_management_dsk_set (zwave_dsk_t dsk)
 Indicate to the S2 bootstrapping controller whether the DSK is accepted and report the user input when needed. More...
 
sl_status_t zwave_network_management_remove_node ()
 Put the Z-Wave controller in remove node mode. More...
 
sl_status_t zwave_network_management_learn_mode (zwave_learn_mode_t mode)
 Put the Z-Wave controller in learn mode. More...
 
sl_status_t zwave_network_management_set_default (void)
 Reset the controller. More...
 
sl_status_t zwave_network_management_remove_failed (zwave_node_id_t nodeid)
 Remove a failed node. More...
 
zwave_home_id_t zwave_network_management_get_home_id ()
 Get the cached HomeID. More...
 
zwave_node_id_t zwave_network_management_get_node_id ()
 Get the cached NodeID. More...
 
uint16_t zwave_network_management_get_network_size ()
 Returns the number of nodes in our network. More...
 
void zwave_network_management_get_network_node_list (zwave_nodemask_t node_list)
 Get the cached Node List for the current network. More...
 
zwave_keyset_t zwave_network_management_get_granted_keys ()
 Return the currently granted keys. More...
 
bool zwave_network_management_is_zpc_sis ()
 Checks if we have the SIS role in the current network. More...
 
bool zwave_network_management_is_protocol_sending_frames_to_node (zwave_node_id_t node_id)
 Checks if the protocol may be sending some frames to a particular NodeID. More...
 
sl_status_t zwave_network_management_request_node_neighbor_discovery (zwave_node_id_t node_id)
 Request Node Neighbor Discovery. More...
 
sl_status_t zwave_network_management_start_proxy_inclusion (zwave_node_id_t node_id, zwave_node_info_t nif, uint8_t inclusion_step)
 Request the NM to perform proxy inclusion. More...
 
sl_status_t zwave_network_management_assign_return_route (zwave_node_id_t node_id, zwave_node_id_t destination_node_id)
 Assign static return routes to End Nodes. More...
 
bool zwave_network_management_is_busy ()
 Verify if we are carrying some network management operations. More...
 
bool we_have_return_routes_to_assign (zwave_node_id_t node_id)
 Checks if we have return routes to assign for a given NodeID. More...
 
sl_status_t zwave_network_management_set_priority_route (zwave_node_id_t node_id, const uint8_t *const priority_route)
 Assign a priority route to a node. More...