class Matter::Cluster::WindowCoveringCluster

Overview

Window Covering Cluster Implementation (0x0102)

Provides control for various types of window coverings such as blinds, shades, curtains, etc.

Matter Specification: Core 1.4 § 5.3 - Window Covering Cluster

Features:

Defined in:

matter/cluster/window_covering_cluster.cr

Constant Summary

ATTR_CONFIG_STATUS = 7_u32
ATTR_CURRENT_POSITION_LIFT = 3_u32
ATTR_CURRENT_POSITION_LIFT_PERCENT100THS = 14_u32
ATTR_CURRENT_POSITION_LIFT_PERCENTAGE = 8_u32
ATTR_CURRENT_POSITION_TILT = 4_u32
ATTR_CURRENT_POSITION_TILT_PERCENT100THS = 15_u32
ATTR_CURRENT_POSITION_TILT_PERCENTAGE = 9_u32
ATTR_END_PRODUCT_TYPE = 13_u32
ATTR_INSTALLED_CLOSED_LIMIT_LIFT = 17_u32
ATTR_INSTALLED_CLOSED_LIMIT_TILT = 19_u32
ATTR_INSTALLED_OPEN_LIMIT_LIFT = 16_u32
ATTR_INSTALLED_OPEN_LIMIT_TILT = 18_u32
ATTR_MODE = 23_u32
ATTR_NUMBER_OF_ACTUATIONS_LIFT = 5_u32
ATTR_NUMBER_OF_ACTUATIONS_TILT = 6_u32
ATTR_OPERATIONAL_STATUS = 10_u32
ATTR_PHYSICAL_CLOSED_LIMIT_LIFT = 1_u32
ATTR_PHYSICAL_CLOSED_LIMIT_TILT = 2_u32
ATTR_SAFETY_STATUS = 26_u32
ATTR_TARGET_POSITION_LIFT_PERCENT100THS = 11_u32
ATTR_TARGET_POSITION_TILT_PERCENT100THS = 12_u32
ATTR_TYPE = 0_u32

Attribute IDs

CLUSTER_ID = 258_u32
CLUSTER_REVISION = 65533_u32

Global attributes

CMD_DOWN_OR_CLOSE = 1_u32
CMD_GO_TO_LIFT_PERCENTAGE = 5_u32
CMD_GO_TO_LIFT_VALUE = 4_u32
CMD_GO_TO_TILT_PERCENTAGE = 8_u32
CMD_GO_TO_TILT_VALUE = 7_u32
CMD_STOP_MOTION = 2_u32
CMD_UP_OR_OPEN = 0_u32

Command IDs

FEATURE_MAP = 65532_u32

Constructors

Class Method Summary

Instance Method Summary

Instance methods inherited from class Matter::Cluster::Base

attributes : Array(AttributeMetadata) attributes, cluster_id : DataType::ClusterId cluster_id, cluster_id=(cluster_id : DataType::ClusterId) cluster_id=, commands : Array(CommandMetadata) commands, data_version : UInt32 data_version, data_version=(data_version : UInt32) data_version=, endpoint_id : DataType::EndpointNumber endpoint_id, endpoint_id=(endpoint_id : DataType::EndpointNumber) endpoint_id=, events : Array(EventMetadata) events, get_attribute_metadata(attribute_id : UInt32) : AttributeMetadata | Nil get_attribute_metadata, get_command_metadata(command_id : UInt32) : CommandMetadata | Nil get_command_metadata, invoke_command(command_id : UInt32, fields : Bytes = Bytes.new(0), session_id : UInt64 | Nil = nil, is_case_session : Bool = false, fabric_index : UInt8 | Nil = nil) : InteractionModel::Status | CommandResponse invoke_command, name : String name, on_attribute_changed : Proc(UInt16, UInt32, UInt32, Nil) | Nil on_attribute_changed, on_attribute_changed=(on_attribute_changed : Proc(UInt16, UInt32, UInt32, Nil) | Nil) on_attribute_changed=, read_attribute(attribute_id : UInt32, fabric_index : UInt8 | Nil = nil) : InteractionModel::Status | Bytes read_attribute, write_attribute(attribute_id : UInt32, value : Bytes) : InteractionModel::Status write_attribute

