ZigBee Device Object#

See zigbee-device-stack.h for source code.

Functions#

sl_status_t
sl_zigbee_network_address_request(sl_802154_long_addr_t target, bool reportKids, uint8_t childStartIndex)

Request the 16 bit network address of a node whose EUI64 is known.

sl_status_t

Set the manufacturer code to the specified value. The manufacturer code is one of the fields of the node descriptor.

sl_status_t
sl_zigbee_ieee_address_request(sl_802154_short_addr_t target, bool reportKids, uint8_t childStartIndex, sl_zigbee_aps_option_t options)

Request the EUI64 of a node whose 16 bit network address is known.

sl_status_t
sl_zigbee_ieee_address_request_to_target(sl_802154_short_addr_t discoveryNodeId, bool reportKids, uint8_t childStartIndex, sl_zigbee_aps_option_t options, sl_802154_short_addr_t targetNodeIdOfRequest)
sl_status_t
sl_zigbee_energy_scan_request(sl_802154_short_addr_t target, uint32_t scanChannels, uint8_t scanDuration, uint16_t scanCount)

Request that an energy scan be performed and its results returned. This request may only be sent by the current network manager and must be unicast, not broadcast.

sl_status_t
sl_zigbee_set_network_manager_request(sl_802154_short_addr_t networkManager, uint32_t activeChannels)

Broadcast a request to set the identity of the network manager and the active channel mask. The mask is used when scanning for the network after missing a channel update.

sl_status_t

Broadcast a request to change the channel. This request may only be sent by the current network manager. A several second delay occurs from receipt of the broadcast to changing the channel to allow time for the broadcast to propagate.

sl_status_t

Send a broadcast for a ZDO Device announcement. Normally, it is NOT required to call this as the stack automatically sends a device announcement during joining or rejoining, as per the spec.

sl_status_t

Send a broadcast for a ZDO Parent Announcement. Normally, it is NOT required to call this as the stack automatically sends a Parent Announce when a Zigbee Router/Coordinator reboots, is in a joined or authenticated state, and has at least one device.

uint8_t

Provide access to the stack ZDO transaction sequence number for the last request.

Function Documentation#

sl_zigbee_network_address_request#

sl_status_t sl_zigbee_network_address_request (sl_802154_long_addr_t target, bool reportKids, uint8_t childStartIndex)

Request the 16 bit network address of a node whose EUI64 is known.

Parameters
N/Atarget

The EUI64 of the node.

N/AreportKids

True to request that the target list their children in the response.

N/AchildStartIndex

The index of the first child to list in the response. Ignored if reportKids is false.

Returns

  • An ::sl_status_t value.

    • ::SL_STATUS_OK - The request was transmitted successfully.

    • ::SL_STATUS_ALLOCATION_FAILED - Insufficient message buffers were available to construct the request.

    • ::SL_STATUS_NETWORK_DOWN - The node is not part of a network.

    • ::SL_STATUS_BUSY - Transmission of the request failed.


Definition at line 47 of file stack/include/zigbee-device-stack.h

sl_zigbee_set_manufacturer_code#

sl_status_t sl_zigbee_set_manufacturer_code (uint16_t code)

Set the manufacturer code to the specified value. The manufacturer code is one of the fields of the node descriptor.

Parameters
N/Acode

The manufacturer code for the local node.


Definition at line 56 of file stack/include/zigbee-device-stack.h

sl_zigbee_ieee_address_request#

sl_status_t sl_zigbee_ieee_address_request (sl_802154_short_addr_t target, bool reportKids, uint8_t childStartIndex, sl_zigbee_aps_option_t options)

Request the EUI64 of a node whose 16 bit network address is known.

Parameters
N/Atarget

The network address of the node.

N/AreportKids

True to request that the target list their children in the response.

N/AchildStartIndex

The index of the first child to list in the response. Ignored if reportKids is false.

N/Aoptions

The options to use when sending the request. See sl_zigbee_send_unicast() for a description.

Returns

  • An ::sl_status_t value.

    • ::SL_STATUS_OK

    • ::SL_STATUS_ALLOCATION_FAILED

    • ::SL_STATUS_NETWORK_DOWN

    • ::SL_STATUS_BUSY


Definition at line 74 of file stack/include/zigbee-device-stack.h

sl_zigbee_ieee_address_request_to_target#

