---
title: Characteristic types
framework: homekit
role: collectionGroup
role_heading: API Collection
path: homekit/characteristic-types
---

# Characteristic types

The characteristic types supported by HomeKit-based accessories.

## Overview

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

- [HMCharacteristicTypeCurrentLightLevel](homekit/hmcharacteristictypecurrentlightlevel.md)
- [HMCharacteristicTypeHue](homekit/hmcharacteristictypehue.md)
- [HMCharacteristicTypeBrightness](homekit/hmcharacteristictypebrightness.md)
- [HMCharacteristicTypeSaturation](homekit/hmcharacteristictypesaturation.md)
- [HMCharacteristicTypeColorTemperature](homekit/hmcharacteristictypecolortemperature.md)

### Power and switches

- [HMCharacteristicTypeBatteryLevel](homekit/hmcharacteristictypebatterylevel.md)
- [HMCharacteristicTypeChargingState](homekit/hmcharacteristictypechargingstate.md)
- [HMCharacteristicTypeContactState](homekit/hmcharacteristictypecontactstate.md)
- [HMCharacteristicTypeOutletInUse](homekit/hmcharacteristictypeoutletinuse.md)
- [HMCharacteristicTypePowerState](homekit/hmcharacteristictypepowerstate.md)
- [HMCharacteristicTypeStatusLowBattery](homekit/hmcharacteristictypestatuslowbattery.md)
- [HMCharacteristicTypeOutputState](homekit/hmcharacteristictypeoutputstate.md)
- [HMCharacteristicTypeInputEvent](homekit/hmcharacteristictypeinputevent.md)
- [HMCharacteristicTypePowerModeSelection](homekit/hmcharacteristictypepowermodeselection.md)

### Temperature

- [HMCharacteristicTypeCurrentTemperature](homekit/hmcharacteristictypecurrenttemperature.md)
- [HMCharacteristicTypeTargetTemperature](homekit/hmcharacteristictypetargettemperature.md)
- [HMCharacteristicTypeTemperatureUnits](homekit/hmcharacteristictypetemperatureunits.md)
- [HMCharacteristicTypeTargetHeatingCooling](homekit/hmcharacteristictypetargetheatingcooling.md)
- [HMCharacteristicTypeCurrentHeatingCooling](homekit/hmcharacteristictypecurrentheatingcooling.md)
- [HMCharacteristicTypeTargetHeaterCoolerState](homekit/hmcharacteristictypetargetheatercoolerstate.md)
- [HMCharacteristicTypeCurrentHeaterCoolerState](homekit/hmcharacteristictypecurrentheatercoolerstate.md)
- [HMCharacteristicTypeCoolingThreshold](homekit/hmcharacteristictypecoolingthreshold.md)
- [HMCharacteristicTypeHeatingThreshold](homekit/hmcharacteristictypeheatingthreshold.md)

### Humidity

- [HMCharacteristicTypeCurrentRelativeHumidity](homekit/hmcharacteristictypecurrentrelativehumidity.md)
- [HMCharacteristicTypeTargetRelativeHumidity](homekit/hmcharacteristictypetargetrelativehumidity.md)
- [HMCharacteristicTypeCurrentHumidifierDehumidifierState](homekit/hmcharacteristictypecurrenthumidifierdehumidifierstate.md)
- [HMCharacteristicTypeTargetHumidifierDehumidifierState](homekit/hmcharacteristictypetargethumidifierdehumidifierstate.md)
- [HMCharacteristicTypeHumidifierThreshold](homekit/hmcharacteristictypehumidifierthreshold.md)
- [HMCharacteristicTypeDehumidifierThreshold](homekit/hmcharacteristictypedehumidifierthreshold.md)

### Air quality and smoke detection

