GBCS Device Log#

API and Callbacks for the gbcs-device-log Component.

Silicon Labs implementation of the GBCS Device Log. Note that, although this supports populating the device log with a set of devices, this is only intended for testing purposes and should not be thought of as a complete provisioning solution. The real provisioning solution should use the API provided by this component to add and remove items from the device log.

Modules#

sl_zigbee_af_g_b_c_s_device_log_info_t

GBCS Device Log

API#

void

Clear all entries from the GBCS Device Log.

void

Reset the GBCS Device Log to include only those entries configured with the plugin.

uint8_t

Get the number of entries in the GBCS Device Log.

bool
sl_zigbee_af_gbcs_device_log_store(sl_802154_long_addr_t deviceId, sl_zigbee_af_g_b_c_s_device_log_info_t *deviceInfo)

Add or update an entry within the GBCS Device Log.

bool
sl_zigbee_af_gbcs_device_log_remove(sl_802154_long_addr_t deviceId)

Remove an entry from the GBCS Device Log.

bool
sl_zigbee_af_gbcs_device_log_get(sl_802154_long_addr_t deviceId, sl_zigbee_af_g_b_c_s_device_log_info_t *deviceInfo)

Get the device information about an entry in the GBCS Device Log.

bool
sl_zigbee_af_gbcs_device_log_exists(sl_802154_long_addr_t deviceId, sl_zigbee_af_g_b_c_s_device_type_t deviceType)

Check whether the given device exists within the GBCS Device Log.

void

Print all entries in the GBCS Device Log.

bool
sl_zigbee_af_gbcs_device_log_retrieve_by_index(uint8_t index, sl_802154_long_addr_t returnDeviceId, sl_zigbee_af_g_b_c_s_device_log_info_t *returnDeviceInfo)

Retrieve the device from the log at the specified index.

#define

Indicate whether the given device type is a sleepy device.

Enumerations#

enum
SL_ZIGBEE_AF_GBCS_GSME_DEVICE_TYPE = 0x00
SL_ZIGBEE_AF_GBCS_ESME_DEVICE_TYPE = 0x01
SL_ZIGBEE_AF_GBCS_CHF_DEVICE_TYPE = 0x02
SL_ZIGBEE_AF_GBCS_GPF_DEVICE_TYPE = 0x03
SL_ZIGBEE_AF_GBCS_HCALCS_DEVICE_TYPE = 0x04
SL_ZIGBEE_AF_GBCS_PPMID_DEVICE_TYPE = 0x05
SL_ZIGBEE_AF_GBCS_TYPE2_DEVICE_TYPE = 0x06
}

API Documentation#

sl_zigbee_af_gbcs_device_log_clear#

void sl_zigbee_af_gbcs_device_log_clear (void )

Clear all entries from the GBCS Device Log.

Parameters
N/A

Definition at line 68 of file app/framework/plugin/gbcs-device-log/gbcs-device-log.h

sl_zigbee_af_gbcs_device_log_reset#

void sl_zigbee_af_gbcs_device_log_reset (void )

Reset the GBCS Device Log to include only those entries configured with the plugin.

Parameters
N/A

This function will clear the device log then add each of the devices configured configured with the plugin.


Definition at line 76 of file app/framework/plugin/gbcs-device-log/gbcs-device-log.h

sl_zigbee_af_gbcs_device_log_count#

uint8_t sl_zigbee_af_gbcs_device_log_count (void )

Get the number of entries in the GBCS Device Log.

Parameters
N/A

Returns

  • The number of entries currently in the GBCS Device Log.


Definition at line 83 of file app/framework/plugin/gbcs-device-log/gbcs-device-log.h

sl_zigbee_af_gbcs_device_log_store#

bool sl_zigbee_af_gbcs_device_log_store (sl_802154_long_addr_t deviceId, sl_zigbee_af_g_b_c_s_device_log_info_t * deviceInfo)

Add or update an entry within the GBCS Device Log.

Parameters
N/AdeviceId

The EUI64 of the device to be added or updated.

N/AdeviceInfo

A pointer to the structure containing the deviceType of the device to be added or updated.

This function is used to add or update an entry within the GBCS Device Log.

Returns

  • True if successfully added or updated, false if there is insufficient room in the device log to add the new entry. The size of the device log is controlled by the "Device Log Size" plugin configuration parameter.


Definition at line 97 of file app/framework/plugin/gbcs-device-log/gbcs-device-log.h

sl_zigbee_af_gbcs_device_log_remove#

bool sl_zigbee_af_gbcs_device_log_remove (sl_802154_long_addr_t deviceId)

Remove an entry from the GBCS Device Log.

Parameters
N/AdeviceId

The EUI64 of the device to be removed.

This function can be used to remove an entry within the GBCS Device Log.

Returns

  • True if successfully removed, false if the device is not currently in the GBCS Device Log.


