OnOff

class st.zigbee.zcl.clusters.OnOff
ID: number

0x0006 the ID of this cluster

NAME: str

“OnOff” the name of this cluster

attributes: st.zigbee.zcl.clusters.OnOffServerAttributes or st.zigbee.zcl.clusters.OnOffClientAttributes
commands: st.zigbee.zcl.clusters.OnOffServerCommands or st.zigbee.zcl.clusters.OnOffClientCommands
types: st.zigbee.zcl.clusters.OnOffTypes

OnOff Attributes

class st.zigbee.zcl.clusters.OnOff.OnOff
ID: number

0x0000 the ID of this attribute

NAME: str

“OnOff” the name of this attribute

data_type: st.zigbee.data_types.Boolean

the data type of this attribute

augment_type(base_type_obj)
Parameters

base_type_obj (any) –

build_test_attr_report(device, data)

Build a Rx Zigbee message as if a device reported this attribute

Parameters
Returns

containing an AttributeReport body

Return type

st.zigbee.ZigbeeMessageRx

build_test_read_attr_response(device, data)

Build a Rx Zigbee message as if a device sent a read response for this attribute

Parameters
Returns

containing an ReadAttributeResponse body

Return type

st.zigbee.ZigbeeMessageRx

new_value(...)

Create a Boolean object of this attribute with any additional features provided for the attribute

This is also usable with the OnOff(…) syntax

Parameters

vararg (vararg) – the values needed to construct a Boolean

Return type

st.zigbee.data_types.Boolean

read(device)

Construct a st.zigbee.ZigbeeMessageTx to read this attribute from a device

Parameters

device (st.zigbee.Device) –

Returns

containing a ReadAttribute body

Return type

st.zigbee.ZigbeeMessageTx

configure_reporting(device, min_rep_int, max_rep_int)

Construct a st.zigbee.ZigbeeMessageTx to configure this attribute for reporting on a device

Parameters
  • device (st.zigbee.Device) –

  • min_rep_int (number or st.zigbee.data_types.Uint16) – the minimum interval allowed between reports of this attribute

  • max_rep_int (number or st.zigbee.data_types.Uint16) – the maximum interval allowed between reports of this attribute

Returns

containing a ConfigureReporting body

Return type

st.zigbee.ZigbeeMessageTx

set_parent_cluster(cluster)
Parameters

cluster (any) –

class st.zigbee.zcl.clusters.OnOff.GlobalSceneControl
ID: number

0x4000 the ID of this attribute

NAME: str

“GlobalSceneControl” the name of this attribute

data_type: st.zigbee.data_types.Boolean

the data type of this attribute

augment_type(base_type_obj)
Parameters

base_type_obj (any) –

build_test_attr_report(device, data)

Build a Rx Zigbee message as if a device reported this attribute

Parameters
Returns

containing an AttributeReport body

Return type

st.zigbee.ZigbeeMessageRx

build_test_read_attr_response(device, data)

Build a Rx Zigbee message as if a device sent a read response for this attribute

Parameters
Returns

containing an ReadAttributeResponse body

Return type

st.zigbee.ZigbeeMessageRx

new_value(...)

Create a Boolean object of this attribute with any additional features provided for the attribute

This is also usable with the GlobalSceneControl(…) syntax

Parameters

vararg (vararg) – the values needed to construct a Boolean

Return type

st.zigbee.data_types.Boolean

read(device)

Construct a st.zigbee.ZigbeeMessageTx to read this attribute from a device

Parameters

device (st.zigbee.Device) –

Returns

containing a ReadAttribute body

Return type

st.zigbee.ZigbeeMessageTx

configure_reporting(device, min_rep_int, max_rep_int)

Construct a st.zigbee.ZigbeeMessageTx to configure this attribute for reporting on a device

Parameters
  • device (st.zigbee.Device) –

  • min_rep_int (number or st.zigbee.data_types.Uint16) – the minimum interval allowed between reports of this attribute

  • max_rep_int (number or st.zigbee.data_types.Uint16) – the maximum interval allowed between reports of this attribute

Returns

containing a ConfigureReporting body

Return type

st.zigbee.ZigbeeMessageTx

set_parent_cluster(cluster)
Parameters

