class

Matter::Cluster::BasicInformationCluster

Inherits Matter::Cluster::Base < Reference < Object

Basic Information Cluster Implementation (0x0028) Provides attributes about the device hardware, software, and configuration

Required on endpoint 0 (root node).

Matter Spec: Core 11.1

Constants

ATTR_CAPABILITY_MINIMA = 19_u32
ATTR_DATA_MODEL_REVISION = 0_u32

Attribute IDs (using ATTR_ prefix for consistency)

ATTR_HARDWARE_VERSION = 7_u32
ATTR_HARDWARE_VERSION_STRING = 8_u32
ATTR_LOCAL_CONFIG_DISABLED = 16_u32
ATTR_LOCATION = 6_u32
ATTR_MANUFACTURING_DATE = 11_u32
ATTR_NODE_LABEL = 5_u32
ATTR_PART_NUMBER = 12_u32
ATTR_PRODUCT_APPEARANCE = 20_u32
ATTR_PRODUCT_ID = 4_u32
ATTR_PRODUCT_LABEL = 14_u32
ATTR_PRODUCT_NAME = 3_u32
ATTR_PRODUCT_URL = 13_u32
ATTR_REACHABLE = 17_u32
ATTR_SERIAL_NUMBER = 15_u32
ATTR_SOFTWARE_VERSION = 9_u32
ATTR_SOFTWARE_VERSION_STRING = 10_u32
ATTR_UNIQUE_ID = 18_u32
ATTR_VENDOR_ID = 2_u32
ATTR_VENDOR_NAME = 1_u32
CLUSTER_ID = 40_u32
EVENT_LEAVE = 2_u32
EVENT_REACHABLE_CHANGED = 3_u32
EVENT_SHUT_DOWN = 1_u32
EVENT_START_UP = 0_u32

Events

Constructors

new(endpoint_id : DataType::EndpointNumber, data_model_revision : UInt16 = 1_u16, vendor_name : String = "", vendor_id : UInt16 = 0_u16, product_name : String = "", product_id : UInt16 = 0_u16, node_label : String | Nil = nil, location : String = "XX", hardware_version : UInt16 = 0_u16, hardware_version_string : String = "1.0", software_version : UInt32 = 0_u32, software_version_string : String = "1.0.0", manufacturing_date : String = "", part_number : String = "", product_url : String = "", product_label : String | Nil = nil, serial_number : String = "", local_config_disabled : Bool = false, reachable : Bool = true, unique_id : String = "", capability_minima : CapabilityMinimaStruct = CapabilityMinimaStruct.new, product_appearance : ProductAppearanceStruct | Nil = nil)
Source

Class methods

cluster_id

Basic Information Cluster Implementation (0x0028) Provides attributes about the device hardware, software, and configuration

Required on endpoint 0 (root node).

Matter Spec: Core 11.1

Source

Instance methods

attributes

Get all attribute metadata

Source
capability_minima
Source
capability_minima=(capability_minima : CapabilityMinimaStruct)
Source
commands

Get all command metadata

Source
data_model_revision

Attribute storage - Required

Source
data_model_revision=(data_model_revision : UInt16)

Attribute storage - Required

Source
emit_leave_event(fabric_index : UInt8)

Helper: Trigger Leave event (call when leaving fabric)

Source
emit_reachable_changed_event(reachable_new_value : Bool)

Helper: Trigger ReachableChanged event (call when reachability changes)

Source
emit_shut_down_event

Helper: Trigger ShutDown event (call when node shuts down)

Source
emit_start_up_event(software_version : UInt32)

Helper: Trigger StartUp event (call when node boots)

Source
events

Get all event metadata

Source
hardware_version
Source
hardware_version=(hardware_version : UInt16)
Source
hardware_version_string
Source
hardware_version_string=(hardware_version_string : String)
Source
local_config_disabled=(local_config_disabled : Bool)
Source
local_config_disabled?
Source
location
Source
location=(location : String)
Source
manufacturing_date

Attribute storage - Optional

Source
manufacturing_date=(manufacturing_date : String)

Attribute storage - Optional

Source
name

Get cluster name

Source
node_label
Source
node_label=(node_label : String)
Source
part_number
Source
part_number=(part_number : String)
Source
product_appearance
Source
product_appearance=(product_appearance : ProductAppearanceStruct | Nil)
Source
product_id
Source
product_id=(product_id : UInt16)
Source
product_label
Source
product_label=(product_label : String)
Source
product_name
Source
product_name=(product_name : String)
Source
product_url
Source
product_url=(product_url : String)
Source
reachable=(reachable : Bool)
Source
reachable?
Source
read_attribute(attribute_id : UInt32, fabric_index : UInt8 | Nil = nil) : InteractionModel::Status | Bytes

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

Source
restore_state(json : String) : Nil

Restore cluster state from JSON. Override in subclasses that need to restore state. The json parameter is the string returned by save_state.

Source
save_state

Save cluster state to JSON for persistence. Override in subclasses that need to persist state (e.g., scenes, groups). Returns nil if no state needs to be persisted.

Source
serial_number
Source
serial_number=(serial_number : String)
Source
software_version
Source
software_version=(software_version : UInt32)
Source
software_version_string
Source
software_version_string=(software_version_string : String)
Source
unique_id
Source
unique_id=(unique_id : String)
Source
vendor_id
Source
vendor_id=(vendor_id : UInt16)
Source
vendor_name
Source
vendor_name=(vendor_name : String)
Source
write_attribute(attribute_id : UInt32, value : Bytes) : InteractionModel::Status

Write an attribute value

Source

Nested types