View Source Grizzly.ZWave.DeviceClass (grizzly v4.0.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()
  }
}
Link to this type

command_class_version()

View Source
@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

Link to this function

get_command_class_version(device_class, command_class)

View Source
@spec get_command_class_version(t(), Grizzly.ZWave.CommandClasses.command_class()) ::
  non_neg_integer() | nil

Get the command class version for the command class

Link to this function

has_command_class?(device_class, command_class)

View Source
@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