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
HMCharacteristicTypeCurrentLightLevelHMCharacteristicTypeHueHMCharacteristicTypeBrightnessHMCharacteristicTypeSaturationHMCharacteristicTypeColorTemperature
Power and switches
HMCharacteristicTypeBatteryLevelHMCharacteristicTypeChargingStateHMCharacteristicTypeContactStateHMCharacteristicTypeOutletInUseHMCharacteristicTypePowerStateHMCharacteristicTypeStatusLowBatteryHMCharacteristicTypeOutputStateHMCharacteristicTypeInputEventHMCharacteristicTypePowerModeSelection
Temperature
HMCharacteristicTypeCurrentTemperatureHMCharacteristicTypeTargetTemperatureHMCharacteristicTypeTemperatureUnitsHMCharacteristicTypeTargetHeatingCoolingHMCharacteristicTypeCurrentHeatingCoolingHMCharacteristicTypeTargetHeaterCoolerStateHMCharacteristicTypeCurrentHeaterCoolerStateHMCharacteristicTypeCoolingThresholdHMCharacteristicTypeHeatingThreshold
Humidity
HMCharacteristicTypeCurrentRelativeHumidityHMCharacteristicTypeTargetRelativeHumidityHMCharacteristicTypeCurrentHumidifierDehumidifierStateHMCharacteristicTypeTargetHumidifierDehumidifierStateHMCharacteristicTypeHumidifierThresholdHMCharacteristicTypeDehumidifierThreshold
Air quality and smoke detection
HMCharacteristicTypeAirQualityHMCharacteristicTypeAirParticulateDensityHMCharacteristicTypeAirParticulateSizeHMCharacteristicTypeSmokeDetectedHMCharacteristicTypeCarbonDioxideDetectedHMCharacteristicTypeCarbonDioxideLevelHMCharacteristicTypeCarbonDioxidePeakLevelHMCharacteristicTypeCarbonMonoxideDetectedHMCharacteristicTypeCarbonMonoxideLevelHMCharacteristicTypeCarbonMonoxidePeakLevelHMCharacteristicTypeNitrogenDioxideDensityHMCharacteristicTypeOzoneDensityHMCharacteristicTypePM10DensityHMCharacteristicTypePM2_5DensityHMCharacteristicTypeSulphurDioxideDensityHMCharacteristicTypeVolatileOrganicCompoundDensity
Fans
HMCharacteristicTypeCurrentFanStateHMCharacteristicTypeTargetFanStateHMCharacteristicTypeRotationDirectionHMCharacteristicTypeRotationSpeedHMCharacteristicTypeSwingMode
Purifiers and filters
HMCharacteristicTypeCurrentAirPurifierStateHMCharacteristicTypeTargetAirPurifierStateHMCharacteristicTypeFilterLifeLevelHMCharacteristicTypeFilterChangeIndicationHMCharacteristicTypeFilterResetChangeIndication
Water
Doors and windows
HMCharacteristicTypeCurrentDoorStateHMCharacteristicTypeTargetDoorStateHMCharacteristicTypeCurrentPositionHMCharacteristicTypeTargetPositionHMCharacteristicTypePositionStateHMCharacteristicTypeStatusJammedHMCharacteristicTypeHoldPositionHMCharacteristicTypeSlatTypeHMCharacteristicTypeCurrentSlatState
Tilting mechanisms
HMCharacteristicTypeCurrentHorizontalTiltHMCharacteristicTypeTargetHorizontalTiltHMCharacteristicTypeCurrentVerticalTiltHMCharacteristicTypeTargetVerticalTiltHMCharacteristicTypeCurrentTiltHMCharacteristicTypeTargetTilt
Locks and openers
HMCharacteristicTypeLockManagementAutoSecureTimeoutHMCharacteristicTypeLockManagementControlPointHMCharacteristicTypeLockMechanismLastKnownActionHMCharacteristicTypeLockPhysicalControlsHMCharacteristicTypeMotionDetectedHMCharacteristicTypeCurrentLockMechanismStateHMCharacteristicTypeTargetLockMechanismStateHMCharacteristicTypeRemoteKey
Safety and security
HMCharacteristicTypeCurrentSecuritySystemStateHMCharacteristicTypeTargetSecuritySystemStateHMCharacteristicTypeObstructionDetectedHMCharacteristicTypeOccupancyDetectedHMCharacteristicTypeSecuritySystemAlarmTypeHMCharacteristicPropertyRequiresAuthorizationData
Audio and video
HMCharacteristicTypeSupportedRTPConfigurationHMCharacteristicTypeDigitalZoomHMCharacteristicTypeOpticalZoomHMCharacteristicTypeImageMirroringHMCharacteristicTypeImageRotationHMCharacteristicTypeNightVisionHMCharacteristicTypeStreamingStatusHMCharacteristicTypeSupportedVideoStreamConfigurationHMCharacteristicTypeSupportedAudioStreamConfigurationHMCharacteristicTypeSelectedStreamConfigurationHMCharacteristicTypeSetupStreamEndpointHMCharacteristicTypeAudioFeedbackHMCharacteristicTypeVolumeHMCharacteristicTypeMuteHMCharacteristicTypeVolumeSelectorHMCharacteristicTypeVolumeControlTypeHMCharacteristicTypeClosedCaptionsHMCharacteristicTypePictureMode
General state
HMCharacteristicTypeActiveHMCharacteristicTypeStatusTamperedHMCharacteristicTypeStatusFaultHMCharacteristicTypeStatusActiveHMCharacteristicTypeInUseHMCharacteristicTypeIsConfiguredHMCharacteristicTypeRemainingDurationHMCharacteristicTypeSetDurationHMCharacteristicTypeProgramModeHMCharacteristicTypeWiFiSatelliteStatusHMCharacteristicTypeWANStatusListHMCharacteristicTypeTargetMediaStateHMCharacteristicTypeRouterStatusHMCharacteristicTypeCurrentMediaStateHMCharacteristicTypeCurrentVisibilityStateHMCharacteristicTypeTargetVisibilityStateHMCharacteristicPropertySupportsEventNotification
Accessory identification
HMCharacteristicTypeNameHMCharacteristicTypeIdentifyHMCharacteristicTypeVersionHMCharacteristicTypeLogsHMCharacteristicTypeAdminOnlyAccessHMCharacteristicTypeHardwareVersionHMCharacteristicTypeSoftwareVersionHMCharacteristicTypeLabelIndexHMCharacteristicTypeLabelNamespaceHMCharacteristicTypeActiveIdentifierHMCharacteristicTypeIdentifierHMCharacteristicTypeInputDeviceTypeHMCharacteristicTypeInputSourceTypeHMCharacteristicTypeConfiguredName