cluster (any) –

class st.zigbee.zcl.clusters.OnOff.OnTime
ID: number

0x4001 the ID of this attribute

NAME: str

“OnTime” the name of this attribute

data_type: st.zigbee.data_types.Uint16

the data type of this attribute

augment_type(base_type_obj)
Parameters

base_type_obj (any) –

build_test_attr_report(device, data)

Build a Rx Zigbee message as if a device reported this attribute

Parameters
Returns

containing an AttributeReport body

Return type

st.zigbee.ZigbeeMessageRx

build_test_read_attr_response(device, data)

Build a Rx Zigbee message as if a device sent a read response for this attribute

Parameters
Returns

containing an ReadAttributeResponse body

Return type

st.zigbee.ZigbeeMessageRx

new_value(...)

Create a Uint16 object of this attribute with any additional features provided for the attribute

This is also usable with the OnTime(…) syntax

Parameters

vararg (vararg) – the values needed to construct a Uint16

Return type

st.zigbee.data_types.Uint16

read(device)

Construct a st.zigbee.ZigbeeMessageTx to read this attribute from a device

Parameters

device (st.zigbee.Device) –

Returns

containing a ReadAttribute body

Return type

st.zigbee.ZigbeeMessageTx

configure_reporting(device, min_rep_int, max_rep_int, rep_change)

Construct a st.zigbee.ZigbeeMessageTx to configure this attribute for reporting on a device

Parameters
  • device (st.zigbee.Device) –

  • min_rep_int (number or st.zigbee.data_types.Uint16) – the minimum interval allowed between reports of this attribute

  • max_rep_int (number or st.zigbee.data_types.Uint16) – the maximum interval allowed between reports of this attribute

  • rep_change (st.zigbee.data_types.Uint16) – The amount of change of the attribute to trigger a report

Returns

containing a ConfigureReporting body

Return type

st.zigbee.ZigbeeMessageTx

write(device, value)

Write a value to this attribute on a device

Parameters
set_parent_cluster(cluster)
Parameters

cluster (any) –

class st.zigbee.zcl.clusters.OnOff.OffWaitTime
ID: number

0x4002 the ID of this attribute

NAME: str

“OffWaitTime” the name of this attribute

data_type: st.zigbee.data_types.Uint16

the data type of this attribute

augment_type(base_type_obj)
Parameters

base_type_obj (any) –

build_test_attr_report(device, data)

Build a Rx Zigbee message as if a device reported this attribute

Parameters
Returns

containing an AttributeReport body

Return type

st.zigbee.ZigbeeMessageRx

build_test_read_attr_response(device, data)

Build a Rx Zigbee message as if a device sent a read response for this attribute

Parameters
Returns

containing an ReadAttributeResponse body

Return type

st.zigbee.ZigbeeMessageRx

new_value(...)

Create a Uint16 object of this attribute with any additional features provided for the attribute

This is also usable with the OffWaitTime(…) syntax

Parameters

vararg (vararg) – the values needed to construct a Uint16

Return type

st.zigbee.data_types.Uint16

read(device)

Construct a st.zigbee.ZigbeeMessageTx to read this attribute from a device

Parameters

device (st.zigbee.Device) –

Returns

containing a ReadAttribute body

Return type

st.zigbee.ZigbeeMessageTx

configure_reporting(device, min_rep_int, max_rep_int, rep_change)

Construct a st.zigbee.ZigbeeMessageTx to configure this attribute for reporting on a device

Parameters
  • device (st.zigbee.Device) –

  • min_rep_int (number or st.zigbee.data_types.Uint16) – the minimum interval allowed between reports of this attribute

  • max_rep_int (number or st.zigbee.data_types.Uint16) – the maximum interval allowed between reports of this attribute

  • rep_change (st.zigbee.data_types.Uint16) – The amount of change of the attribute to trigger a report

Returns

containing a ConfigureReporting body

Return type

st.zigbee.ZigbeeMessageTx

write(device, value)

Write a value to this attribute on a device

Parameters
set_parent_cluster(cluster)
Parameters

cluster (any) –

class st.zigbee.zcl.clusters.OnOff.StartUpOnOff
ID: number

0x4003 the ID of this attribute

NAME: str

