class

Matter::Cluster::PowerSourceCluster

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

Power Source Cluster (0x002F)

Provides attributes and events for determining detailed information about power sources present on a node, such as batteries or wired power.

Features:

  • Wired (WIRED): Wired power source
  • Battery (BAT): Battery power source
  • Rechargeable (RECHG): Rechargeable battery
  • Replaceable (REPLC): Replaceable battery

Note: Wired and Battery features are mutually exclusive.

Specification: Matter 1.4 § 11.7

Constants

ATTR_ACTIVE_BAT_CHARGE_FAULTS = 30_u32
ATTR_ACTIVE_BAT_FAULTS = 18_u32
ATTR_ACTIVE_WIRED_FAULTS = 10_u32
ATTR_BAT_ANSI_DESIGNATION = 21_u32
ATTR_BAT_APPROVED_CHEMISTRY = 23_u32
ATTR_BAT_CAPACITY = 24_u32
ATTR_BAT_CHARGE_LEVEL = 14_u32
ATTR_BAT_CHARGE_STATE = 26_u32

Rechargeable Feature Attributes

ATTR_BAT_CHARGING_CURRENT = 29_u32
ATTR_BAT_COMMON_DESIGNATION = 20_u32
ATTR_BAT_FUNCTIONAL_WHILE_CHARGING = 28_u32
ATTR_BAT_IEC_DESIGNATION = 22_u32
ATTR_BAT_PERCENT_REMAINING = 12_u32
ATTR_BAT_PRESENT = 17_u32
ATTR_BAT_QUANTITY = 25_u32
ATTR_BAT_REPLACEABILITY = 16_u32
ATTR_BAT_REPLACEMENT_DESCRIPTION = 19_u32

Replaceable Feature Attributes

ATTR_BAT_REPLACEMENT_NEEDED = 15_u32
ATTR_BAT_TIME_REMAINING = 13_u32
ATTR_BAT_TIME_TO_FULL_CHARGE = 27_u32
ATTR_BAT_VOLTAGE = 11_u32

Battery Feature Attributes

ATTR_DESCRIPTION = 2_u32
ATTR_ORDER = 1_u32
ATTR_STATUS = 0_u32

Base Attributes

ATTR_WIRED_ASSESSED_CURRENT = 6_u32
ATTR_WIRED_ASSESSED_INPUT_FREQUENCY = 4_u32
ATTR_WIRED_ASSESSED_INPUT_VOLTAGE = 3_u32

Wired Feature Attributes

ATTR_WIRED_CURRENT_TYPE = 5_u32
ATTR_WIRED_MAXIMUM_CURRENT = 8_u32
ATTR_WIRED_NOMINAL_VOLTAGE = 7_u32
ATTR_WIRED_PRESENT = 9_u32
CLUSTER_ID = 47_u32

Constructors

new(endpoint_id : DataType::EndpointNumber, feature_map : Feature = Feature::Battery, status : PowerSourceStatus = PowerSourceStatus::Active, order : UInt8 = 0_u8, description : String = "Battery", wired_assessed_input_voltage : UInt32 | Nil = nil, wired_assessed_input_frequency : UInt16 | Nil = nil, wired_current_type : WiredCurrentType | Nil = nil, wired_assessed_current : UInt32 | Nil = nil, wired_nominal_voltage : UInt32 | Nil = nil, wired_maximum_current : UInt32 | Nil = nil, wired_present : Bool | Nil = nil, bat_voltage : UInt32 | Nil = nil, bat_percent_remaining : UInt8 | Nil = nil, bat_time_remaining : UInt32 | Nil = nil, bat_charge_level : BatChargeLevel | Nil = nil, bat_replacement_needed : Bool | Nil = nil, bat_replaceability : BatReplaceability | Nil = nil, bat_present : Bool | Nil = nil, bat_replacement_description : String | Nil = nil, bat_quantity : UInt8 | Nil = nil, bat_charge_state : BatChargeState | Nil = nil, bat_time_to_full_charge : UInt32 | Nil = nil, bat_functional_while_charging : Bool | Nil = nil, bat_charging_current : UInt32 | Nil = nil)
Source

