View Source Grizzly.ZWave.DeviceClass (grizzly v5.3.0)
Z-Wave device classes
Z-Wave device classes allow grouping devices with the same functionality together. Moreover, the device class specification for specific device classes provide mandatory and recommended command class support.
Link to this section Summary
Functions
Get the command class version for the command class
Check if the device class specification includes a particular command class
Device class spec for a generic multilevel sensor
A device class for a HVAC thermostat
Link to this section Types
@type command_class_spec() :: %{ support: %{ required(Grizzly.ZWave.CommandClasses.command_class()) => command_class_version() }, control: %{ required(Grizzly.ZWave.CommandClasses.command_class()) => command_class_version() } }
@type command_class_version() :: integer()
@type t() :: %{ basic_device_class: Grizzly.ZWave.DeviceClasses.basic_device_class(), generic_device_class: Grizzly.ZWave.DeviceClasses.generic_device_class(), specific_device_class: Grizzly.ZWave.DeviceClasses.specific_device_class(), command_classes: command_class_spec(), manufacturer_id: non_neg_integer(), product_id: non_neg_integer(), product_type_id: non_neg_integer(), library_type: Grizzly.ZWave.Commands.VersionReport.library_type() }
Link to this section Functions
@spec get_command_class_version(t(), Grizzly.ZWave.CommandClasses.command_class()) :: non_neg_integer() | nil
Get the command class version for the command class
@spec has_command_class?(t(), Grizzly.ZWave.CommandClasses.command_class()) :: boolean()
Check if the device class specification includes a particular command class
@spec multilevel_sensor() :: t()
Device class spec for a generic multilevel sensor
@spec thermostat_hvac() :: t()
A device class for a HVAC thermostat