- [HMCharacteristicTypeAirQuality](homekit/hmcharacteristictypeairquality.md)
- [HMCharacteristicTypeAirParticulateDensity](homekit/hmcharacteristictypeairparticulatedensity.md)
- [HMCharacteristicTypeAirParticulateSize](homekit/hmcharacteristictypeairparticulatesize.md)
- [HMCharacteristicTypeSmokeDetected](homekit/hmcharacteristictypesmokedetected.md)
- [HMCharacteristicTypeCarbonDioxideDetected](homekit/hmcharacteristictypecarbondioxidedetected.md)
- [HMCharacteristicTypeCarbonDioxideLevel](homekit/hmcharacteristictypecarbondioxidelevel.md)
- [HMCharacteristicTypeCarbonDioxidePeakLevel](homekit/hmcharacteristictypecarbondioxidepeaklevel.md)
- [HMCharacteristicTypeCarbonMonoxideDetected](homekit/hmcharacteristictypecarbonmonoxidedetected.md)
- [HMCharacteristicTypeCarbonMonoxideLevel](homekit/hmcharacteristictypecarbonmonoxidelevel.md)
- [HMCharacteristicTypeCarbonMonoxidePeakLevel](homekit/hmcharacteristictypecarbonmonoxidepeaklevel.md)
- [HMCharacteristicTypeNitrogenDioxideDensity](homekit/hmcharacteristictypenitrogendioxidedensity.md)
- [HMCharacteristicTypeOzoneDensity](homekit/hmcharacteristictypeozonedensity.md)
- [HMCharacteristicTypePM10Density](homekit/hmcharacteristictypepm10density.md)
- [HMCharacteristicTypePM2_5Density](homekit/hmcharacteristictypepm2_5density.md)
- [HMCharacteristicTypeSulphurDioxideDensity](homekit/hmcharacteristictypesulphurdioxidedensity.md)
- [HMCharacteristicTypeVolatileOrganicCompoundDensity](homekit/hmcharacteristictypevolatileorganiccompounddensity.md)

### Fans

- [HMCharacteristicTypeCurrentFanState](homekit/hmcharacteristictypecurrentfanstate.md)
- [HMCharacteristicTypeTargetFanState](homekit/hmcharacteristictypetargetfanstate.md)
- [HMCharacteristicTypeRotationDirection](homekit/hmcharacteristictyperotationdirection.md)
- [HMCharacteristicTypeRotationSpeed](homekit/hmcharacteristictyperotationspeed.md)
- [HMCharacteristicTypeSwingMode](homekit/hmcharacteristictypeswingmode.md)

### Purifiers and filters

- [HMCharacteristicTypeCurrentAirPurifierState](homekit/hmcharacteristictypecurrentairpurifierstate.md)
- [HMCharacteristicTypeTargetAirPurifierState](homekit/hmcharacteristictypetargetairpurifierstate.md)
- [HMCharacteristicTypeFilterLifeLevel](homekit/hmcharacteristictypefilterlifelevel.md)
- [HMCharacteristicTypeFilterChangeIndication](homekit/hmcharacteristictypefilterchangeindication.md)
- [HMCharacteristicTypeFilterResetChangeIndication](homekit/hmcharacteristictypefilterresetchangeindication.md)

### Water

- [HMCharacteristicTypeWaterLevel](homekit/hmcharacteristictypewaterlevel.md)
- [HMCharacteristicTypeValveType](homekit/hmcharacteristictypevalvetype.md)
- [HMCharacteristicTypeLeakDetected](homekit/hmcharacteristictypeleakdetected.md)

### Doors and windows

- [HMCharacteristicTypeCurrentDoorState](homekit/hmcharacteristictypecurrentdoorstate.md)
- [HMCharacteristicTypeTargetDoorState](homekit/hmcharacteristictypetargetdoorstate.md)
- [HMCharacteristicTypeCurrentPosition](homekit/hmcharacteristictypecurrentposition.md)
- [HMCharacteristicTypeTargetPosition](homekit/hmcharacteristictypetargetposition.md)
- [HMCharacteristicTypePositionState](homekit/hmcharacteristictypepositionstate.md)
- [HMCharacteristicTypeStatusJammed](homekit/hmcharacteristictypestatusjammed.md)
- [HMCharacteristicTypeHoldPosition](homekit/hmcharacteristictypeholdposition.md)
- [HMCharacteristicTypeSlatType](homekit/hmcharacteristictypeslattype.md)
- [HMCharacteristicTypeCurrentSlatState](homekit/hmcharacteristictypecurrentslatstate.md)

### Tilting mechanisms

