class Matter::Cluster::EthernetNetworkDiagnosticsCluster

Overview

Ethernet Network Diagnostics Cluster (0x0037)

Provides Ethernet network diagnostic information. Required by Apple Home for Ethernet-connected accessories.

Matter Spec: Core 11.15

Defined in:

matter/cluster/ethernet_network_diagnostics_cluster.cr

Constant Summary

ACCEPTED_COMMAND_LIST = 65529_u32
ATTR_CARRIER_DETECT = 7_u32
ATTR_COLLISION_COUNT = 5_u32
ATTR_FULL_DUPLEX = 1_u32
ATTR_OVERRUN_COUNT = 6_u32
ATTR_PACKET_RX_COUNT = 2_u32
ATTR_PACKET_TX_COUNT = 3_u32
ATTR_PHY_RATE = 0_u32

Attribute IDs

ATTR_TIME_SINCE_RESET = 8_u32
ATTR_TX_ERR_COUNT = 4_u32
ATTRIBUTE_LIST = 65531_u32
CLUSTER_ID = 55_u32
CLUSTER_REVISION = 65533_u32

Global attributes

CMD_RESET_COUNTS = 0_u32

Command IDs

FEATURE_MAP = 65532_u32
GENERATED_COMMAND_LIST = 65528_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, phy_rate : PHYRateEnum | Nil = PHYRateEnum::Rate1G, full_duplex : Bool | Nil = true, feature_map : Feature = Feature::PacketCounts | Feature::ErrorCounts) #

[View source]

Class Method Detail

def self.cluster_id : UInt32 #

Ethernet Network Diagnostics Cluster (0x0037)

Provides Ethernet network diagnostic information. Required by Apple Home for Ethernet-connected accessories.

Matter Spec: Core 11.15


[View source]

Instance Method Detail

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

Get all attribute metadata


[View source]
def carrier_detect : Bool | Nil #

[View source]
def carrier_detect=(carrier_detect : Bool | Nil) #

[View source]
def collision_count : UInt64 #

[View source]
def collision_count=(collision_count : UInt64) #

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

Get all command metadata


[View source]
def feature_map : Feature #

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

[View source]
def full_duplex : Bool | Nil #

[View source]
def full_duplex=(full_duplex : Bool | Nil) #

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

Get cluster name


[View source]
def overrun_count : UInt64 #

[View source]
def overrun_count=(overrun_count : UInt64) #

[View source]
def packet_rx_count : UInt64 #

[View source]
def packet_rx_count=(packet_rx_count : UInt64) #

[View source]
def packet_tx_count : UInt64 #

[View source]
def packet_tx_count=(packet_tx_count : UInt64) #

[View source]
def phy_rate : PHYRateEnum | Nil #

Attribute values


[View source]
def phy_rate=(phy_rate : PHYRateEnum | Nil) #

Attribute values


[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 record_collision #

[View source]
def record_overrun #

[View source]
def record_rx_packet #

Public API: Increment packet counts


[View source]
def record_tx_error #

[View source]
def record_tx_packet #

[View source]
def tx_err_count : UInt64 #

[View source]
def tx_err_count=(tx_err_count : UInt64) #

[View source]