Constructor methods inherited from class Matter::Cluster::Base

new(endpoint_id : DataType::EndpointNumber, cluster_id : DataType::ClusterId) new

Constructor Detail

def self.new(endpoint_id : DataType::EndpointNumber, feature_map : Feature = Feature::Lift | Feature::PositionAwareLift, covering_type : CoveringType = CoveringType::Rollershade, end_product_type : EndProductType = EndProductType::RollerShade) #

[View source]

Class Method Detail

def self.cluster_id #

Window Covering Cluster Implementation (0x0102)

Provides control for various types of window coverings such as blinds, shades, curtains, etc.

Matter Specification: Core 1.4 § 5.3 - Window Covering Cluster

Features:

  • Lift (LF): Supports lift/lower position control
  • Tilt (TL): Supports tilt control
  • PositionAwareLift (PA_LF): Supports precise lift positioning
  • AbsolutePosition (ABS): Supports absolute position control
  • PositionAwareTilt (PA_TL): Supports precise tilt positioning

[View source]

Instance Method Detail

def attributes : Array(AttributeMetadata) #
Description copied from class Matter::Cluster::Base

Get all attribute metadata


[View source]
def commands : Array(CommandMetadata) #
Description copied from class Matter::Cluster::Base

Get all command metadata


[View source]
def config_status : ConfigStatus #

[View source]
def config_status=(config_status : ConfigStatus) #

[View source]
def covering_type : CoveringType #

[View source]
def covering_type=(covering_type : CoveringType) #

[View source]
def current_position_lift_percent100ths : UInt16 | Nil #

[View source]
def current_position_lift_percent100ths=(current_position_lift_percent100ths : UInt16 | Nil) #

[View source]
def current_position_lift_percentage : UInt8 | Nil #

Lift properties


[View source]
def current_position_lift_percentage=(current_position_lift_percentage : UInt8 | Nil) #

Lift properties


[View source]
def current_position_tilt_percent100ths : UInt16 | Nil #

[View source]
def current_position_tilt_percent100ths=(current_position_tilt_percent100ths : UInt16 | Nil) #

[View source]
def current_position_tilt_percentage : UInt8 | Nil #

Tilt properties


[View source]
def current_position_tilt_percentage=(current_position_tilt_percentage : UInt8 | Nil) #

Tilt properties


[View source]
def end_product_type : EndProductType #

[View source]
def end_product_type=(end_product_type : EndProductType) #

[View source]
def feature_map : Feature #

[View source]
def feature_map=(feature_map : Feature) #

[View source]
def mode : Mode #

[View source]
def mode=(mode : Mode) #

[View source]
def name : String #
Description copied from class Matter::Cluster::Base

Get cluster name


[View source]
def number_of_actuations_lift : UInt16 | Nil #

[View source]
def number_of_actuations_lift=(number_of_actuations_lift : UInt16 | Nil) #

[View source]
def number_of_actuations_tilt : UInt16 | Nil #

[View source]
def number_of_actuations_tilt=(number_of_actuations_tilt : UInt16 | Nil) #

[View source]
def operational_status : OperationalStatus #

[View source]
def operational_status=(operational_status : OperationalStatus) #

[View source]
def read_attribute(attribute_id : UInt32, fabric_index : UInt8 | Nil = nil) : InteractionModel::Status | Bytes #
Description copied from class Matter::Cluster::Base

Read an attribute value The fabric_index parameter is optional and used for fabric-scoped attributes like CurrentFabricIndex in OperationalCredentialsCluster


[View source]
def safety_status : UInt16 | Nil #

Safety status


[View source]
def safety_status=(safety_status : UInt16 | Nil) #

Safety status


[View source]
def target_position_lift_percent100ths : UInt16 | Nil #

[View source]
def target_position_lift_percent100ths=(target_position_lift_percent100ths : UInt16 | Nil) #

[View source]
def target_position_tilt_percent100ths : UInt16 | Nil #

[View source]
def target_position_tilt_percent100ths=(target_position_tilt_percent100ths : UInt16 | Nil) #

[View source]
def write_attribute(attribute_id : UInt32, value : Bytes) : InteractionModel::Status #
Description copied from class Matter::Cluster::Base

Write an attribute value


[View source]