Definition at line 109 of file app/framework/plugin/gbcs-device-log/gbcs-device-log.h

sl_zigbee_af_gbcs_device_log_get#

bool sl_zigbee_af_gbcs_device_log_get (sl_802154_long_addr_t deviceId, sl_zigbee_af_g_b_c_s_device_log_info_t * deviceInfo)

Get the device information about an entry in the GBCS Device Log.

Parameters
N/AdeviceId

The EUI64 of the device for which information is requested.

N/AdeviceInfo

This function can be used to retrieve information pertaining to a device in the GBCS Device Log. Note that if a single device implements two device types (i.e., comms hub implements both the CHF and GPF), only the first device found is returned.

Returns

  • True if device is in the device log, false otherwise. The contents of the deviceInfo structure will be populated when true is returned.


Definition at line 123 of file app/framework/plugin/gbcs-device-log/gbcs-device-log.h

sl_zigbee_af_gbcs_device_log_exists#

bool sl_zigbee_af_gbcs_device_log_exists (sl_802154_long_addr_t deviceId, sl_zigbee_af_g_b_c_s_device_type_t deviceType)

Check whether the given device exists within the GBCS Device Log.

Parameters
N/AdeviceId

The EUI64 of the device in question

N/AdeviceType

The device type of the device in question.

This function can be used to check if the given device and type exists within the GBCS Device Log.

Returns

  • True if device is in the device log, false otherwise.


Definition at line 136 of file app/framework/plugin/gbcs-device-log/gbcs-device-log.h

sl_zigbee_af_gbcs_device_log_print_entries#

void sl_zigbee_af_gbcs_device_log_print_entries (void )

Print all entries in the GBCS Device Log.

Parameters
N/A

Definition at line 142 of file app/framework/plugin/gbcs-device-log/gbcs-device-log.h

sl_zigbee_af_gbcs_device_log_retrieve_by_index#

bool sl_zigbee_af_gbcs_device_log_retrieve_by_index (uint8_t index, sl_802154_long_addr_t returnDeviceId, sl_zigbee_af_g_b_c_s_device_log_info_t * returnDeviceInfo)

Retrieve the device from the log at the specified index.

Parameters
N/Aindex

The absolute index into the device log.

N/AreturnDeviceId

A pointer where the EUI64 return data will be written.

N/AreturnDeviceInfo

A pointer where the device info return data will be written.

Returns

  • True if the index has a valid entry. false otherwise.


Definition at line 161 of file app/framework/plugin/gbcs-device-log/gbcs-device-log.h

sl_zigbee_af_gbcs_device_log_max_size#

uint8_t sl_zigbee_af_gbcs_device_log_max_size (void )
Parameters
N/A

@ brief Return the maximum size of the device log, including currently empty entries.

Returns

  • An uint8_t indicating the maximum size.


Definition at line 170 of file app/framework/plugin/gbcs-device-log/gbcs-device-log.h

sl_zigbee_af_gbcs_device_log_is_sleepy_type#

#define sl_zigbee_af_gbcs_device_log_is_sleepy_type
Value:
(deviceType)

Indicate whether the given device type is a sleepy device.

Returns

  • True if the deviceType is a sleepy device, false otherwise.


Definition at line 150 of file app/framework/plugin/gbcs-device-log/gbcs-device-log.h

Enumeration Documentation#

sl_zigbee_af_g_b_c_s_device_type_t#

sl_zigbee_af_g_b_c_s_device_type_t
Enumerator
SL_ZIGBEE_AF_GBCS_GSME_DEVICE_TYPE
SL_ZIGBEE_AF_GBCS_ESME_DEVICE_TYPE
SL_ZIGBEE_AF_GBCS_CHF_DEVICE_TYPE
SL_ZIGBEE_AF_GBCS_GPF_DEVICE_TYPE
SL_ZIGBEE_AF_GBCS_HCALCS_DEVICE_TYPE
SL_ZIGBEE_AF_GBCS_PPMID_DEVICE_TYPE
SL_ZIGBEE_AF_GBCS_TYPE2_DEVICE_TYPE

Definition at line 46 of file app/framework/plugin/gbcs-device-log/gbcs-device-log.h

Macro Definition Documentation#

sl_zigbee_af_gbcs_device_log_print#

#define sl_zigbee_af_gbcs_device_log_print
Value:
(...)

Definition at line 42 of file app/framework/plugin/gbcs-device-log/gbcs-device-log.h

sl_zigbee_af_gbcs_device_log_println#

#define sl_zigbee_af_gbcs_device_log_println
Value:
(...)

Definition at line 43 of file app/framework/plugin/gbcs-device-log/gbcs-device-log.h

sl_zigbee_af_gbcs_device_log_debug_exec#

#define sl_zigbee_af_gbcs_device_log_debug_exec
Value:
(x)

Definition at line 44 of file app/framework/plugin/gbcs-device-log/gbcs-device-log.h