- [HMCharacteristicTypeCurrentHorizontalTilt](homekit/hmcharacteristictypecurrenthorizontaltilt.md)
- [HMCharacteristicTypeTargetHorizontalTilt](homekit/hmcharacteristictypetargethorizontaltilt.md)
- [HMCharacteristicTypeCurrentVerticalTilt](homekit/hmcharacteristictypecurrentverticaltilt.md)
- [HMCharacteristicTypeTargetVerticalTilt](homekit/hmcharacteristictypetargetverticaltilt.md)
- [HMCharacteristicTypeCurrentTilt](homekit/hmcharacteristictypecurrenttilt.md)
- [HMCharacteristicTypeTargetTilt](homekit/hmcharacteristictypetargettilt.md)

### Locks and openers

- [HMCharacteristicTypeLockManagementAutoSecureTimeout](homekit/hmcharacteristictypelockmanagementautosecuretimeout.md)
- [HMCharacteristicTypeLockManagementControlPoint](homekit/hmcharacteristictypelockmanagementcontrolpoint.md)
- [HMCharacteristicTypeLockMechanismLastKnownAction](homekit/hmcharacteristictypelockmechanismlastknownaction.md)
- [HMCharacteristicTypeLockPhysicalControls](homekit/hmcharacteristictypelockphysicalcontrols.md)
- [HMCharacteristicTypeMotionDetected](homekit/hmcharacteristictypemotiondetected.md)
- [HMCharacteristicTypeCurrentLockMechanismState](homekit/hmcharacteristictypecurrentlockmechanismstate.md)
- [HMCharacteristicTypeTargetLockMechanismState](homekit/hmcharacteristictypetargetlockmechanismstate.md)
- [HMCharacteristicTypeRemoteKey](homekit/hmcharacteristictyperemotekey.md)

### Safety and security

- [HMCharacteristicTypeCurrentSecuritySystemState](homekit/hmcharacteristictypecurrentsecuritysystemstate.md)
- [HMCharacteristicTypeTargetSecuritySystemState](homekit/hmcharacteristictypetargetsecuritysystemstate.md)
- [HMCharacteristicTypeObstructionDetected](homekit/hmcharacteristictypeobstructiondetected.md)
- [HMCharacteristicTypeOccupancyDetected](homekit/hmcharacteristictypeoccupancydetected.md)
- [HMCharacteristicTypeSecuritySystemAlarmType](homekit/hmcharacteristictypesecuritysystemalarmtype.md)
- [HMCharacteristicPropertyRequiresAuthorizationData](homekit/hmcharacteristicpropertyrequiresauthorizationdata.md)

### Audio and video

- [HMCharacteristicTypeSupportedRTPConfiguration](homekit/hmcharacteristictypesupportedrtpconfiguration.md)
- [HMCharacteristicTypeDigitalZoom](homekit/hmcharacteristictypedigitalzoom.md)
- [HMCharacteristicTypeOpticalZoom](homekit/hmcharacteristictypeopticalzoom.md)
- [HMCharacteristicTypeImageMirroring](homekit/hmcharacteristictypeimagemirroring.md)
- [HMCharacteristicTypeImageRotation](homekit/hmcharacteristictypeimagerotation.md)
- [HMCharacteristicTypeNightVision](homekit/hmcharacteristictypenightvision.md)
- [HMCharacteristicTypeStreamingStatus](homekit/hmcharacteristictypestreamingstatus.md)
- [HMCharacteristicTypeSupportedVideoStreamConfiguration](homekit/hmcharacteristictypesupportedvideostreamconfiguration.md)
- [HMCharacteristicTypeSupportedAudioStreamConfiguration](homekit/hmcharacteristictypesupportedaudiostreamconfiguration.md)
- [HMCharacteristicTypeSelectedStreamConfiguration](homekit/hmcharacteristictypeselectedstreamconfiguration.md)
- [HMCharacteristicTypeSetupStreamEndpoint](homekit/hmcharacteristictypesetupstreamendpoint.md)
- [HMCharacteristicTypeAudioFeedback](homekit/hmcharacteristictypeaudiofeedback.md)
- [HMCharacteristicTypeVolume](homekit/hmcharacteristictypevolume.md)
- [HMCharacteristicTypeMute](homekit/hmcharacteristictypemute.md)
- [HMCharacteristicTypeVolumeSelector](homekit/hmcharacteristictypevolumeselector.md)
- [HMCharacteristicTypeVolumeControlType](homekit/hmcharacteristictypevolumecontroltype.md)
- [HMCharacteristicTypeClosedCaptions](homekit/hmcharacteristictypeclosedcaptions.md)
- [HMCharacteristicTypePictureMode](homekit/hmcharacteristictypepicturemode.md)

