Zigbee Protocol Controller 1.6.0
|
Public command API for zigpc_gateway. More...
Modules | |
ZigPC Observer API | |
Observer API for getting events from zigpc_gateway. | |
ZigPC Gateway Component | |
The interface for interacting with sleepy messages. | |
ZigPC Gateway Process Event API | |
Observer API for getting events from zigpc_gateway. | |
ZigPC Gateway Request Queue | |
Request Queue API to send messages to EmberAf/ZigbeeHost layer. | |
Functions | |
sl_status_t | zigpc_gateway_network_init (void) |
Request to initialize the Zigbee Network. The gateway will establish the Gateway device as a Zigbee Coordinator and Trust Center. On success, the "on_network_initialized" event will be set to components listening on zigpc_gateway notifications. More... | |
sl_status_t | zigpc_gateway_network_permit_joins (bool enable) |
Request to enable/disable permitting Zigbee devices to join the network. More... | |
sl_status_t | zigpc_gateway_send_zcl_command_frame (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_id_t cluster_id, const zcl_frame_t *frame) |
Request to send a ZCL frame to an end device. More... | |
sl_status_t | zigpc_gateway_send_zcl_frame_multicast (zigbee_multicast_id_t multicast_id, zcl_cluster_id_t cluster_id, const zcl_frame_t *frame) |
Request to send a ZCL frame to a multicast group. More... | |
sl_status_t | zigpc_gateway_configure_reports (const zigbee_eui64_t eui64, uint8_t endpoint_id, zcl_cluster_id_t cluster_id, const uint8_t *report_record, unsigned int record_size) |
Request to send a ZCL Configure Reporting command to an end device. More... | |
sl_status_t | zigpc_gateway_request_binding (const zigbee_eui64_t source_eui64, uint8_t source_endpoint_id, zcl_cluster_id_t cluster_id, const zigbee_eui64_t dest_eui64, uint8_t dest_endpoint_id) |
Request to send a ZCL Configure Reporting command to an end device. More... | |
sl_status_t | zigpc_gateway_request_unbind (const zigbee_eui64_t source_eui64, uint8_t source_endpoint_id, zcl_cluster_id_t cluster_id, const zigbee_eui64_t dest_eui64, uint8_t dest_endpoint_id) |
sl_status_t | zigpc_gateway_request_binding_endpoint (const zigbee_eui64_t eui64, const zigbee_endpoint_t endpoint, const zigbee_eui64_t gateway_eui64) |
Request to send a ZCL Configure Reporting command to an end device. More... | |
bool | zigpc_gateway_install_code_is_valid (const uint8_t *install_code, uint8_t install_code_length) |
Validate if install code can be accepted by EmberAf layer. More... | |
sl_status_t | zigpc_gateway_add_node (const zigbee_eui64_t node_eui64, const zigbee_install_code_t install_code, const uint8_t install_code_length, bool is_well_known_key_add) |
Request to add a node to the Zigbee Network using the Z3 Install Code Method. More... | |
sl_status_t | zigpc_gateway_remove_node (const zigbee_eui64_t eui64) |
Request to remove node on the Zigbee Network. If the node is not on the Zigbee network, no device remove success events will be sent to listening components. More... | |
sl_status_t | zigpc_gateway_discover_device (const zigbee_eui64_t eui64) |
Request to interview node on the Zigbee Network. If the node is not on the Zigbee network, no device or endpoint discovery notifications will be sent. More... | |
sl_status_t | zigpc_gateway_discover_endpoint (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id) |
Request to interview device endpoint on the Zigbee Network. If the device is not on the Zigbee network, zero endpoint discovery information will be received as a response. More... | |
sl_status_t | zigpc_gateway_add_ota_image (const char *filename, unsigned int filename_size) |
zigpc_gateway_add_ota_image - add an OTA image to the ota-server plugin More... | |
void | zigpc_gateway_command_print_info (void) |
Send command to print ZigbeeHost info. More... | |
void | zigpc_gateway_send_emberaf_command (char *array) |
Send command to the ember CLI. More... | |
void | zigpc_gateway_command_print_nwk_key (void) |
Send command to print Ember NWK key. More... | |
sl_status_t | zigpc_gateway_get_counters_list (uint16_t *list, size_t count) |
Populate counters values to list provided. More... | |
const char * | zigpc_gateway_get_counters_entry_label (size_t offset) |
Get the label of the counters entry based on the offset passed in. More... | |
size_t | zigpc_gateway_get_counters_capacity () |
Get the counters capacity. More... | |
void | zigpc_gateway_clear_counters () |
clear the counter plugin tokens More... | |
sl_status_t | zigpc_gateway_bootload_restart () |
uint8_t | zigpc_gateway_get_neighbor_count () |
Get current active count in the neighbor adress table. More... | |
sl_status_t | zigpc_gateway_get_neighbor_eui64 (uint8_t index, zigbee_eui64_t eui64) |
Get a specific neighbor EUI64 from its index. More... | |
sl_status_t | zigpc_gateway_process_setup (void) |
Set up the function for the zigpc_gateway component. More... | |
int | zigpc_gateway_process_shutdown (void) |
Tear-down function for the zigpc_gateway component. More... | |
Public command API for zigpc_gateway.
Set up and tear down the ZigPC gateway process.
TODO: Write component description for zigpc_gateway_process
sl_status_t zigpc_gateway_add_node | ( | const zigbee_eui64_t | node_eui64, |
const zigbee_install_code_t | install_code, | ||
const uint8_t | install_code_length, | ||
bool | is_well_known_key_add | ||
) |
Request to add a node to the Zigbee Network using the Z3 Install Code Method.
node_eui64 | End device EUI64 in big-endian format |
install_code | End device install code |
install_code_length | install code length |
is_well_known_key_add |
sl_status_t zigpc_gateway_add_ota_image | ( | const char * | filename, |
unsigned int | filename_size | ||
) |
zigpc_gateway_add_ota_image - add an OTA image to the ota-server plugin
filename | - the filepath of the requested OTA image |
sl_status_t zigpc_gateway_bootload_restart | ( | ) |
void zigpc_gateway_clear_counters | ( | ) |
clear the counter plugin tokens
void zigpc_gateway_command_print_info | ( | void | ) |
Send command to print ZigbeeHost info.
void zigpc_gateway_command_print_nwk_key | ( | void | ) |
Send command to print Ember NWK key.
sl_status_t zigpc_gateway_configure_reports | ( | const zigbee_eui64_t | eui64, |
uint8_t | endpoint_id, | ||
zcl_cluster_id_t | cluster_id, | ||
const uint8_t * | report_record, | ||
unsigned int | record_size | ||
) |
Request to send a ZCL Configure Reporting command to an end device.
eui64 | End device EUI64 in big-endian format. |
endpoint_id | End device endpoint identifier. |
cluster_id | End device ZCL cluster identifier. |
report_record | ZCL report record to send. |
record_size | ZCL report record size. |
sl_status_t zigpc_gateway_discover_device | ( | const zigbee_eui64_t | eui64 | ) |
Request to interview node on the Zigbee Network. If the node is not on the Zigbee network, no device or endpoint discovery notifications will be sent.
NOTE: Callers should use a timeout to respond to failure in interviewing a device if no notifications are sent within that timeout.
eui64 | End device EUI64 in big-endian format |
sl_status_t zigpc_gateway_discover_endpoint | ( | const zigbee_eui64_t | eui64, |
zigbee_endpoint_id_t | endpoint_id | ||
) |
Request to interview device endpoint on the Zigbee Network. If the device is not on the Zigbee network, zero endpoint discovery information will be received as a response.
NOTE: Callers should use a timeout to respond to failure in interviewing a device if no notifications are sent within that timeout.
eui64 | Device identifier. |
endpoint | Endpoint identifier. |
size_t zigpc_gateway_get_counters_capacity | ( | ) |
Get the counters capacity.
const char * zigpc_gateway_get_counters_entry_label | ( | size_t | offset | ) |
Get the label of the counters entry based on the offset passed in.
offset | counter entry offset to get label for. |
sl_status_t zigpc_gateway_get_counters_list | ( | uint16_t * | list, |
size_t | count | ||
) |
Populate counters values to list provided.
list | List provided. |
size | Capcity of list passed in. |
uint8_t zigpc_gateway_get_neighbor_count | ( | ) |
Get current active count in the neighbor adress table.
sl_status_t zigpc_gateway_get_neighbor_eui64 | ( | uint8_t | index, |
zigbee_eui64_t | eui64 | ||
) |
Get a specific neighbor EUI64 from its index.
bool zigpc_gateway_install_code_is_valid | ( | const uint8_t * | install_code, |
uint8_t | install_code_length | ||
) |
Validate if install code can be accepted by EmberAf layer.
install_code | Install code data. |
install_code_length | Install code length. |
sl_status_t zigpc_gateway_network_init | ( | void | ) |
Request to initialize the Zigbee Network. The gateway will establish the Gateway device as a Zigbee Coordinator and Trust Center. On success, the "on_network_initialized" event will be set to components listening on zigpc_gateway notifications.
sl_status_t zigpc_gateway_network_permit_joins | ( | bool | enable | ) |
Request to enable/disable permitting Zigbee devices to join the network.
sl_status_t zigpc_gateway_process_setup | ( | void | ) |
Set up the function for the zigpc_gateway component.
int zigpc_gateway_process_shutdown | ( | void | ) |
Tear-down function for the zigpc_gateway component.
sl_status_t zigpc_gateway_remove_node | ( | const zigbee_eui64_t | eui64 | ) |
Request to remove node on the Zigbee Network. If the node is not on the Zigbee network, no device remove success events will be sent to listening components.
NOTE: Callers should use a timeout to respond to failure in removing a device if no notifications are sent within that timeout.
eui64 | End device EUI64 in big-endian format |
sl_status_t zigpc_gateway_request_binding | ( | const zigbee_eui64_t | source_eui64, |
uint8_t | source_endpoint_id, | ||
zcl_cluster_id_t | cluster_id, | ||
const zigbee_eui64_t | dest_eui64, | ||
uint8_t | dest_endpoint_id | ||
) |
Request to send a ZCL Configure Reporting command to an end device.
eui64 | End device EUI64 in big-endian format. |
endpoint_id | End device endpoint identifier. |
cluster_id | End device ZCL cluster identifier. |
sl_status_t zigpc_gateway_request_binding_endpoint | ( | const zigbee_eui64_t | eui64, |
const zigbee_endpoint_t | endpoint, | ||
const zigbee_eui64_t | gateway_eui64 | ||
) |
Request to send a ZCL Configure Reporting command to an end device.
eui64 | End device EUI64 in big-endian format. |
endpoint_id | End device endpoint identifier. |
cluster_id | End device ZCL cluster identifier. |
report_record | ZCL report record to send. |
record_size | ZCL report record size. |
sl_status_t zigpc_gateway_request_unbind | ( | const zigbee_eui64_t | source_eui64, |
uint8_t | source_endpoint_id, | ||
zcl_cluster_id_t | cluster_id, | ||
const zigbee_eui64_t | dest_eui64, | ||
uint8_t | dest_endpoint_id | ||
) |
void zigpc_gateway_send_emberaf_command | ( | char * | array | ) |
Send command to the ember CLI.
array | |
length |
sl_status_t zigpc_gateway_send_zcl_command_frame | ( | const zigbee_eui64_t | eui64, |
zigbee_endpoint_id_t | endpoint_id, | ||
zcl_cluster_id_t | cluster_id, | ||
const zcl_frame_t * | frame | ||
) |
Request to send a ZCL frame to an end device.
eui64 | End device EUI64 in big-endian format. |
endpoint_id | End device endpoint identifier. |
cluster_id | End device ZCL cluster identifier. |
frame | ZCL Frame to send. |
sl_status_t zigpc_gateway_send_zcl_frame_multicast | ( | zigbee_multicast_id_t | multicast_id, |
zcl_cluster_id_t | cluster_id, | ||
const zcl_frame_t * | frame | ||
) |
Request to send a ZCL frame to a multicast group.
multicast_id | Multicast identifier. |
frame | ZCL Frame to send. |