sl_status_t sl_zigbee_ieee_address_request_to_target (sl_802154_short_addr_t discoveryNodeId, bool reportKids, uint8_t childStartIndex, sl_zigbee_aps_option_t options, sl_802154_short_addr_t targetNodeIdOfRequest)
Parameters
N/AdiscoveryNodeId
N/AreportKids
N/AchildStartIndex
N/Aoptions
N/AtargetNodeIdOfRequest

Definition at line 79 of file stack/include/zigbee-device-stack.h

sl_zigbee_energy_scan_request#

sl_status_t sl_zigbee_energy_scan_request (sl_802154_short_addr_t target, uint32_t scanChannels, uint8_t scanDuration, uint16_t scanCount)

Request that an energy scan be performed and its results returned. This request may only be sent by the current network manager and must be unicast, not broadcast.

Parameters
N/Atarget

The network address of the node to perform the scan.

N/AscanChannels

A mask of the channels to be scanned.

N/AscanDuration

How long to scan on each channel. Allowed values are 0..5, with the scan times as specified by 802.15.4 (0 = 31 ms, 1 = 46 ms, 2 = 77 ms, 3 = 138 ms, 4 = 261 ms, 5 = 507 ms).

N/AscanCount

The number of scans to be performed on each channel (1 .. 8).

Returns

  • An ::sl_status_t value.

    • ::SL_STATUS_OK

    • ::SL_STATUS_ALLOCATION_FAILED

    • ::SL_STATUS_NETWORK_DOWN

    • ::SL_STATUS_BUSY


Definition at line 104 of file stack/include/zigbee-device-stack.h

sl_zigbee_set_network_manager_request#

sl_status_t sl_zigbee_set_network_manager_request (sl_802154_short_addr_t networkManager, uint32_t activeChannels)

Broadcast a request to set the identity of the network manager and the active channel mask. The mask is used when scanning for the network after missing a channel update.

Parameters
N/AnetworkManager

The network address of the network manager.

N/AactiveChannels

The new active channel mask.

Returns

  • An ::sl_status_t value.

    • ::SL_STATUS_OK

    • ::SL_STATUS_ALLOCATION_FAILED

    • ::SL_STATUS_NETWORK_DOWN

    • ::SL_STATUS_BUSY


Definition at line 123 of file stack/include/zigbee-device-stack.h

sl_zigbee_channel_change_request#

sl_status_t sl_zigbee_channel_change_request (uint8_t channel)

Broadcast a request to change the channel. This request may only be sent by the current network manager. A several second delay occurs from receipt of the broadcast to changing the channel to allow time for the broadcast to propagate.

Parameters
N/Achannel

The channel to change to.

Returns

  • An ::sl_status_t value.

    • ::SL_STATUS_OK

    • ::SL_STATUS_ALLOCATION_FAILED

    • ::SL_STATUS_NETWORK_DOWN

    • ::SL_STATUS_BUSY


Definition at line 147 of file stack/include/zigbee-device-stack.h

sl_zigbee_send_device_announcement#

sl_status_t sl_zigbee_send_device_announcement (void )

Send a broadcast for a ZDO Device announcement. Normally, it is NOT required to call this as the stack automatically sends a device announcement during joining or rejoining, as per the spec.

Parameters
N/A

May be used to re-send the device announcement.

Returns

  • An ::sl_status_t value.

    • ::SL_STATUS_OK

    • ::SL_STATUS_INVALID_STATE


Definition at line 166 of file stack/include/zigbee-device-stack.h

sl_zigbee_send_parent_announcement#

sl_status_t sl_zigbee_send_parent_announcement (void )

Send a broadcast for a ZDO Parent Announcement. Normally, it is NOT required to call this as the stack automatically sends a Parent Announce when a Zigbee Router/Coordinator reboots, is in a joined or authenticated state, and has at least one device.

Parameters
N/A

May be used to re-send the parent announcement.

Returns

  • An ::sl_status_t value.

    • ::SL_STATUS_OK

    • ::SL_STATUS_INVALID_STATE


Definition at line 179 of file stack/include/zigbee-device-stack.h

sl_zigbee_get_last_stack_zig_dev_request_sequence#

uint8_t sl_zigbee_get_last_stack_zig_dev_request_sequence (void )

Provide access to the stack ZDO transaction sequence number for the last request.

Parameters
N/A

Returns

  • The last stack ZDO transaction sequence number used.


Definition at line 187 of file stack/include/zigbee-device-stack.h