Characteristic Types

The characteristic types supported by HomeKit-based accessories.

Overview

A characteristic’s characteristicType is a string constant—typically containing one of the values listed below—that tells you what the characteristic’s value represents and how to interpret it. Manufacturers can also create custom types, not listed here.

For some characteristic types, HomeKit defines an enumeration of possible values that the corresponding characteristic can take. For example, a characteristic with type HMCharacteristicTypeTemperatureUnits can only have values—corresponding to degrees Fahrenheit or degrees Celsius—from the HMCharacteristicValueTemperatureUnit enumeration.

For other characteristic types, the corresponding value might be a plain number, a string, or Boolean, or a blob of data with encoding specific to that type.

Topics

Light

HMCharacteristicTypeHue

The hue of the color used by a light.

HMCharacteristicTypeBrightness

The brightness of a light.

HMCharacteristicTypeSaturation

The saturation of the color used by a light.

HMCharacteristicTypeColorTemperature

The color temperature of a light.

Power and Switches

HMCharacteristicTypeBatteryLevel

The battery level of the accessory.

HMCharacteristicTypeChargingState

The charging state of a battery.

HMCharacteristicTypeContactState

The state of a contact sensor.

HMCharacteristicTypeOutletInUse

The state of an outlet.

HMCharacteristicTypePowerState

The power state of the accessory.

HMCharacteristicTypeStatusLowBattery

A low battery indicator.

HMCharacteristicTypeOutputState

The output state of a programmable switch.

HMCharacteristicTypeInputEvent

The input event of a programmable switch.

Temperature

HMCharacteristicTypeCurrentTemperature

The current temperature measured by the accessory.

HMCharacteristicTypeTargetTemperature

The target temperature for the accessory to achieve.

HMCharacteristicTypeTemperatureUnits

The units of temperature currently active on the accessory.

HMCharacteristicTypeTargetHeatingCooling

The target heating or cooling mode for a thermostat.

HMCharacteristicTypeCurrentHeatingCooling

The current heating or cooling mode for a thermostat.

HMCharacteristicTypeTargetHeaterCoolerState

The target state for a device that heats or cools, like an oven or a refrigerator.

HMCharacteristicTypeCurrentHeaterCoolerState

The current state for a device that heats or cools, like an oven or a refrigerator.

HMCharacteristicTypeCoolingThreshold

The temperature above which cooling will be active.

HMCharacteristicTypeHeatingThreshold

The temperature below which heating will be active.

Humidity

HMCharacteristicTypeCurrentRelativeHumidity

The current relative humidity measured by the accessory.

HMCharacteristicTypeTargetRelativeHumidity

The target relative humidity for the accessory to achieve.

HMCharacteristicTypeCurrentHumidifierDehumidifierState

The current state of a humidifier or dehumidifier accessory.

HMCharacteristicTypeTargetHumidifierDehumidifierState

The state that a humidifier or dehumidifier accessory should try to achieve.

HMCharacteristicTypeHumidifierThreshold

The humidity below which a humidifier should begin to work.

HMCharacteristicTypeDehumidifierThreshold

The humidity above which a dehumidifier should begin to work.

Air Quality and Smoke Detection

HMCharacteristicTypeAirParticulateDensity

The density of air-particulate matter.

HMCharacteristicTypeAirParticulateSize

The size of the air-particulate matter.

HMCharacteristicTypeSmokeDetected

A smoke detection indicator.

HMCharacteristicTypeCarbonDioxideDetected

An indicator of abnormally high levels of carbon dioxide.

HMCharacteristicTypeCarbonDioxideLevel

The measured carbon dioxide level.

HMCharacteristicTypeCarbonDioxidePeakLevel

The highest recorded level of carbon dioxide.

HMCharacteristicTypeCarbonMonoxideDetected

An indicator of abnormally high levels of carbon monoxide.

HMCharacteristicTypeCarbonMonoxideLevel

The measured carbon monoxide level.

HMCharacteristicTypeCarbonMonoxidePeakLevel

The highest recorded level of carbon monoxide.

HMCharacteristicTypeNitrogenDioxideDensity

The measured density of nitrogen dioxide.

HMCharacteristicTypeOzoneDensity

The measured density of ozone.

HMCharacteristicTypePM10Density

The measured density of air-particulate matter of size 10 micrograms.

HMCharacteristicTypePM2_5Density

The measured density of air-particulate matter of size 2.5 micrograms.

HMCharacteristicTypeSulphurDioxideDensity

The measured density of sulphur dioxide.

HMCharacteristicTypeVolatileOrganicCompoundDensity

The measured density of volatile organic compounds.

Fans

HMCharacteristicTypeCurrentFanState

The current state of a fan.

HMCharacteristicTypeTargetFanState

The target state of a fan.

HMCharacteristicTypeRotationDirection

The rotation direction of an accessory like a fan.

HMCharacteristicTypeRotationSpeed

The rotation speed of an accessory like a fan.

HMCharacteristicTypeSwingMode

An indicator of whether a fan swings back and forth during operation.

Purifiers and Filters

HMCharacteristicTypeCurrentAirPurifierState

The current air purifier state.

HMCharacteristicTypeTargetAirPurifierState

The target air purifier state.

HMCharacteristicTypeFilterLifeLevel

The amount of useful life remaining in a filter.

HMCharacteristicTypeFilterChangeIndication

A filter’s change indicator.

HMCharacteristicTypeFilterResetChangeIndication

A reset control for a filter change notification.

Water

HMCharacteristicTypeWaterLevel

The water level measured by an accessory.

HMCharacteristicTypeValveType

The type of automated valve that controls fluid flow.

HMCharacteristicTypeLeakDetected

A leak detection indicator.

Doors and Windows

