class
Matter::DeviceType
- Matter::DeviceType
- Reference
- Object
Overview
Device type definitions from the Matter specification Each device type defines required and optional clusters
Defined in:
matter/device_type.crConstant Summary
-
AGGREGATOR =
14_u32 -
BASIC_VIDEO_PLAYER =
40_u32 -
Media Device Types
-
BRIDGED_NODE =
19_u32 -
CASTING_VIDEO_CLIENT =
41_u32 -
CASTING_VIDEO_PLAYER =
35_u32 -
COLOR_DIMMER_SWITCH =
261_u32 -
COLOR_TEMPERATURE_LIGHT =
268_u32 -
CONTACT_SENSOR =
21_u32 -
Sensor Device Types
-
CONTENT_APP =
36_u32 -
CONTROL_BRIDGE =
2112_u32 -
DIMMABLE_LIGHT =
257_u32 -
DIMMABLE_PLUG_IN_UNIT =
267_u32 -
DIMMER_SWITCH =
260_u32 -
DOOR_LOCK =
10_u32 -
Closure Device Types
-
DOOR_LOCK_CONTROLLER =
11_u32 -
EXTENDED_COLOR_LIGHT =
269_u32 -
FAN =
43_u32 -
FLOW_SENSOR =
774_u32 -
HEATING_COOLING_UNIT =
768_u32 -
HVAC Device Types
-
HUMIDITY_SENSOR =
775_u32 -
LIGHT_SENSOR =
262_u32 -
OCCUPANCY_SENSOR =
263_u32 -
ON_OFF_LIGHT =
256_u32 -
Lighting Device Types
-
ON_OFF_LIGHT_SWITCH =
259_u32 -
Switch Device Types
-
ON_OFF_PLUG_IN_UNIT =
266_u32 -
Smart Plug/Outlet Device Types
-
OTA_PROVIDER =
20_u32 -
OTA_REQUESTOR =
18_u32 -
POWER_SOURCE =
17_u32 -
PRESSURE_SENSOR =
773_u32 -
PUMP =
771_u32 -
PUMP_CONTROLLER =
772_u32 -
ROOT_NODE =
22_u32 -
Utility Device Types
-
SPEAKER =
34_u32 -
TEMPERATURE_SENSOR =
770_u32 -
THERMOSTAT =
769_u32 -
VIDEO_REMOTE_CONTROL =
42_u32 -
WINDOW_COVERING =
514_u32 -
WINDOW_COVERING_CONTROLLER =
515_u32
Constructors
- .contact_sensor : DeviceType
- .dimmable_light : DeviceType
- .dimmer_switch : DeviceType
- .door_lock : DeviceType
- .new(device_type_id : DataType::DeviceTypeId, name : String, revision : UInt16, required_server_clusters : Array(UInt32) = [] of UInt32, optional_server_clusters : Array(UInt32) = [] of UInt32)
- .on_off_light : DeviceType
- .on_off_light_switch : DeviceType
- .on_off_plug_in_unit : DeviceType
- .root_node : DeviceType
- .temperature_sensor : DeviceType
- .thermostat : DeviceType
Instance Method Summary
-
#allows_cluster?(cluster_id : UInt32) : Bool
Helper method to check if a cluster is allowed (required or optional)
- #device_type_id : DataType::DeviceTypeId
- #name : String
- #optional_server_clusters : Array(UInt32)
- #required_server_clusters : Array(UInt32)
-
#requires_cluster?(cluster_id : UInt32) : Bool
Helper method to check if a cluster is required
- #revision : UInt16
-
#supports_optional_cluster?(cluster_id : UInt32) : Bool
Helper method to check if a cluster is optional
Constructor Detail
def self.new(device_type_id : DataType::DeviceTypeId, name : String, revision : UInt16, required_server_clusters : Array(UInt32) = [] of UInt32, optional_server_clusters : Array(UInt32) = [] of UInt32)
#
Instance Method Detail
def allows_cluster?(cluster_id : UInt32) : Bool
#
Helper method to check if a cluster is allowed (required or optional)
def supports_optional_cluster?(cluster_id : UInt32) : Bool
#
Helper method to check if a cluster is optional