Class methods

cluster_id

Power Source Cluster (0x002F)

Provides attributes and events for determining detailed information about power sources present on a node, such as batteries or wired power.

Features:

  • Wired (WIRED): Wired power source
  • Battery (BAT): Battery power source
  • Rechargeable (RECHG): Rechargeable battery
  • Replaceable (REPLC): Replaceable battery

Note: Wired and Battery features are mutually exclusive.

Specification: Matter 1.4 § 11.7

Source

Instance methods

attributes

Get all attribute metadata

Source
bat_charge_level
Source
bat_charge_level=(bat_charge_level : BatChargeLevel | Nil)
Source
bat_charge_state

Rechargeable feature attributes

Source
bat_charge_state=(bat_charge_state : BatChargeState | Nil)

Rechargeable feature attributes

Source
bat_charging_current
Source
bat_charging_current=(bat_charging_current : UInt32 | Nil)
Source
bat_functional_while_charging
Source
bat_functional_while_charging=(bat_functional_while_charging : Bool | Nil)
Source
bat_percent_remaining
Source
bat_percent_remaining=(bat_percent_remaining : UInt8 | Nil)
Source
bat_present
Source
bat_present=(bat_present : Bool | Nil)
Source
bat_quantity
Source
bat_quantity=(bat_quantity : UInt8 | Nil)
Source
bat_replaceability
Source
bat_replaceability=(bat_replaceability : BatReplaceability | Nil)
Source
bat_replacement_description

Replaceable feature attributes

Source
bat_replacement_description=(bat_replacement_description : String | Nil)

Replaceable feature attributes

Source
bat_replacement_needed
Source
bat_replacement_needed=(bat_replacement_needed : Bool | Nil)
Source
bat_time_remaining
Source
bat_time_remaining=(bat_time_remaining : UInt32 | Nil)
Source
bat_time_to_full_charge
Source
bat_time_to_full_charge=(bat_time_to_full_charge : UInt32 | Nil)
Source
bat_voltage

Battery feature attributes

Source
bat_voltage=(bat_voltage : UInt32 | Nil)

Battery feature attributes

Source
battery_feature_enabled?

Check if Battery feature is enabled (for backward compatibility)

Source
commands

Get all command metadata

Source
description
Source
description=(description : String)
Source
feature_map

Feature map

Source
feature_map=(feature_map : Feature)

Feature map

Source
name

Get cluster name

Source
on_charge_level_changed
Source
on_replacement_needed_changed
Source
order
Source
order=(order : UInt8)
Source
read_attribute(attribute_id : UInt32, fabric_index : UInt8 | Nil = nil) : Bytes | InteractionModel::Status

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

Source
replaceable_feature_enabled?

Check if Replaceable feature is enabled (for backward compatibility)

Source
status

Base attributes

Source
status=(status : PowerSourceStatus)

Base attributes

Source
update_bat_charge_level(level : BatChargeLevel)

Update battery charge level

Source
update_bat_percent_remaining(value : UInt8 | Nil)

Update the remaining battery percentage (0-200 half-percent units, nil = unknown) and report the change to subscribed controllers.

Source
update_bat_replacement_needed(needed : Bool)

Update battery replacement needed status

Source
wired_assessed_current
Source
wired_assessed_current=(wired_assessed_current : UInt32 | Nil)
Source
wired_assessed_input_frequency
Source
wired_assessed_input_frequency=(wired_assessed_input_frequency : UInt16 | Nil)
Source
wired_assessed_input_voltage

Wired feature attributes

Source
wired_assessed_input_voltage=(wired_assessed_input_voltage : UInt32 | Nil)

Wired feature attributes

Source
wired_current_type
Source
wired_current_type=(wired_current_type : WiredCurrentType | Nil)
Source
wired_maximum_current
Source
wired_maximum_current=(wired_maximum_current : UInt32 | Nil)
Source
wired_nominal_voltage
Source
wired_nominal_voltage=(wired_nominal_voltage : UInt32 | Nil)
Source
wired_present
Source
wired_present=(wired_present : Bool | Nil)
Source

Nested types