HMCharacteristicTypeCurrentPosition

The current position of a door, window, awning, or window covering.

HMCharacteristicTypeTargetPosition

The target position of a door, window, awning, or window covering.

HMCharacteristicTypePositionState

The position of an accessory like a door, window, awning, or window covering.

HMCharacteristicTypeStatusJammed

An indicator of whether an accessory is jammed.

HMCharacteristicTypeHoldPosition

A control for holding the position of an accessory like a door or window.

HMCharacteristicTypeSlatType

The type of slat on an accessory like a window or a fan.

HMCharacteristicTypeCurrentSlatState

The current state of slats on an accessory like a window or a fan.

Tilting Mechanisms

HMCharacteristicTypeCurrentHorizontalTilt

The current tilt angle of a horizontal slat for an accessory like a window or a fan.

HMCharacteristicTypeTargetHorizontalTilt

The target tilt angle of a horizontal slat for an accessory like a window or a fan.

HMCharacteristicTypeCurrentVerticalTilt

The current tilt angle of a vertical slat for an accessory like a window or a fan.

HMCharacteristicTypeTargetVerticalTilt

The target tilt angle of a vertical slat for an accessory like a window or a fan.

HMCharacteristicTypeCurrentTilt

The current tilt angle of a slat for an accessory like a window or a fan.

HMCharacteristicTypeTargetTilt

The target tilt angle of a slat for an accessory like a window or a fan.

Locks and Openers

HMCharacteristicTypeLockManagementAutoSecureTimeout

The automatic timeout for a lockable accessory that supports automatic lockout.

HMCharacteristicTypeLockManagementControlPoint

A control that accepts vendor-specific actions for lock management.

HMCharacteristicTypeLockMechanismLastKnownAction

The last known action of the locking mechanism.

HMCharacteristicTypeLockPhysicalControls

The lock’s physical control state.

HMCharacteristicTypeMotionDetected

An indicator of whether the accessory has detected motion.

HMCharacteristicTypeCurrentLockMechanismState

The current state of the locking mechanism.

HMCharacteristicTypeTargetLockMechanismState

The target state for the locking mechanism.

Safety and Security

HMCharacteristicTypeCurrentSecuritySystemState

The current security system state.

HMCharacteristicTypeTargetSecuritySystemState

The target security system state.

HMCharacteristicTypeObstructionDetected

An indicator of whether an obstruction is detected, as when something prevents a garage door from closing.

HMCharacteristicTypeOccupancyDetected

An indicator of whether the home is occupied.

Audio and Video

HMCharacteristicTypeSupportedRTPConfiguration

The supported Real-time Transport Protocol (RTP) configuration.

HMCharacteristicTypeDigitalZoom

The digital zoom of a video Real-time Transport Protocol (RTP) service.

HMCharacteristicTypeOpticalZoom

The optical zoom setting of the camera sourcing a video Real-time Transport Protocol (RTP) service.

HMCharacteristicTypeImageMirroring

An indicator of whether the image should be flipped about the vertical axis.

HMCharacteristicTypeImageRotation

The angle of rotation for an image.

HMCharacteristicTypeNightVision

An indicator of whether night vision is enabled on a video Real-time Transport Protocol (RTP) service.

HMCharacteristicTypeStreamingStatus

A description of the status of the Real-time Transport Protocol (RTP) stream management service.

HMCharacteristicTypeSelectedStreamConfiguration

The selected stream’s configuration.

HMCharacteristicTypeSetupStreamEndpoint

The stream's endpoint configuration.

HMCharacteristicTypeAudioFeedback

An indicator of whether audio feedback, like a beep or other external sound mechanism, is enabled.

HMCharacteristicTypeVolume

The input or output volume of an audio device.

HMCharacteristicTypeMute

A control for muting audio.

General State

HMCharacteristicTypeActive

The current status of an accessory.

HMCharacteristicTypeStatusTampered

An indicator of whether an accessory has been tampered with.

HMCharacteristicTypeStatusFault

An indicator of whether the accessory has experienced a fault.

HMCharacteristicTypeStatusActive

An indicator of whether the service is working.

HMCharacteristicTypeInUse

The current usage state of an accessory.

HMCharacteristicTypeIsConfigured

The configuration state of an accessory.

HMCharacteristicTypeRemainingDuration

The number of seconds remaining for the activity being carried out by the accessory.

HMCharacteristicTypeSetDuration

The duration of the activity being carried out by the accessory.

HMCharacteristicTypeProgramMode

The current mode of the accessory’s scheduled programs.

Accessory Identification

HMCharacteristicTypeName

The name of the accessory.

HMCharacteristicTypeIdentify

A control you can use to ask the accessory to identify itself.

HMCharacteristicTypeVersion

The version of the accessory.

HMCharacteristicTypeLogs

Log data for the accessory.

HMCharacteristicTypeAdminOnlyAccess

An indicator of whether the accessory accepts only administrator access.

HMCharacteristicTypeHardwareVersion

The hardware version of the accessory.

HMCharacteristicTypeSoftwareVersion

The software version of the accessory.

HMCharacteristicTypeLabelIndex

The index of the label for the service on an accessory with multiple instances of the same service.

HMCharacteristicTypeLabelNamespace

The naming schema used to label the services on an accessory with multiple services of the same type.

Deprecated Characteristic Types

HMCharacteristicTypeManufacturer

The manufacturer of the accessory.

Deprecated
HMCharacteristicTypeModel

The model of the accessory.

Deprecated
HMCharacteristicTypeFirmwareVersion

The firmware version of the accessory.

Deprecated
HMCharacteristicTypeSerialNumber

The serial number of the accessory.

Deprecated

See Also

Determining What a Characteristic Controls

characteristicType

The type of the characteristic.