“StartUpOnOff” the name of this attribute

data_type: st.zigbee.data_types.Enum8

the data type of this attribute

SET_ON_OFF_TO0: number

0

SET_ON_OFF_TO1: number

1

TOGGLE_PREVIOUS_ON_OFF: number

2

SET_PREVIOUS_ON_OFF: number

255

augment_type(base_type_obj)

Add additional functionality to the base type object

Parameters

base_type_obj (st.zigbee.data_types.Enum8) – the base data type object to add functionality to

build_test_attr_report(device, data)

Build a Rx Zigbee message as if a device reported this attribute

Parameters
Returns

containing an AttributeReport body

Return type

st.zigbee.ZigbeeMessageRx

build_test_read_attr_response(device, data)

Build a Rx Zigbee message as if a device sent a read response for this attribute

Parameters
Returns

containing an ReadAttributeResponse body

Return type

st.zigbee.ZigbeeMessageRx

new_value(...)

Create a Enum8 object of this attribute with any additional features provided for the attribute

This is also usable with the StartUpOnOff(…) syntax

Parameters

vararg (vararg) – the values needed to construct a Enum8

Return type

st.zigbee.data_types.Enum8

read(device)

Construct a st.zigbee.ZigbeeMessageTx to read this attribute from a device

Parameters

device (st.zigbee.Device) –

Returns

containing a ReadAttribute body

Return type

st.zigbee.ZigbeeMessageTx

configure_reporting(device, min_rep_int, max_rep_int)

Construct a st.zigbee.ZigbeeMessageTx to configure this attribute for reporting on a device

Parameters
  • device (st.zigbee.Device) –

  • min_rep_int (number or st.zigbee.data_types.Uint16) – the minimum interval allowed between reports of this attribute

  • max_rep_int (number or st.zigbee.data_types.Uint16) – the maximum interval allowed between reports of this attribute

Returns

containing a ConfigureReporting body

Return type

st.zigbee.ZigbeeMessageTx

write(device, value)

Write a value to this attribute on a device

Parameters
set_parent_cluster(cluster)
Parameters

cluster (any) –

OnOff Commands

class st.zigbee.zcl.clusters.OnOff.Off
ID: number

0x00 the ID of this command

NAME: str

“Off” the name of this command

get_fields()
static deserialize(buf)

Deserialize this command

Parameters

buf (buf) – the bytes of the command body

Return type

Off

set_field_names()
static build_test_rx(device)

Build a version of this message as if it came from the device

Parameters

device (st.zigbee.Device) – the device to build the message from

Returns

The full Zigbee message containing this command body

Return type

st.zigbee.ZigbeeMessageRx

init(self, device)

Initialize the Off command

Parameters
  • self (Off) – the template class for this command

  • device (st.zigbee.Device) – the device to build this message to

Returns

the full command addressed to the device

Return type

st.zigbee.ZigbeeMessageTx

set_parent_cluster(cluster)
Parameters

cluster (any) –

class st.zigbee.zcl.clusters.OnOff.On
ID: number

0x01 the ID of this command

NAME: str

“On” the name of this command

get_fields()
static deserialize(buf)

Deserialize this command

Parameters

buf (buf) – the bytes of the command body

Return type

On

set_field_names()
static build_test_rx(device)

Build a version of this message as if it came from the device

Parameters

device (st.zigbee.Device) – the device to build the message from

Returns

The full Zigbee message containing this command body

Return type

st.zigbee.ZigbeeMessageRx

init(self, device)

Initialize the On command

Parameters
  • self (On) – the template class for this command

  • device (st.zigbee.Device) – the device to build this message to

Returns

the full command addressed to the device

Return type

st.zigbee.ZigbeeMessageTx

set_parent_cluster(cluster)
Parameters

cluster (any) –

class st.zigbee.zcl.clusters.OnOff.Toggle
ID: number

0x02 the ID of this command

NAME: str

“Toggle” the name of this command

get_fields()
static deserialize(buf)

Deserialize this command

Parameters

buf (buf) – the bytes of the command body

Return type

Toggle

set_field_names()
static build_test_rx(device)

Build a version of this message as if it came from the device

Parameters

device (st.zigbee.Device) – the device to build the message from

