From 7993fa4408351aae55db4f7ce2533304212a31ad Mon Sep 17 00:00:00 2001 From: Gregg Date: Sun, 21 Jan 2024 13:55:56 -0600 Subject: [PATCH] update --- tools/makeServiceList | 5 +- tools/test.md | 526 +++++++++++++++++++++--------------------- 2 files changed, 266 insertions(+), 265 deletions(-) diff --git a/tools/makeServiceList b/tools/makeServiceList index ca54a23..810a742 100755 --- a/tools/makeServiceList +++ b/tools/makeServiceList @@ -55,12 +55,13 @@ END { s=services[i] printf("## %s (%s)\n",s,uuid[s]) printf("
%s
\n",desc[s]) - printf("\n") + printf("\n") for(j=0;j") - printf("",servReq[s,j]?"":"",char,servReq[s,j]?"":"",notes[char]) + #printf("",servReq[s,j]?"":"",char,servReq[s,j]?"":"",notes[char]) + printf("",servReq[s,j]?"":"",char,servReq[s,j]?"":"",notes[char]) printf("",uuid[char]) printf("",format[char]) printf("",perms[char]) diff --git a/tools/test.md b/tools/test.md index f97be1b..24b8aef 100644 --- a/tools/test.md +++ b/tools/test.md @@ -1,411 +1,411 @@ ## AccessoryInformation (3E)
Required Identification Information. For each Accessory in a HomeSpan device this must be included as the first Service.
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CharacteristicUUIDFormatPermsMinMaxDefaults
%s%s%s%s
%s%s%s%s
%s%s%s
  • %s
%s%s%s
- - - - - - - - + + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
Identify the Home App set this to RUN_ID when it wants the device to run its identification routine
14boolPW01
  • IDLE (0)
  • RUN_ID (1)
FirmwareRevision must be in form x[.y[.z]] - informational only
52stringPR+EV--"1.0.0"
Manufacturer any string - informational only
20stringPR--"HomeSpan"
Model any string - informational only
21stringPR--"HomeSpan-ESP32"
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
SerialNumber
30stringPR--"HS-12345"
HardwareRevision must be in form x[.y[.z]] - informational only
53stringPR--"1.0.0"
CharacteristicUUIDFormatPermsMinMaxDefaults
Identify
  • the Home App set this to RUN_ID when it wants the device to run its identification routine
14boolPW01
  • IDLE (0)
  • RUN_ID (1)
FirmwareRevision
  • must be in form x[.y[.z]] - informational only
52stringPR+EV--"1.0.0"
Manufacturer
  • any string - informational only
20stringPR--"HomeSpan"
Model
  • any string - informational only
21stringPR--"HomeSpan-ESP32"
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
SerialNumber
30stringPR--"HS-12345"
HardwareRevision
  • must be in form x[.y[.z]] - informational only
53stringPR--"1.0.0"
## AirPurifier (BB)
Defines a basic Air Purifier with an optional fan. Optional Linked Services: FilterMaintenance, AirQualitySensor, Fan, and Slat
- - - - - - - - + + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
Active indicates if the Service is active/on
B0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
CurrentAirPurifierState indicates current state of air purification
A9uint8PR+EV02
  • INACTIVE (0)
  • IDLE (1)
  • PURIFYING (2)
TargetAirPurifierState
A8uint8PW+PR+EV01
  • MANUAL (0)
  • AUTO (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
RotationSpeed
29floatPR+PW+EV01000
SwingMode
B6uint8PR+EV+PW01
  • SWING_DISABLED (0)
  • SWING_ENABLED (1)
LockPhysicalControls indicates if local control lock is enabled
A7uint8PW+PR+EV01
  • CONTROL_LOCK_DISABLED (0)
  • CONTROL_LOCK_ENABLED (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
Active
  • indicates if the Service is active/on
B0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
CurrentAirPurifierState
  • indicates current state of air purification
A9uint8PR+EV02
  • INACTIVE (0)
  • IDLE (1)
  • PURIFYING (2)
TargetAirPurifierState
A8uint8PW+PR+EV01
  • MANUAL (0)
  • AUTO (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
RotationSpeed
29floatPR+PW+EV01000
SwingMode
B6uint8PR+EV+PW01
  • SWING_DISABLED (0)
  • SWING_ENABLED (1)
LockPhysicalControls
  • indicates if local control lock is enabled
A7uint8PW+PR+EV01
  • CONTROL_LOCK_DISABLED (0)
  • CONTROL_LOCK_ENABLED (1)
## AirQualitySensor (8D)
Defines an Air Quality Sensor.
- - - - - - - - - - - - - + + + + + + + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
AirQuality a subjective description
95uint8PR+EV05
  • UNKNOWN (0)
  • EXCELLENT (1)
  • GOOD (2)
  • FAIR (3)
  • INFERIOR (4)
  • POOR (5)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
OzoneDensity measured in µg/m3
C3floatPR+EV010000
NitrogenDioxideDensity measured in µg/m3
C4floatPR+EV010000
SulphurDioxideDensity
C5floatPR+EV010000
PM25Density 2.5-micron particulate density, measured in µg/m3
C6floatPR+EV010000
PM10Density 10-micron particulate density, measured in µg/m3
C7floatPR+EV010000
VOCDensity
C8floatPR+EV010000
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
AirQuality
  • a subjective description
95uint8PR+EV05
  • UNKNOWN (0)
  • EXCELLENT (1)
  • GOOD (2)
  • FAIR (3)
  • INFERIOR (4)
  • POOR (5)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
OzoneDensity
  • measured in µg/m3
C3floatPR+EV010000
NitrogenDioxideDensity
  • measured in µg/m3
C4floatPR+EV010000
SulphurDioxideDensity
C5floatPR+EV010000
PM25Density
  • 2.5-micron particulate density, measured in µg/m3
C6floatPR+EV010000
PM10Density
  • 10-micron particulate density, measured in µg/m3
C7floatPR+EV010000
VOCDensity
C8floatPR+EV010000
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
## BatteryService (96)
Defines a standalone Battery Service.
- - - - - + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
BatteryLevel measured as a percentage
68uint8PR+EV01000
ChargingState indicates state of battery charging
8Fuint8PR+EV02
  • NOT_CHARGING (0)
  • CHARGING (1)
  • NOT_CHARGEABLE (2)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
CharacteristicUUIDFormatPermsMinMaxDefaults
BatteryLevel
  • measured as a percentage
68uint8PR+EV01000
ChargingState
  • indicates state of battery charging
8Fuint8PR+EV02
  • NOT_CHARGING (0)
  • CHARGING (1)
  • NOT_CHARGEABLE (2)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
## CarbonDioxideSensor (97)
Defines a Carbon Dioxide Sensor.
- - - - - - - - - + + + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CarbonDioxideDetected indicates if abnormal level is detected
92uint8PR+EV01
  • NORMAL (0)
  • ABNORMAL (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
CarbonDioxideLevel measured on parts per million (ppm)
93floatPR+EV01000000
CarbonDioxidePeakLevel measured in parts per million (ppm)
94floatPR+EV01000000
CharacteristicUUIDFormatPermsMinMaxDefaults
CarbonDioxideDetected
  • indicates if abnormal level is detected
92uint8PR+EV01
  • NORMAL (0)
  • ABNORMAL (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
CarbonDioxideLevel
  • measured on parts per million (ppm)
93floatPR+EV01000000
CarbonDioxidePeakLevel
  • measured in parts per million (ppm)
94floatPR+EV01000000
## CarbonMonoxideSensor (7F)
Defines a Carbon Monoxide Sensor.
- - - - - - - - - + + + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CarbonMonoxideDetected indicates if abnormal level is detected
69uint8PR+EV01
  • NORMAL (0)
  • ABNORMAL (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
CarbonMonoxideLevel measured in parts per million (ppm)
90floatPR+EV01000
CarbonMonoxidePeakLevel measured in parts per million (ppm)
91floatPR+EV01000
CharacteristicUUIDFormatPermsMinMaxDefaults
CarbonMonoxideDetected
  • indicates if abnormal level is detected
69uint8PR+EV01
  • NORMAL (0)
  • ABNORMAL (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
CarbonMonoxideLevel
  • measured in parts per million (ppm)
90floatPR+EV01000
CarbonMonoxidePeakLevel
  • measured in parts per million (ppm)
91floatPR+EV01000
## ContactSensor (80)
Defines a Contact Sensor.
- - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
ContactSensorState indictates if contact is detected (i.e. closed)
6Auint8PR+EV01
  • DETECTED (0)
  • NOT_DETECTED (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
ContactSensorState
  • indictates if contact is detected (i.e. closed)
6Auint8PR+EV01
  • DETECTED (0)
  • NOT_DETECTED (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
## Door (81)
Defines a motorized Door.
- - - - - + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CurrentPosition current position (as a percentage) from fully closed (0) to full open (100)
6Duint8PR+EV01000
TargetPosition
7Cuint8PW+PR+EV01000
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
ObstructionDetected indicates if obstruction is detected
24boolPR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
CurrentPosition
  • current position (as a percentage) from fully closed (0) to full open (100)
6Duint8PR+EV01000
TargetPosition
7Cuint8PW+PR+EV01000
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
ObstructionDetected
  • indicates if obstruction is detected
24boolPR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
## Doorbell (121)
Defines a Doorbell. Can be used on a standalone basis or in conjunction with a LockMechanism Service.
- - - + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
ProgrammableSwitchEvent
73uint8PR+EV+NV02
  • SINGLE_PRESS (0)
  • DOUBLE_PRESS (1)
  • LONG_PRESS (2)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
CharacteristicUUIDFormatPermsMinMaxDefaults
ProgrammableSwitchEvent
73uint8PR+EV+NV02
  • SINGLE_PRESS (0)
  • DOUBLE_PRESS (1)
  • LONG_PRESS (2)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
## Fan (B7)
Defines a Fan. Can be used in conjunction with a LightBulb Service to create a Lighted Ceiling Fan.
- - - - - - - - - + + + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
Active indicates if the Service is active/on
B0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
CurrentFanState indicates current state of a fan
AFuint8PR+EV02
  • INACTIVE (0)
  • IDLE (1)
  • BLOWING (2)
TargetFanState
BFuint8PW+PR+EV01
  • MANUAL (0)
  • AUTO (1)
RotationDirection
28intPR+PW+EV01
  • CLOCKWISE (0)
  • COUNTERCLOCKWISE (1)
RotationSpeed
29floatPR+PW+EV01000
SwingMode
B6uint8PR+EV+PW01
  • SWING_DISABLED (0)
  • SWING_ENABLED (1)
LockPhysicalControls indicates if local control lock is enabled
A7uint8PW+PR+EV01
  • CONTROL_LOCK_DISABLED (0)
  • CONTROL_LOCK_ENABLED (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
Active
  • indicates if the Service is active/on
B0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
CurrentFanState
  • indicates current state of a fan
AFuint8PR+EV02
  • INACTIVE (0)
  • IDLE (1)
  • BLOWING (2)
TargetFanState
BFuint8PW+PR+EV01
  • MANUAL (0)
  • AUTO (1)
RotationDirection
28intPR+PW+EV01
  • CLOCKWISE (0)
  • COUNTERCLOCKWISE (1)
RotationSpeed
29floatPR+PW+EV01000
SwingMode
B6uint8PR+EV+PW01
  • SWING_DISABLED (0)
  • SWING_ENABLED (1)
LockPhysicalControls
  • indicates if local control lock is enabled
A7uint8PW+PR+EV01
  • CONTROL_LOCK_DISABLED (0)
  • CONTROL_LOCK_ENABLED (1)
## Faucet (D7)
Defines the master control for a multi-Valve appliance. Linked Services: Valve (at least one required), and HeaterCooler (optional).
- - - - + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
Active indicates if the Service is active/on
B0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
CharacteristicUUIDFormatPermsMinMaxDefaults
Active
  • indicates if the Service is active/on
B0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
## FilterMaintenance (BA)
Defines a Filter Maintainence check.
- - - - - + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
FilterChangeIndication indicates state of filter
ACuint8PR+EV01
  • NO_CHANGE_NEEDED (0)
  • CHANGE_NEEDED (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
FilterLifeLevel measures as a percentage of remaining life
ABfloatPR+EV01000
ResetFilterIndication
ADuint8PW110
CharacteristicUUIDFormatPermsMinMaxDefaults
FilterChangeIndication
  • indicates state of filter
ACuint8PR+EV01
  • NO_CHANGE_NEEDED (0)
  • CHANGE_NEEDED (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
FilterLifeLevel
  • measures as a percentage of remaining life
ABfloatPR+EV01000
ResetFilterIndication
ADuint8PW110
## GarageDoorOpener (41)
Defines a motorized Garage Door Opener.
- - - - - - - - + + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CurrentDoorState indicates current state of a door
Euint8PR+EV04
  • OPEN (0)
  • CLOSED (1)
  • OPENING (2)
  • CLOSING (3)
  • STOPPED (4)
TargetDoorState
32uint8PW+PR+EV01
  • OPEN (0)
  • CLOSED (1)
ObstructionDetected indicates if obstruction is detected
24boolPR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
LockCurrentState indictates state of a lock
1Duint8PR+EV03
  • UNLOCKED (0)
  • LOCKED (1)
  • JAMMED (2)
  • UNKNOWN (3)
LockTargetState indicates desired state of lock
1Euint8PW+PR+EV01
  • UNLOCK (0)
  • LOCK (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
Version
37stringPR--"1.0.0"
CharacteristicUUIDFormatPermsMinMaxDefaults
CurrentDoorState
  • indicates current state of a door
Euint8PR+EV04
  • OPEN (0)
  • CLOSED (1)
  • OPENING (2)
  • CLOSING (3)
  • STOPPED (4)
TargetDoorState
32uint8PW+PR+EV01
  • OPEN (0)
  • CLOSED (1)
ObstructionDetected
  • indicates if obstruction is detected
24boolPR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
LockCurrentState
  • indictates state of a lock
1Duint8PR+EV03
  • UNLOCKED (0)
  • LOCKED (1)
  • JAMMED (2)
  • UNKNOWN (3)
LockTargetState
  • indicates desired state of lock
1Euint8PW+PR+EV01
  • UNLOCK (0)
  • LOCK (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
Version
37stringPR--"1.0.0"
## HeaterCooler (BC)
Defines a standalone Heater, Cooler, or combined Heater/Cooler. Can be used with a separate Fan Service and/or Slat Service to extend functionality.
- - - - - - - - - - - - + + + + + + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
Active indicates if the Service is active/on
B0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
CurrentTemperature current temperature measured in Celsius
11floatPR+EV01000
CurrentHeaterCoolerState indicates whether appliance is currently heating, cooling, idle, or off
B1uint8PR+EV03
  • INACTIVE (0)
  • IDLE (1)
  • HEATING (2)
  • COOLING (3)
TargetHeaterCoolerState
B2uint8PW+PR+EV02
  • AUTO (0)
  • HEAT (1)
  • COOL (2)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
RotationSpeed
29floatPR+PW+EV01000
TemperatureDisplayUnits
36uint8PW+PR+EV01
  • CELSIUS (0)
  • FAHRENHEIT (1)
SwingMode
B6uint8PR+EV+PW01
  • SWING_DISABLED (0)
  • SWING_ENABLED (1)
CoolingThresholdTemperature cooling turns on when temperature (in Celsius) rises above this threshold
DfloatPR+PW+EV103510
HeatingThresholdTemperature heating turns on when temperature (in Celsius) falls below this threshold
12floatPR+PW+EV02516
LockPhysicalControls indicates if local control lock is enabled
A7uint8PW+PR+EV01
  • CONTROL_LOCK_DISABLED (0)
  • CONTROL_LOCK_ENABLED (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
Active
  • indicates if the Service is active/on
B0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
CurrentTemperature
  • current temperature measured in Celsius
11floatPR+EV01000
CurrentHeaterCoolerState
  • indicates whether appliance is currently heating, cooling, idle, or off
B1uint8PR+EV03
  • INACTIVE (0)
  • IDLE (1)
  • HEATING (2)
  • COOLING (3)
TargetHeaterCoolerState
B2uint8PW+PR+EV02
  • AUTO (0)
  • HEAT (1)
  • COOL (2)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
RotationSpeed
29floatPR+PW+EV01000
TemperatureDisplayUnits
36uint8PW+PR+EV01
  • CELSIUS (0)
  • FAHRENHEIT (1)
SwingMode
B6uint8PR+EV+PW01
  • SWING_DISABLED (0)
  • SWING_ENABLED (1)
CoolingThresholdTemperature
  • cooling turns on when temperature (in Celsius) rises above this threshold
DfloatPR+PW+EV103510
HeatingThresholdTemperature
  • heating turns on when temperature (in Celsius) falls below this threshold
12floatPR+PW+EV02516
LockPhysicalControls
  • indicates if local control lock is enabled
A7uint8PW+PR+EV01
  • CONTROL_LOCK_DISABLED (0)
  • CONTROL_LOCK_ENABLED (1)
## HumidifierDehumidifier (BD)
Defines a Humidifer, Dehumidifier, or combined Humidifer/Dehumidifier. Can be used with a separate Fan Service and/or Slat Service to extend functionality.
- - - - - - - - - - - - + + + + + + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
Active indicates if the Service is active/on
B0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
CurrentRelativeHumiditycurrent humidity measured as a percentage
10floatPR+EV01000
CurrentHumidifierDehumidifierState indicates current state of humidifier/dehumidifer
B3uint8PR+EV03
  • INACTIVE (0)
  • IDLE (1)
  • HUMIDIFYING (2)
  • DEHUMIDIFYING (3)
TargetHumidifierDehumidifierState
B4uint8PW+PR+EV02
  • AUTO (0)
  • HUMIDIFY (1)
  • DEHUMIDIFY (2)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
RelativeHumidityDehumidifierThreshold
C9floatPR+PW+EV010050
RelativeHumidityHumidifierThreshold
CAfloatPR+PW+EV010050
RotationSpeed
29floatPR+PW+EV01000
SwingMode
B6uint8PR+EV+PW01
  • SWING_DISABLED (0)
  • SWING_ENABLED (1)
WaterLevel
B5floatPR+EV01000
LockPhysicalControls indicates if local control lock is enabled
A7uint8PW+PR+EV01
  • CONTROL_LOCK_DISABLED (0)
  • CONTROL_LOCK_ENABLED (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
Active
  • indicates if the Service is active/on
B0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
CurrentRelativeHumidity
  • current humidity measured as a percentage
10floatPR+EV01000
CurrentHumidifierDehumidifierState
  • indicates current state of humidifier/dehumidifer
B3uint8PR+EV03
  • INACTIVE (0)
  • IDLE (1)
  • HUMIDIFYING (2)
  • DEHUMIDIFYING (3)
TargetHumidifierDehumidifierState
B4uint8PW+PR+EV02
  • AUTO (0)
  • HUMIDIFY (1)
  • DEHUMIDIFY (2)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
RelativeHumidityDehumidifierThreshold
C9floatPR+PW+EV010050
RelativeHumidityHumidifierThreshold
CAfloatPR+PW+EV010050
RotationSpeed
29floatPR+PW+EV01000
SwingMode
B6uint8PR+EV+PW01
  • SWING_DISABLED (0)
  • SWING_ENABLED (1)
WaterLevel
B5floatPR+EV01000
LockPhysicalControls
  • indicates if local control lock is enabled
A7uint8PW+PR+EV01
  • CONTROL_LOCK_DISABLED (0)
  • CONTROL_LOCK_ENABLED (1)
## HumiditySensor (82)
Defines a Humidity Sensor.
- - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CurrentRelativeHumiditycurrent humidity measured as a percentage
10floatPR+EV01000
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
CurrentRelativeHumidity
  • current humidity measured as a percentage
10floatPR+EV01000
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
## InputSource (D9)
Defines an Input Source for a TV. Use only as a Linked Service for the Television Service.
- - - - - - + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
ConfiguredName
E3stringPW+PR+EV--"unnamed"
IsConfigured indicates if a predefined Service has been configured
D6uint8PR+EV01
  • NOT_CONFIGURED (0)
  • CONFIGURED (1)
Identifier
E6uint32PR02550
CurrentVisibilityState
135uint8PR+EV010
TargetVisibilityState
134uint8PW+PR+EV010
CharacteristicUUIDFormatPermsMinMaxDefaults
ConfiguredName
E3stringPW+PR+EV--"unnamed"
IsConfigured
  • indicates if a predefined Service has been configured
D6uint8PR+EV01
  • NOT_CONFIGURED (0)
  • CONFIGURED (1)
Identifier
E6uint32PR02550
CurrentVisibilityState
135uint8PR+EV010
TargetVisibilityState
134uint8PW+PR+EV010
## IrrigationSystem (CF)
Defines an Irrigation System. Linked Services: Valve Service (at least one required).
- - - - - - + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
Active indicates if the Service is active/on
B0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
ProgramMode
D1uint8PR+EV02
  • NONE (0)
  • SCHEDULED (1)
  • SCHEDULE_OVERRIDEN (2)
InUse if Service is set to active, this indictes whether it is currently in use
D2uint8PR+EV01
  • NOT_IN_USE (0)
  • IN_USE (1)
RemainingDuration
D4uint32PR+EV0360060
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
Active
  • indicates if the Service is active/on
B0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
ProgramMode
D1uint8PR+EV02
  • NONE (0)
  • SCHEDULED (1)
  • SCHEDULE_OVERRIDEN (2)
InUse
  • if Service is set to active, this indictes whether it is currently in use
D2uint8PR+EV01
  • NOT_IN_USE (0)
  • IN_USE (1)
RemainingDuration
D4uint32PR+EV0360060
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
## LeakSensor (83)
Defines a Leak Sensor.
- - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
LeakDetected indictates if a leak is detected
70uint8PR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
LeakDetected
  • indictates if a leak is detected
70uint8PR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
## LightBulb (43)
Defines any type of Light.
- - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
On indicates if the Service is active/on
25boolPR+PW+EV01
  • OFF (0)
  • ON (1)
Brightness measured as a percentage
8intPR+PW+EV01000
Hue color (in degrees) from red (0) to green (120) to blue (240) and back to red (360)
13floatPR+PW+EV03600
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
Saturation
2FfloatPR+PW+EV01000
ColorTemperature measured in inverse megaKelvin (= 1,000,000 / Kelvin)
CEuint32PR+PW+EV140500200
CharacteristicUUIDFormatPermsMinMaxDefaults
On
  • indicates if the Service is active/on
25boolPR+PW+EV01
  • OFF (0)
  • ON (1)
Brightness
  • measured as a percentage
8intPR+PW+EV01000
Hue
  • color (in degrees) from red (0) to green (120) to blue (240) and back to red (360)
13floatPR+PW+EV03600
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
Saturation
2FfloatPR+PW+EV01000
ColorTemperature
  • measured in inverse megaKelvin (= 1,000,000 / Kelvin)
CEuint32PR+PW+EV140500200
## LightSensor (84)
Defines a Light Sensor.
- - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CurrentAmbientLightLevel measured in Lux (lumens/m2
6BfloatPR+EV0.00011000001
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
CurrentAmbientLightLevel
  • measured in Lux (lumens/m2
6BfloatPR+EV0.00011000001
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
## LockMechanism (45)
Defines an electronic Lock.
- - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
LockCurrentState indictates state of a lock
1Duint8PR+EV03
  • UNLOCKED (0)
  • LOCKED (1)
  • JAMMED (2)
  • UNKNOWN (3)
LockTargetState indicates desired state of lock
1Euint8PW+PR+EV01
  • UNLOCK (0)
  • LOCK (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
Mute not used
11AboolPW+PR+EV01
  • OFF (0)
  • ON (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
Volume
119uint8PW+PR+EV01000
CharacteristicUUIDFormatPermsMinMaxDefaults
LockCurrentState
  • indictates state of a lock
1Duint8PR+EV03
  • UNLOCKED (0)
  • LOCKED (1)
  • JAMMED (2)
  • UNKNOWN (3)
LockTargetState
  • indicates desired state of lock
1Euint8PW+PR+EV01
  • UNLOCK (0)
  • LOCK (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
Mute
  • not used
11AboolPW+PR+EV01
  • OFF (0)
  • ON (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
Volume
119uint8PW+PR+EV01000
## MotionSensor (85)
Defines a Motion Sensor.
- - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
MotionDetected indicates if motion is detected
22boolPR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
MotionDetected
  • indicates if motion is detected
22boolPR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
## OccupancySensor (86)
Defines and Occupancy Sensor.
- - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
OccupancyDetected indicates if occupanccy is detected
71uint8PR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
OccupancyDetected
  • indicates if occupanccy is detected
71uint8PR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
## Outlet (47)
Defines an controllable Outlet used to power any light or appliance.
- - - - + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
On indicates if the Service is active/on
25boolPR+PW+EV01
  • OFF (0)
  • ON (1)
OutletInUse indicates if an appliance or light is plugged into the outlet, regardless of whether on or off
26boolPR+EV01
  • NOT_IN_USE (0)
  • IN_USE (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
CharacteristicUUIDFormatPermsMinMaxDefaults
On
  • indicates if the Service is active/on
25boolPR+PW+EV01
  • OFF (0)
  • ON (1)
OutletInUse
  • indicates if an appliance or light is plugged into the outlet, regardless of whether on or off
26boolPR+EV01
  • NOT_IN_USE (0)
  • IN_USE (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
## SecuritySystem (7E)
Defines a Security System.
- - - - - - - - + + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
SecuritySystemCurrentState
66uint8PR+EV04
  • ARMED_STAY (0)
  • ARMED_AWAY (1)
  • ARMED_NIGHT (2)
  • DISARMED (3)
  • ALARM_TRIGGERED (4)
SecuritySystemTargetState
67uint8PW+PR+EV03
  • ARM_STAY (0)
  • ARM_AWAY (1)
  • ARM_NIGHT (2)
  • DISARM (3)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
SecuritySystemAlarmType
8Euint8PR+EV01
  • KNOWN (0)
  • UNKNOWN (1)
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
ServiceLabelNamespace
CDuint8PR01
  • DOTS (0)
  • NUMERALS (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
SecuritySystemCurrentState
66uint8PR+EV04
  • ARMED_STAY (0)
  • ARMED_AWAY (1)
  • ARMED_NIGHT (2)
  • DISARMED (3)
  • ALARM_TRIGGERED (4)
SecuritySystemTargetState
67uint8PW+PR+EV03
  • ARM_STAY (0)
  • ARM_AWAY (1)
  • ARM_NIGHT (2)
  • DISARM (3)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
SecuritySystemAlarmType
8Euint8PR+EV01
  • KNOWN (0)
  • UNKNOWN (1)
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
ServiceLabelNamespace
CDuint8PR01
  • DOTS (0)
  • NUMERALS (1)
## Slat (B9)
Defines a motorized ventilation Slat(s).
- - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CurrentSlatState indicates current state of slats
AAuint8PR+EV02
  • FIXED (0)
  • JAMMED (1)
  • SWINGING (2)
SlatType
C0uint8PR01
  • HORIZONTAL (0)
  • VERTICAL (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
SwingMode
B6uint8PR+EV+PW01
  • SWING_DISABLED (0)
  • SWING_ENABLED (1)
CurrentTiltAngle angle (in degrees) of slats from fully up or left (-90) to fully open (0) to fully down or right (90)
C1intPR+EV-90900
TargetTiltAngle
C2intPW+PR+EV-90900
CharacteristicUUIDFormatPermsMinMaxDefaults
CurrentSlatState
  • indicates current state of slats
AAuint8PR+EV02
  • FIXED (0)
  • JAMMED (1)
  • SWINGING (2)
SlatType
C0uint8PR01
  • HORIZONTAL (0)
  • VERTICAL (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
SwingMode
B6uint8PR+EV+PW01
  • SWING_DISABLED (0)
  • SWING_ENABLED (1)
CurrentTiltAngle
  • angle (in degrees) of slats from fully up or left (-90) to fully open (0) to fully down or right (90)
C1intPR+EV-90900
TargetTiltAngle
C2intPW+PR+EV-90900
## SmokeSensor (87)
Defines a Smoke Sensor.
- - - - - - - - - - + + + + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
SmokeDetected
76uint8PR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
Mute not used
11AboolPW+PR+EV01
  • OFF (0)
  • ON (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
Volume
119uint8PW+PR+EV01000
CharacteristicUUIDFormatPermsMinMaxDefaults
SmokeDetected
76uint8PR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
Mute
  • not used
11AboolPW+PR+EV01
  • OFF (0)
  • ON (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
Volume
119uint8PW+PR+EV01000
## StatelessProgrammableSwitch (89)
Defines a "Stateless" Programmable Switch that can be used to trigger actions in the Home App.
- - - + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
ProgrammableSwitchEvent
73uint8PR+EV+NV02
  • SINGLE_PRESS (0)
  • DOUBLE_PRESS (1)
  • LONG_PRESS (2)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
CharacteristicUUIDFormatPermsMinMaxDefaults
ProgrammableSwitchEvent
73uint8PR+EV+NV02
  • SINGLE_PRESS (0)
  • DOUBLE_PRESS (1)
  • LONG_PRESS (2)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
## Switch (49)
Defines a generic Switch.
- - - + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
On indicates if the Service is active/on
25boolPR+PW+EV01
  • OFF (0)
  • ON (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
CharacteristicUUIDFormatPermsMinMaxDefaults
On
  • indicates if the Service is active/on
25boolPR+PW+EV01
  • OFF (0)
  • ON (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
## Television (D8)
Defines a TV. Optional Linked Services: InputSource and TelevisionSpeaker.
- - - - - - + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
Active indicates if the Service is active/on
B0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
ConfiguredName
E3stringPW+PR+EV--"unnamed"
ActiveIdentifier the Identifier of the current Input Source
E7uint32PW+PR+EV02550
RemoteKey
E1uint8PW0160
PowerModeSelection
DFuint8PW010
CharacteristicUUIDFormatPermsMinMaxDefaults
Active
  • indicates if the Service is active/on
B0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
ConfiguredName
E3stringPW+PR+EV--"unnamed"
ActiveIdentifier
  • the Identifier of the current Input Source
E7uint32PW+PR+EV02550
RemoteKey
E1uint8PW0160
PowerModeSelection
DFuint8PW010
## TelevisionSpeaker (113)
Defines a Television Speaker that can be controlled via the Remote Control widget on an iPhone. Use only as a Linked Service for the Television Service.
- - - + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
VolumeControlType
E9uint8PR+EV030
VolumeSelector
EAuint8PW010
CharacteristicUUIDFormatPermsMinMaxDefaults
VolumeControlType
E9uint8PR+EV030
VolumeSelector
EAuint8PW010
## TemperatureSensor (8A)
Defines a Temperature Sensor.
- - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CurrentTemperature current temperature measured in Celsius
11floatPR+EV01000
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
CurrentTemperature
  • current temperature measured in Celsius
11floatPR+EV01000
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
StatusActive
75boolPR+EV01true
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
StatusTampered
7Auint8PR+EV01
  • NOT_TAMPERED (0)
  • TAMPERED (1)
StatusLowBattery
79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
## Thermostat (4A)
Defines a Thermostat used to control a furnace, air conditioner, or both.
- - - - - - - - - - - + + + + + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CurrentHeatingCoolingState indicates whether appliance is currently heating, cooling, or just idle
Fuint8PR+EV02
  • IDLE (0)
  • HEATING (1)
  • COOLING (2)
TargetHeatingCoolingState
33uint8PW+PR+EV03
  • OFF (0)
  • HEAT (1)
  • COOL (2)
  • AUTO (3)
CurrentTemperature current temperature measured in Celsius
11floatPR+EV01000
TargetTemperature
35floatPW+PR+EV103816
TemperatureDisplayUnits
36uint8PW+PR+EV01
  • CELSIUS (0)
  • FAHRENHEIT (1)
CoolingThresholdTemperature cooling turns on when temperature (in Celsius) rises above this threshold
DfloatPR+PW+EV103510
CurrentRelativeHumiditycurrent humidity measured as a percentage
10floatPR+EV01000
HeatingThresholdTemperature heating turns on when temperature (in Celsius) falls below this threshold
12floatPR+PW+EV02516
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
TargetRelativeHumidity
34floatPW+PR+EV01000
CharacteristicUUIDFormatPermsMinMaxDefaults
CurrentHeatingCoolingState
  • indicates whether appliance is currently heating, cooling, or just idle
Fuint8PR+EV02
  • IDLE (0)
  • HEATING (1)
  • COOLING (2)
TargetHeatingCoolingState
33uint8PW+PR+EV03
  • OFF (0)
  • HEAT (1)
  • COOL (2)
  • AUTO (3)
CurrentTemperature
  • current temperature measured in Celsius
11floatPR+EV01000
TargetTemperature
35floatPW+PR+EV103816
TemperatureDisplayUnits
36uint8PW+PR+EV01
  • CELSIUS (0)
  • FAHRENHEIT (1)
CoolingThresholdTemperature
  • cooling turns on when temperature (in Celsius) rises above this threshold
DfloatPR+PW+EV103510
CurrentRelativeHumidity
  • current humidity measured as a percentage
10floatPR+EV01000
HeatingThresholdTemperature
  • heating turns on when temperature (in Celsius) falls below this threshold
12floatPR+PW+EV02516
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
TargetRelativeHumidity
34floatPW+PR+EV01000
## Valve (D0)
Defines an electronic Valve. Can be used standalone or as a Linked Service in conjunction with the Faucet and IrrigationSystem Services.
- - - - - - - - - + + + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
Active indicates if the Service is active/on
B0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
InUse if Service is set to active, this indictes whether it is currently in use
D2uint8PR+EV01
  • NOT_IN_USE (0)
  • IN_USE (1)
ValveType
D5uint8PR+EV030
SetDuration
D3uint32PW+PR+EV0360060
RemainingDuration
D4uint32PR+EV0360060
IsConfigured indicates if a predefined Service has been configured
D6uint8PR+EV01
  • NOT_CONFIGURED (0)
  • CONFIGURED (1)
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
CharacteristicUUIDFormatPermsMinMaxDefaults
Active
  • indicates if the Service is active/on
B0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
InUse
  • if Service is set to active, this indictes whether it is currently in use
D2uint8PR+EV01
  • NOT_IN_USE (0)
  • IN_USE (1)
ValveType
D5uint8PR+EV030
SetDuration
D3uint32PW+PR+EV0360060
RemainingDuration
D4uint32PR+EV0360060
IsConfigured
  • indicates if a predefined Service has been configured
D6uint8PR+EV01
  • NOT_CONFIGURED (0)
  • CONFIGURED (1)
StatusFault
77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
## Window (8B)
Defines a motorized Window.
- - - - - + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CurrentPosition current position (as a percentage) from fully closed (0) to full open (100)
6Duint8PR+EV01000
TargetPosition
7Cuint8PW+PR+EV01000
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
ObstructionDetected indicates if obstruction is detected
24boolPR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
CurrentPosition
  • current position (as a percentage) from fully closed (0) to full open (100)
6Duint8PR+EV01000
TargetPosition
7Cuint8PW+PR+EV01000
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
ObstructionDetected
  • indicates if obstruction is detected
24boolPR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
## WindowCovering (8C)
Defines a motorized Window Shade, Screen, Awning, etc.
- - - - - - - - - + + + + + + + + +
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
TargetPosition
7Cuint8PW+PR+EV01000
CurrentPosition current position (as a percentage) from fully closed (0) to full open (100)
6Duint8PR+EV01000
Name default name of a Service used only during initial pairing
23stringPR--"unnamed"
CurrentHorizontalTiltAngle current angle (in degrees) of slats from fully up (-90) to fully open (0) to fully down (90)
6CintPR+EV-90900
TargetHorizontalTiltAngle
7BintPW+PR+EV-90900
CurrentVerticalTiltAngle current angle (in degrees) of slats from fully left (-90) to fully open (0) to fully right (90)
6EintPR+EV-90900
TargetVerticalTiltAngle
7DintPW+PR+EV-90900
ObstructionDetected indicates if obstruction is detected
24boolPR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
CharacteristicUUIDFormatPermsMinMaxDefaults
TargetPosition
7Cuint8PW+PR+EV01000
CurrentPosition
  • current position (as a percentage) from fully closed (0) to full open (100)
6Duint8PR+EV01000
Name
  • default name of a Service used only during initial pairing
23stringPR--"unnamed"
CurrentHorizontalTiltAngle
  • current angle (in degrees) of slats from fully up (-90) to fully open (0) to fully down (90)
6CintPR+EV-90900
TargetHorizontalTiltAngle
7BintPW+PR+EV-90900
CurrentVerticalTiltAngle
  • current angle (in degrees) of slats from fully left (-90) to fully open (0) to fully right (90)
6EintPR+EV-90900
TargetVerticalTiltAngle
7DintPW+PR+EV-90900
ObstructionDetected
  • indicates if obstruction is detected
24boolPR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)