View Source Grizzly.ZWave.DeviceClass (grizzly v8.5.3)
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.
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
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() }
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