Returns

The full Zigbee message containing this command body

Return type

st.zigbee.ZigbeeMessageRx

init(self, device)

Initialize the Toggle command

Parameters
  • self (Toggle) – the template class for this command

  • device (st.zigbee.Device) – the device to build this message to

Returns

the full command addressed to the device

Return type

st.zigbee.ZigbeeMessageTx

set_parent_cluster(cluster)
Parameters

cluster (any) –

class st.zigbee.zcl.clusters.OnOff.OffWithEffect
ID: number

0x40 the ID of this command

NAME: str

“OffWithEffect” the name of this command

effect_identifier: st.zigbee.zcl.clusters.OnOff.types.EffectIdentifier
effect_variant: st.zigbee.data_types.Uint8
get_fields()
static deserialize(buf)

Deserialize this command

Parameters

buf (buf) – the bytes of the command body

Return type

OffWithEffect

set_field_names()
static build_test_rx(device, effect_identifier, effect_variant)

Build a version of this message as if it came from the device

Parameters
Returns

The full Zigbee message containing this command body

Return type

st.zigbee.ZigbeeMessageRx

init(self, device, effect_identifier, effect_variant)

Initialize the OffWithEffect command

Parameters
Returns

the full command addressed to the device

Return type

st.zigbee.ZigbeeMessageTx

set_parent_cluster(cluster)
Parameters

cluster (any) –

class st.zigbee.zcl.clusters.OnOff.OnWithRecallGlobalScene
ID: number

0x41 the ID of this command

NAME: str

“OnWithRecallGlobalScene” the name of this command

get_fields()
static deserialize(buf)

Deserialize this command

Parameters

buf (buf) – the bytes of the command body

Return type

OnWithRecallGlobalScene

set_field_names()
static build_test_rx(device)

Build a version of this message as if it came from the device

Parameters

device (st.zigbee.Device) – the device to build the message from

Returns

The full Zigbee message containing this command body

Return type

st.zigbee.ZigbeeMessageRx

init(self, device)

Initialize the OnWithRecallGlobalScene command

Parameters
  • self (OnWithRecallGlobalScene) – the template class for this command

  • device (st.zigbee.Device) – the device to build this message to

Returns

the full command addressed to the device

Return type

st.zigbee.ZigbeeMessageTx

set_parent_cluster(cluster)
Parameters

cluster (any) –

class st.zigbee.zcl.clusters.OnOff.OnWithTimedOff
ID: number

0x42 the ID of this command

NAME: str

“OnWithTimedOff” the name of this command

on_off_control: st.zigbee.zcl.clusters.OnOff.types.OnOffControl
on_time: st.zigbee.data_types.Uint16
off_wait_time: st.zigbee.data_types.Uint16
get_fields()
static deserialize(buf)

Deserialize this command

Parameters

buf (buf) – the bytes of the command body

Return type

OnWithTimedOff

set_field_names()
static build_test_rx(device, on_off_control, on_time, off_wait_time)

Build a version of this message as if it came from the device

Parameters
Returns

The full Zigbee message containing this command body

Return type

st.zigbee.ZigbeeMessageRx

init(self, device, on_off_control, on_time, off_wait_time)

Initialize the OnWithTimedOff command

Parameters
Returns

the full command addressed to the device

Return type

st.zigbee.ZigbeeMessageTx

set_parent_cluster(cluster)
Parameters

cluster (any) –

OnOff Types

class st.zigbee.zcl.clusters.OnOff.types.EffectIdentifier: st.zigbee.data_types.Uint8
byte_length: number

1

DELAYED_ALL_OFF: number

0

DYING_LIGHT: number

1

class st.zigbee.zcl.clusters.OnOff.types.OnOffControl: st.zigbee.data_types.Uint8
byte_length: number

1

ACCEPT_ONLY_WHEN_ON: number

1

is_accept_only_when_on_set()
Returns

True if the value of ACCEPT_ONLY_WHEN_ON is non-zero

Return type

boolean

set_accept_only_when_on()

Set the value of the bit in the ACCEPT_ONLY_WHEN_ON field to 1

unset_accept_only_when_on()

Set the value of the bits in the ACCEPT_ONLY_WHEN_ON field to 0