### General state

- [HMCharacteristicTypeActive](homekit/hmcharacteristictypeactive.md)
- [HMCharacteristicTypeStatusTampered](homekit/hmcharacteristictypestatustampered.md)
- [HMCharacteristicTypeStatusFault](homekit/hmcharacteristictypestatusfault.md)
- [HMCharacteristicTypeStatusActive](homekit/hmcharacteristictypestatusactive.md)
- [HMCharacteristicTypeInUse](homekit/hmcharacteristictypeinuse.md)
- [HMCharacteristicTypeIsConfigured](homekit/hmcharacteristictypeisconfigured.md)
- [HMCharacteristicTypeRemainingDuration](homekit/hmcharacteristictyperemainingduration.md)
- [HMCharacteristicTypeSetDuration](homekit/hmcharacteristictypesetduration.md)
- [HMCharacteristicTypeProgramMode](homekit/hmcharacteristictypeprogrammode.md)
- [HMCharacteristicTypeWiFiSatelliteStatus](homekit/hmcharacteristictypewifisatellitestatus.md)
- [HMCharacteristicTypeWANStatusList](homekit/hmcharacteristictypewanstatuslist.md)
- [HMCharacteristicTypeTargetMediaState](homekit/hmcharacteristictypetargetmediastate.md)
- [HMCharacteristicTypeRouterStatus](homekit/hmcharacteristictyperouterstatus.md)
- [HMCharacteristicTypeCurrentMediaState](homekit/hmcharacteristictypecurrentmediastate.md)
- [HMCharacteristicTypeCurrentVisibilityState](homekit/hmcharacteristictypecurrentvisibilitystate.md)
- [HMCharacteristicTypeTargetVisibilityState](homekit/hmcharacteristictypetargetvisibilitystate.md)
- [HMCharacteristicPropertySupportsEventNotification](homekit/hmcharacteristicpropertysupportseventnotification-2f0ml.md)

### Accessory identification

- [HMCharacteristicTypeName](homekit/hmcharacteristictypename.md)
- [HMCharacteristicTypeIdentify](homekit/hmcharacteristictypeidentify.md)
- [HMCharacteristicTypeVersion](homekit/hmcharacteristictypeversion.md)
- [HMCharacteristicTypeLogs](homekit/hmcharacteristictypelogs.md)
- [HMCharacteristicTypeAdminOnlyAccess](homekit/hmcharacteristictypeadminonlyaccess.md)
- [HMCharacteristicTypeHardwareVersion](homekit/hmcharacteristictypehardwareversion.md)
- [HMCharacteristicTypeSoftwareVersion](homekit/hmcharacteristictypesoftwareversion.md)
- [HMCharacteristicTypeLabelIndex](homekit/hmcharacteristictypelabelindex.md)
- [HMCharacteristicTypeLabelNamespace](homekit/hmcharacteristictypelabelnamespace.md)
- [HMCharacteristicTypeActiveIdentifier](homekit/hmcharacteristictypeactiveidentifier.md)
- [HMCharacteristicTypeIdentifier](homekit/hmcharacteristictypeidentifier.md)
- [HMCharacteristicTypeInputDeviceType](homekit/hmcharacteristictypeinputdevicetype.md)
- [HMCharacteristicTypeInputSourceType](homekit/hmcharacteristictypeinputsourcetype.md)
- [HMCharacteristicTypeConfiguredName](homekit/hmcharacteristictypeconfiguredname.md)

### Deprecated characteristic types

- [HMCharacteristicTypeManufacturer](homekit/hmcharacteristictypemanufacturer.md)
- [HMCharacteristicTypeModel](homekit/hmcharacteristictypemodel.md)
- [HMCharacteristicTypeFirmwareVersion](homekit/hmcharacteristictypefirmwareversion.md)
- [HMCharacteristicTypeSerialNumber](homekit/hmcharacteristictypeserialnumber.md)

## See Also

### Determining what a characteristic controls

- [characteristicType](homekit/hmcharacteristic/characteristictype.md)
