From 1aa8dede6b9d1e7802b85be42c57fa44f8f07c2f Mon Sep 17 00:00:00 2001 From: Gregg Date: Fri, 19 Jan 2024 14:32:00 -0600 Subject: [PATCH] update --- src/Span.h | 2 +- tools/makeServiceList | 12 +- tools/test.md | 556 +++++++++++++++++++++--------------------- 3 files changed, 285 insertions(+), 285 deletions(-) diff --git a/src/Span.h b/src/Span.h index 2f9f03e..a315c7f 100644 --- a/src/Span.h +++ b/src/Span.h @@ -414,7 +414,7 @@ namespace Service { namespace Characteristic { CREATE_CHAR(uint32_t,AccessoryFlags,1,1,1); - CREATE_CHAR(uint8_t,Active,0,0,1,INACTIVE,ACIVE); + CREATE_CHAR(uint8_t,Active,0,0,1,INACTIVE,ACTIVE); CREATE_CHAR(uint32_t,ActiveIdentifier,0,0,255); CREATE_CHAR(uint8_t,AirQuality,0,0,5,UNKNOWN,EXCELLENT,GOOD,FAIR,INFERIOR,POOR); CREATE_CHAR(uint8_t,BatteryLevel,0,0,100); diff --git a/tools/makeServiceList b/tools/makeServiceList index e26dd42..69d04dc 100755 --- a/tools/makeServiceList +++ b/tools/makeServiceList @@ -62,18 +62,18 @@ BEGIN { for(i=0;i%s (%s)
\n",s,uuid[s]) - printf("Values\n") + printf("\n") for(j=0;j") printf("",char,servReq[s,j]?" *":"") - printf("",uuid[char]) - printf("",format[char]) - printf("",perms[char]) + printf("",uuid[char]) + printf("",format[char]) + printf("",perms[char]) if(format[char]=="STRING") - printf("") + printf("") else - printf("",min[char],max[char]) + printf("",min[char],max[char]) printf("
CharacteristicUUIDFormatPermsMinMax
CharacteristicUUIDFormatPermsMinMaxValues
%s%s%s%s%s%s%s%s(max 64 characters)(max 64 characters)%s%s%s%s") for(k=0;kAccessoryInformation (3E)
-Values - - - - - - - - + + + + + + + + +
CharacteristicUUIDFormatPermsMinMax
Identify *14BOOLPW01
FirmwareRevision52STRINGPR+EV(max 64 characters)
Manufacturer20STRINGPR(max 64 characters)
Model21STRINGPR(max 64 characters)
Name23STRINGPR(max 64 characters)
SerialNumber30STRINGPR(max 64 characters)
HardwareRevision53STRINGPR(max 64 characters)
AccessoryFlagsA6UINT32PR+EV11
CharacteristicUUIDFormatPermsMinMaxValues
Identify *14BOOLPW01
FirmwareRevision52STRINGPR+EV(max 64 characters)
Manufacturer20STRINGPR(max 64 characters)
Model21STRINGPR(max 64 characters)
Name23STRINGPR(max 64 characters)
SerialNumber30STRINGPR(max 64 characters)
HardwareRevision53STRINGPR(max 64 characters)
AccessoryFlagsA6UINT32PR+EV11

AirPurifier (BB)
-Values - - - - - - - + + + + + + + +
CharacteristicUUIDFormatPermsMinMax
Active *B0UINT8PW+PR+EV01INACTIVE (0)
ACIVE (1)
CurrentAirPurifierState *A9UINT8PR+EV02INACTIVE (0)
IDLE (1)
PURIFYING (2)
TargetAirPurifierState *A8UINT8PW+PR+EV01MANUAL (0)
AUTO (1)
Name23STRINGPR(max 64 characters)
RotationSpeed29FLOATPR+PW+EV0100
SwingModeB6UINT8PR+EV+PW01SWING_DISABLED (0)
SWING_ENABLED (1)
LockPhysicalControlsA7UINT8PW+PR+EV01CONTROL_LOCK_DISABLED (0)
CONTROL_LOCK_ENABLED (1)
CharacteristicUUIDFormatPermsMinMaxValues
Active *B0UINT8PW+PR+EV01INACTIVE (0)
ACTIVE (1)
CurrentAirPurifierState *A9UINT8PR+EV02INACTIVE (0)
IDLE (1)
PURIFYING (2)
TargetAirPurifierState *A8UINT8PW+PR+EV01MANUAL (0)
AUTO (1)
Name23STRINGPR(max 64 characters)
RotationSpeed29FLOATPR+PW+EV0100
SwingModeB6UINT8PR+EV+PW01SWING_DISABLED (0)
SWING_ENABLED (1)
LockPhysicalControlsA7UINT8PW+PR+EV01CONTROL_LOCK_DISABLED (0)
CONTROL_LOCK_ENABLED (1)

AirQualitySensor (8D)
-Values - - - - - - - - - - - - + + + + + + + + + + + + +
CharacteristicUUIDFormatPermsMinMax
AirQuality *95UINT8PR+EV05UNKNOWN (0)
EXCELLENT (1)
GOOD (2)
FAIR (3)
INFERIOR (4)
POOR (5)
Name23STRINGPR(max 64 characters)
OzoneDensityC3FLOATPR+EV01000
NitrogenDioxideDensityC4FLOATPR+EV01000
SulphurDioxideDensityC5FLOATPR+EV01000
PM25DensityC6FLOATPR+EV01000
PM10DensityC7FLOATPR+EV01000
VOCDensityC8FLOATPR+EV01000
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxValues
AirQuality *95UINT8PR+EV05UNKNOWN (0)
EXCELLENT (1)
GOOD (2)
FAIR (3)
INFERIOR (4)
POOR (5)
Name23STRINGPR(max 64 characters)
OzoneDensityC3FLOATPR+EV01000
NitrogenDioxideDensityC4FLOATPR+EV01000
SulphurDioxideDensityC5FLOATPR+EV01000
PM25DensityC6FLOATPR+EV01000
PM10DensityC7FLOATPR+EV01000
VOCDensityC8FLOATPR+EV01000
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)

BatteryService (96)
-Values - - - - + + + + +
CharacteristicUUIDFormatPermsMinMax
BatteryLevel *68UINT8PR+EV0100
ChargingState *8FUINT8PR+EV02NOT_CHARGING (0)
CHARGING (1)
NOT_CHARGEABLE (2)
StatusLowBattery *79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)
Name23STRINGPR(max 64 characters)
CharacteristicUUIDFormatPermsMinMaxValues
BatteryLevel *68UINT8PR+EV0100
ChargingState *8FUINT8PR+EV02NOT_CHARGING (0)
CHARGING (1)
NOT_CHARGEABLE (2)
StatusLowBattery *79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)
Name23STRINGPR(max 64 characters)

CarbonDioxideSensor (97)
-Values - - - - - - - - + + + + + + + + +
CharacteristicUUIDFormatPermsMinMax
CarbonDioxideDetected *92UINT8PR+EV01NORMAL (0)
ABNORMAL (1)
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)
CarbonDioxideLevel93FLOATPR+EV0100000
CarbonDioxidePeakLevel94FLOATPR+EV0100000
CharacteristicUUIDFormatPermsMinMaxValues
CarbonDioxideDetected *92UINT8PR+EV01NORMAL (0)
ABNORMAL (1)
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)
CarbonDioxideLevel93FLOATPR+EV0100000
CarbonDioxidePeakLevel94FLOATPR+EV0100000

CarbonMonoxideSensor (7F)
-Values - - - - - - - - + + + + + + + + +
CharacteristicUUIDFormatPermsMinMax
CarbonMonoxideDetected *69UINT8PR+EV01NORMAL (0)
ABNORMAL (1)
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)
CarbonMonoxideLevel90FLOATPR+EV0100
CarbonMonoxidePeakLevel91FLOATPR+EV0100
CharacteristicUUIDFormatPermsMinMaxValues
CarbonMonoxideDetected *69UINT8PR+EV01NORMAL (0)
ABNORMAL (1)
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)
CarbonMonoxideLevel90FLOATPR+EV0100
CarbonMonoxidePeakLevel91FLOATPR+EV0100

ContactSensor (80)
-Values - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMax
ContactSensorState *6AUINT8PR+EV01DETECTED (0)
NOT_DETECTED (1)
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxValues
ContactSensorState *6AUINT8PR+EV01DETECTED (0)
NOT_DETECTED (1)
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)

Door (81)
-Values - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMax
CurrentPosition *6DUINT8PR+EV0100
TargetPosition *7CUINT8PW+PR+EV0100
PositionState *72UINT8PR+EV02GOING_TO_MINIMUM (0)
GOING_TO_MAXIMUM (1)
STOPPED (2)
Name23STRINGPR(max 64 characters)
HoldPosition6FBOOLPW01
ObstructionDetected24BOOLPR+EV01
CharacteristicUUIDFormatPermsMinMaxValues
CurrentPosition *6DUINT8PR+EV0100
TargetPosition *7CUINT8PW+PR+EV0100
PositionState *72UINT8PR+EV02GOING_TO_MINIMUM (0)
GOING_TO_MAXIMUM (1)
STOPPED (2)
Name23STRINGPR(max 64 characters)
HoldPosition6FBOOLPW01
ObstructionDetected24BOOLPR+EV01

Doorbell (121)
-Values - - - - + + + + +
CharacteristicUUIDFormatPermsMinMax
ProgrammableSwitchEvent *73UINT8PR+EV+NV02SINGLE_PRESS (0)
DOUBLE_PRESS (1)
LONG_PRESS (2)
Name23STRINGPR(max 64 characters)
Volume119UINT8PW+PR+EV0100
Brightness8INTPR+PW+EV0100
CharacteristicUUIDFormatPermsMinMaxValues
ProgrammableSwitchEvent *73UINT8PR+EV+NV02SINGLE_PRESS (0)
DOUBLE_PRESS (1)
LONG_PRESS (2)
Name23STRINGPR(max 64 characters)
Volume119UINT8PW+PR+EV0100
Brightness8INTPR+PW+EV0100

Fan (B7)
-Values - - - - - - - - + + + + + + + + +
CharacteristicUUIDFormatPermsMinMax
Active *B0UINT8PW+PR+EV01INACTIVE (0)
ACIVE (1)
Name23STRINGPR(max 64 characters)
CurrentFanStateAFUINT8PR+EV02INACTIVE (0)
IDLE (1)
BLOWING (2)
TargetFanStateBFUINT8PW+PR+EV01MANUAL (0)
AUTO (1)
RotationDirection28INTPR+PW+EV01CLOCKWISE (0)
COUNTERCLOCKWISE (1)
RotationSpeed29FLOATPR+PW+EV0100
SwingModeB6UINT8PR+EV+PW01SWING_DISABLED (0)
SWING_ENABLED (1)
LockPhysicalControlsA7UINT8PW+PR+EV01CONTROL_LOCK_DISABLED (0)
CONTROL_LOCK_ENABLED (1)
CharacteristicUUIDFormatPermsMinMaxValues
Active *B0UINT8PW+PR+EV01INACTIVE (0)
ACTIVE (1)
Name23STRINGPR(max 64 characters)
CurrentFanStateAFUINT8PR+EV02INACTIVE (0)
IDLE (1)
BLOWING (2)
TargetFanStateBFUINT8PW+PR+EV01MANUAL (0)
AUTO (1)
RotationDirection28INTPR+PW+EV01CLOCKWISE (0)
COUNTERCLOCKWISE (1)
RotationSpeed29FLOATPR+PW+EV0100
SwingModeB6UINT8PR+EV+PW01SWING_DISABLED (0)
SWING_ENABLED (1)
LockPhysicalControlsA7UINT8PW+PR+EV01CONTROL_LOCK_DISABLED (0)
CONTROL_LOCK_ENABLED (1)

Faucet (D7)
-Values - - - + + + +
CharacteristicUUIDFormatPermsMinMax
Active *B0UINT8PW+PR+EV01INACTIVE (0)
ACIVE (1)
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
Name23STRINGPR(max 64 characters)
CharacteristicUUIDFormatPermsMinMaxValues
Active *B0UINT8PW+PR+EV01INACTIVE (0)
ACTIVE (1)
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
Name23STRINGPR(max 64 characters)

FilterMaintenance (BA)
-Values - - - - + + + + +
CharacteristicUUIDFormatPermsMinMax
FilterChangeIndication *ACUINT8PR+EV01NO_CHANGE_NEEDED (0)
CHANGE_NEEDED (1)
Name23STRINGPR(max 64 characters)
FilterLifeLevelABFLOATPR+EV0100
ResetFilterIndicationADUINT8PW11
CharacteristicUUIDFormatPermsMinMaxValues
FilterChangeIndication *ACUINT8PR+EV01NO_CHANGE_NEEDED (0)
CHANGE_NEEDED (1)
Name23STRINGPR(max 64 characters)
FilterLifeLevelABFLOATPR+EV0100
ResetFilterIndicationADUINT8PW11

GarageDoorOpener (41)
-Values - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMax
CurrentDoorState *EUINT8PR+EV04OPEN (0)
CLOSED (1)
OPENING (2)
CLOSING (3)
STOPPED (4)
TargetDoorState *32UINT8PW+PR+EV01OPEN (0)
CLOSED (1)
ObstructionDetected *24BOOLPR+EV01
LockCurrentState1DUINT8PR+EV03UNLOCKED (0)
LOCKED (1)
JAMMED (2)
UNKNOWN (3)
LockTargetState1EUINT8PW+PR+EV01UNLOCK (0)
LOCK (1)
Name23STRINGPR(max 64 characters)
CharacteristicUUIDFormatPermsMinMaxValues
CurrentDoorState *EUINT8PR+EV04OPEN (0)
CLOSED (1)
OPENING (2)
CLOSING (3)
STOPPED (4)
TargetDoorState *32UINT8PW+PR+EV01OPEN (0)
CLOSED (1)
ObstructionDetected *24BOOLPR+EV01
LockCurrentState1DUINT8PR+EV03UNLOCKED (0)
LOCKED (1)
JAMMED (2)
UNKNOWN (3)
LockTargetState1EUINT8PW+PR+EV01UNLOCK (0)
LOCK (1)
Name23STRINGPR(max 64 characters)

HAPProtocolInformation (A2)
-Values - + +
CharacteristicUUIDFormatPermsMinMax
Version *37STRINGPR(max 64 characters)
CharacteristicUUIDFormatPermsMinMaxValues
Version *37STRINGPR(max 64 characters)

HeaterCooler (BC)
-Values - - - - - - - - - - - + + + + + + + + + + + +
CharacteristicUUIDFormatPermsMinMax
Active *B0UINT8PW+PR+EV01INACTIVE (0)
ACIVE (1)
CurrentTemperature *11FLOATPR+EV0100
CurrentHeaterCoolerState *B1UINT8PR+EV03INACTIVE (0)
IDLE (1)
HEATING (2)
COOLING (3)
TargetHeaterCoolerState *B2UINT8PW+PR+EV02AUTO (0)
HEAT (1)
COOL (2)
Name23STRINGPR(max 64 characters)
RotationSpeed29FLOATPR+PW+EV0100
TemperatureDisplayUnits36UINT8PW+PR+EV01CELSIUS (0)
FAHRENHEIT (1)
SwingModeB6UINT8PR+EV+PW01SWING_DISABLED (0)
SWING_ENABLED (1)
CoolingThresholdTemperatureDFLOATPR+PW+EV1035
HeatingThresholdTemperature12FLOATPR+PW+EV025
LockPhysicalControlsA7UINT8PW+PR+EV01CONTROL_LOCK_DISABLED (0)
CONTROL_LOCK_ENABLED (1)
CharacteristicUUIDFormatPermsMinMaxValues
Active *B0UINT8PW+PR+EV01INACTIVE (0)
ACTIVE (1)
CurrentTemperature *11FLOATPR+EV0100
CurrentHeaterCoolerState *B1UINT8PR+EV03INACTIVE (0)
IDLE (1)
HEATING (2)
COOLING (3)
TargetHeaterCoolerState *B2UINT8PW+PR+EV02AUTO (0)
HEAT (1)
COOL (2)
Name23STRINGPR(max 64 characters)
RotationSpeed29FLOATPR+PW+EV0100
TemperatureDisplayUnits36UINT8PW+PR+EV01CELSIUS (0)
FAHRENHEIT (1)
SwingModeB6UINT8PR+EV+PW01SWING_DISABLED (0)
SWING_ENABLED (1)
CoolingThresholdTemperatureDFLOATPR+PW+EV1035
HeatingThresholdTemperature12FLOATPR+PW+EV025
LockPhysicalControlsA7UINT8PW+PR+EV01CONTROL_LOCK_DISABLED (0)
CONTROL_LOCK_ENABLED (1)

HumidifierDehumidifier (BD)
-Values - - - - - - - - - - - + + + + + + + + + + + +
CharacteristicUUIDFormatPermsMinMax
Active *B0UINT8PW+PR+EV01INACTIVE (0)
ACIVE (1)
CurrentRelativeHumidity *10FLOATPR+EV0100
CurrentHumidifierDehumidifierState *B3UINT8PR+EV03INACTIVE (0)
IDLE (1)
HUMIDIFYING (2)
DEHUMIDIFYING (3)
TargetHumidifierDehumidifierState *B4UINT8PW+PR+EV02AUTO (0)
HUMIDIFY (1)
DEHUMIDIFY (2)
Name23STRINGPR(max 64 characters)
RelativeHumidityDehumidifierThresholdC9FLOATPR+PW+EV0100
RelativeHumidityHumidifierThresholdCAFLOATPR+PW+EV0100
RotationSpeed29FLOATPR+PW+EV0100
SwingModeB6UINT8PR+EV+PW01SWING_DISABLED (0)
SWING_ENABLED (1)
WaterLevelB5FLOATPR+EV0100
LockPhysicalControlsA7UINT8PW+PR+EV01CONTROL_LOCK_DISABLED (0)
CONTROL_LOCK_ENABLED (1)
CharacteristicUUIDFormatPermsMinMaxValues
Active *B0UINT8PW+PR+EV01INACTIVE (0)
ACTIVE (1)
CurrentRelativeHumidity *10FLOATPR+EV0100
CurrentHumidifierDehumidifierState *B3UINT8PR+EV03INACTIVE (0)
IDLE (1)
HUMIDIFYING (2)
DEHUMIDIFYING (3)
TargetHumidifierDehumidifierState *B4UINT8PW+PR+EV02AUTO (0)
HUMIDIFY (1)
DEHUMIDIFY (2)
Name23STRINGPR(max 64 characters)
RelativeHumidityDehumidifierThresholdC9FLOATPR+PW+EV0100
RelativeHumidityHumidifierThresholdCAFLOATPR+PW+EV0100
RotationSpeed29FLOATPR+PW+EV0100
SwingModeB6UINT8PR+EV+PW01SWING_DISABLED (0)
SWING_ENABLED (1)
WaterLevelB5FLOATPR+EV0100
LockPhysicalControlsA7UINT8PW+PR+EV01CONTROL_LOCK_DISABLED (0)
CONTROL_LOCK_ENABLED (1)

HumiditySensor (82)
-Values - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMax
CurrentRelativeHumidity *10FLOATPR+EV0100
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxValues
CurrentRelativeHumidity *10FLOATPR+EV0100
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)

InputSource (D9)
-Values - - - - - + + + + + +
CharacteristicUUIDFormatPermsMinMax
ConfiguredNameE3STRINGPW+PR+EV(max 64 characters)
IsConfiguredD6UINT8PR+EV01NOT_CONFIGURED (0)
CONFIGURED (1)
Identifier *E6UINT32PR0255
CurrentVisibilityState135UINT8PR+EV01
TargetVisibilityState134UINT8PW+PR+EV01
CharacteristicUUIDFormatPermsMinMaxValues
ConfiguredNameE3STRINGPW+PR+EV(max 64 characters)
IsConfiguredD6UINT8PR+EV01NOT_CONFIGURED (0)
CONFIGURED (1)
Identifier *E6UINT32PR0255
CurrentVisibilityState135UINT8PR+EV01
TargetVisibilityState134UINT8PW+PR+EV01

IrrigationSystem (CF)
-Values - - - - - + + + + + +
CharacteristicUUIDFormatPermsMinMax
Active *B0UINT8PW+PR+EV01INACTIVE (0)
ACIVE (1)
ProgramMode *D1UINT8PR+EV02NONE (0)
SCHEDULED (1)
SCHEDULE_OVERRIDEN (2)
InUse *D2UINT8PR+EV01NOT_IN_USE (0)
IN_USE (1)
RemainingDurationD4UINT32PR+EV03600
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
CharacteristicUUIDFormatPermsMinMaxValues
Active *B0UINT8PW+PR+EV01INACTIVE (0)
ACTIVE (1)
ProgramMode *D1UINT8PR+EV02NONE (0)
SCHEDULED (1)
SCHEDULE_OVERRIDEN (2)
InUse *D2UINT8PR+EV01NOT_IN_USE (0)
IN_USE (1)
RemainingDurationD4UINT32PR+EV03600
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)

LeakSensor (83)
-Values - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMax
LeakDetected *70UINT8PR+EV01NOT_DETECTED (0)
DETECTED (1)
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxValues
LeakDetected *70UINT8PR+EV01NOT_DETECTED (0)
DETECTED (1)
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)

LightBulb (43)
-Values - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMax
On *25BOOLPR+PW+EV01
Brightness8INTPR+PW+EV0100
Hue13FLOATPR+PW+EV0360
Name23STRINGPR(max 64 characters)
Saturation2FFLOATPR+PW+EV0100
ColorTemperatureCEUINT32PR+PW+EV140500
CharacteristicUUIDFormatPermsMinMaxValues
On *25BOOLPR+PW+EV01
Brightness8INTPR+PW+EV0100
Hue13FLOATPR+PW+EV0360
Name23STRINGPR(max 64 characters)
Saturation2FFLOATPR+PW+EV0100
ColorTemperatureCEUINT32PR+PW+EV140500

LightSensor (84)
-Values - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMax
CurrentAmbientLightLevel *6BFLOATPR+EV0.0001100000
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxValues
CurrentAmbientLightLevel *6BFLOATPR+EV0.0001100000
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)

LockMechanism (45)
-Values - - - + + + +
CharacteristicUUIDFormatPermsMinMax
LockCurrentState *1DUINT8PR+EV03UNLOCKED (0)
LOCKED (1)
JAMMED (2)
UNKNOWN (3)
LockTargetState *1EUINT8PW+PR+EV01UNLOCK (0)
LOCK (1)
Name23STRINGPR(max 64 characters)
CharacteristicUUIDFormatPermsMinMaxValues
LockCurrentState *1DUINT8PR+EV03UNLOCKED (0)
LOCKED (1)
JAMMED (2)
UNKNOWN (3)
LockTargetState *1EUINT8PW+PR+EV01UNLOCK (0)
LOCK (1)
Name23STRINGPR(max 64 characters)

Microphone (112)
-Values - - - + + + +
CharacteristicUUIDFormatPermsMinMax
Mute *11ABOOLPW+PR+EV01OFF (0)
ON (1)
Name23STRINGPR(max 64 characters)
Volume119UINT8PW+PR+EV0100
CharacteristicUUIDFormatPermsMinMaxValues
Mute *11ABOOLPW+PR+EV01OFF (0)
ON (1)
Name23STRINGPR(max 64 characters)
Volume119UINT8PW+PR+EV0100

MotionSensor (85)
-Values - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMax
MotionDetected *22BOOLPR+EV01
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxValues
MotionDetected *22BOOLPR+EV01
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)

OccupancySensor (86)
-Values - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMax
OccupancyDetected *71UINT8PR+EV01NOT_DETECTED (0)
DETECTED (1)
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxValues
OccupancyDetected *71UINT8PR+EV01NOT_DETECTED (0)
DETECTED (1)
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)

Outlet (47)
-Values - - - + + + +
CharacteristicUUIDFormatPermsMinMax
On *25BOOLPR+PW+EV01
OutletInUse *26BOOLPR+EV01
Name23STRINGPR(max 64 characters)
CharacteristicUUIDFormatPermsMinMaxValues
On *25BOOLPR+PW+EV01
OutletInUse *26BOOLPR+EV01
Name23STRINGPR(max 64 characters)

SecuritySystem (7E)
-Values - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMax
SecuritySystemCurrentState *66UINT8PR+EV04ARMED_STAY (0)
ARMED_AWAY (1)
ARMED_NIGHT (2)
DISARMED (3)
ALARM_TRIGGERED (4)
SecuritySystemTargetState *67UINT8PW+PR+EV03ARM_STAY (0)
ARM_AWAY (1)
ARM_NIGHT (2)
DISARM (3)
Name23STRINGPR(max 64 characters)
SecuritySystemAlarmType8EUINT8PR+EV01KNOWN (0)
UNKNOWN (1)
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
CharacteristicUUIDFormatPermsMinMaxValues
SecuritySystemCurrentState *66UINT8PR+EV04ARMED_STAY (0)
ARMED_AWAY (1)
ARMED_NIGHT (2)
DISARMED (3)
ALARM_TRIGGERED (4)
SecuritySystemTargetState *67UINT8PW+PR+EV03ARM_STAY (0)
ARM_AWAY (1)
ARM_NIGHT (2)
DISARM (3)
Name23STRINGPR(max 64 characters)
SecuritySystemAlarmType8EUINT8PR+EV01KNOWN (0)
UNKNOWN (1)
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)

ServiceLabel (CC)
-Values - + +
CharacteristicUUIDFormatPermsMinMax
ServiceLabelNamespace *CDUINT8PR01DOTS (0)
NUMERALS (1)
CharacteristicUUIDFormatPermsMinMaxValues
ServiceLabelNamespace *CDUINT8PR01DOTS (0)
NUMERALS (1)

Slat (B9)
-Values - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMax
CurrentSlatState *AAUINT8PR+EV02FIXED (0)
JAMMED (1)
SWINGING (2)
SlatType *C0UINT8PR01HORIZONTAL (0)
VERTICAL (1)
Name23STRINGPR(max 64 characters)
SwingModeB6UINT8PR+EV+PW01SWING_DISABLED (0)
SWING_ENABLED (1)
CurrentTiltAngleC1INTPR+EV-9090
TargetTiltAngleC2INTPW+PR+EV-9090
CharacteristicUUIDFormatPermsMinMaxValues
CurrentSlatState *AAUINT8PR+EV02FIXED (0)
JAMMED (1)
SWINGING (2)
SlatType *C0UINT8PR01HORIZONTAL (0)
VERTICAL (1)
Name23STRINGPR(max 64 characters)
SwingModeB6UINT8PR+EV+PW01SWING_DISABLED (0)
SWING_ENABLED (1)
CurrentTiltAngleC1INTPR+EV-9090
TargetTiltAngleC2INTPW+PR+EV-9090

SmokeSensor (87)
-Values - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMax
SmokeDetected *76UINT8PR+EV01NOT_DETECTED (0)
DETECTED (1)
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxValues
SmokeDetected *76UINT8PR+EV01NOT_DETECTED (0)
DETECTED (1)
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)

Speaker (113)
-Values - - - + + + +
CharacteristicUUIDFormatPermsMinMax
Mute *11ABOOLPW+PR+EV01OFF (0)
ON (1)
Name23STRINGPR(max 64 characters)
Volume119UINT8PW+PR+EV0100
CharacteristicUUIDFormatPermsMinMaxValues
Mute *11ABOOLPW+PR+EV01OFF (0)
ON (1)
Name23STRINGPR(max 64 characters)
Volume119UINT8PW+PR+EV0100

StatelessProgrammableSwitch (89)
-Values - - - + + + +
CharacteristicUUIDFormatPermsMinMax
ProgrammableSwitchEvent *73UINT8PR+EV+NV02SINGLE_PRESS (0)
DOUBLE_PRESS (1)
LONG_PRESS (2)
Name23STRINGPR(max 64 characters)
ServiceLabelIndexCBUINT8PR1255
CharacteristicUUIDFormatPermsMinMaxValues
ProgrammableSwitchEvent *73UINT8PR+EV+NV02SINGLE_PRESS (0)
DOUBLE_PRESS (1)
LONG_PRESS (2)
Name23STRINGPR(max 64 characters)
ServiceLabelIndexCBUINT8PR1255

Switch (49)
-Values - - + + +
CharacteristicUUIDFormatPermsMinMax
On *25BOOLPR+PW+EV01
Name23STRINGPR(max 64 characters)
CharacteristicUUIDFormatPermsMinMaxValues
On *25BOOLPR+PW+EV01
Name23STRINGPR(max 64 characters)

Television (D8)
-Values - - - - - + + + + + +
CharacteristicUUIDFormatPermsMinMax
Active *B0UINT8PW+PR+EV01INACTIVE (0)
ACIVE (1)
ConfiguredNameE3STRINGPW+PR+EV(max 64 characters)
ActiveIdentifierE7UINT32PW+PR+EV0255
RemoteKeyE1UINT8PW016
PowerModeSelectionDFUINT8PW01
CharacteristicUUIDFormatPermsMinMaxValues
Active *B0UINT8PW+PR+EV01INACTIVE (0)
ACTIVE (1)
ConfiguredNameE3STRINGPW+PR+EV(max 64 characters)
ActiveIdentifierE7UINT32PW+PR+EV0255
RemoteKeyE1UINT8PW016
PowerModeSelectionDFUINT8PW01

TelevisionSpeaker (113)
-Values - - + + +
CharacteristicUUIDFormatPermsMinMax
VolumeControlType *E9UINT8PR+EV03
VolumeSelector *EAUINT8PW01
CharacteristicUUIDFormatPermsMinMaxValues
VolumeControlType *E9UINT8PR+EV03
VolumeSelector *EAUINT8PW01

TemperatureSensor (8A)
-Values - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMax
CurrentTemperature *11FLOATPR+EV0100
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)
CharacteristicUUIDFormatPermsMinMaxValues
CurrentTemperature *11FLOATPR+EV0100
Name23STRINGPR(max 64 characters)
StatusActive75BOOLPR+EV01
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
StatusTampered7AUINT8PR+EV01NOT_TAMPERED (0)
TAMPERED (1)
StatusLowBattery79UINT8PR+EV01NOT_LOW_BATTERY (0)
LOW_BATTERY (1)

Thermostat (4A)
-Values - - - - - - - - - - + + + + + + + + + + +
CharacteristicUUIDFormatPermsMinMax
CurrentHeatingCoolingState *FUINT8PR+EV02OFF (0)
HEATING (1)
COOLING (2)
TargetHeatingCoolingState *33UINT8PW+PR+EV03OFF (0)
HEAT (1)
COOL (2)
AUTO (3)
CurrentTemperature *11FLOATPR+EV0100
TargetTemperature *35FLOATPW+PR+EV1038
TemperatureDisplayUnits *36UINT8PW+PR+EV01CELSIUS (0)
FAHRENHEIT (1)
CoolingThresholdTemperatureDFLOATPR+PW+EV1035
CurrentRelativeHumidity10FLOATPR+EV0100
HeatingThresholdTemperature12FLOATPR+PW+EV025
Name23STRINGPR(max 64 characters)
TargetRelativeHumidity34FLOATPW+PR+EV0100
CharacteristicUUIDFormatPermsMinMaxValues
CurrentHeatingCoolingState *FUINT8PR+EV02OFF (0)
HEATING (1)
COOLING (2)
TargetHeatingCoolingState *33UINT8PW+PR+EV03OFF (0)
HEAT (1)
COOL (2)
AUTO (3)
CurrentTemperature *11FLOATPR+EV0100
TargetTemperature *35FLOATPW+PR+EV1038
TemperatureDisplayUnits *36UINT8PW+PR+EV01CELSIUS (0)
FAHRENHEIT (1)
CoolingThresholdTemperatureDFLOATPR+PW+EV1035
CurrentRelativeHumidity10FLOATPR+EV0100
HeatingThresholdTemperature12FLOATPR+PW+EV025
Name23STRINGPR(max 64 characters)
TargetRelativeHumidity34FLOATPW+PR+EV0100

Valve (D0)
-Values - - - - - - - - - + + + + + + + + + +
CharacteristicUUIDFormatPermsMinMax
Active *B0UINT8PW+PR+EV01INACTIVE (0)
ACIVE (1)
InUse *D2UINT8PR+EV01NOT_IN_USE (0)
IN_USE (1)
ValveType *D5UINT8PR+EV03
SetDurationD3UINT32PW+PR+EV03600
RemainingDurationD4UINT32PR+EV03600
IsConfiguredD6UINT8PR+EV01NOT_CONFIGURED (0)
CONFIGURED (1)
ServiceLabelIndexCBUINT8PR1255
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
Name23STRINGPR(max 64 characters)
CharacteristicUUIDFormatPermsMinMaxValues
Active *B0UINT8PW+PR+EV01INACTIVE (0)
ACTIVE (1)
InUse *D2UINT8PR+EV01NOT_IN_USE (0)
IN_USE (1)
ValveType *D5UINT8PR+EV03
SetDurationD3UINT32PW+PR+EV03600
RemainingDurationD4UINT32PR+EV03600
IsConfiguredD6UINT8PR+EV01NOT_CONFIGURED (0)
CONFIGURED (1)
ServiceLabelIndexCBUINT8PR1255
StatusFault77UINT8PR+EV01NO_FAULT (0)
FAULT (1)
Name23STRINGPR(max 64 characters)

Window (8B)
-Values - - - - - - + + + + + + +
CharacteristicUUIDFormatPermsMinMax
CurrentPosition *6DUINT8PR+EV0100
TargetPosition *7CUINT8PW+PR+EV0100
PositionState *72UINT8PR+EV02GOING_TO_MINIMUM (0)
GOING_TO_MAXIMUM (1)
STOPPED (2)
Name23STRINGPR(max 64 characters)
HoldPosition6FBOOLPW01
ObstructionDetected24BOOLPR+EV01
CharacteristicUUIDFormatPermsMinMaxValues
CurrentPosition *6DUINT8PR+EV0100
TargetPosition *7CUINT8PW+PR+EV0100
PositionState *72UINT8PR+EV02GOING_TO_MINIMUM (0)
GOING_TO_MAXIMUM (1)
STOPPED (2)
Name23STRINGPR(max 64 characters)
HoldPosition6FBOOLPW01
ObstructionDetected24BOOLPR+EV01

WindowCovering (8C)
-Values - - - - - - - - - - + + + + + + + + + + +
CharacteristicUUIDFormatPermsMinMax
TargetPosition *7CUINT8PW+PR+EV0100
CurrentPosition *6DUINT8PR+EV0100
PositionState *72UINT8PR+EV02GOING_TO_MINIMUM (0)
GOING_TO_MAXIMUM (1)
STOPPED (2)
Name23STRINGPR(max 64 characters)
HoldPosition6FBOOLPW01
CurrentHorizontalTiltAngle6CINTPR+EV-9090
TargetHorizontalTiltAngle7BINTPW+PR+EV-9090
CurrentVerticalTiltAngle6EINTPR+EV-9090
TargetVerticalTiltAngle7DINTPW+PR+EV-9090
ObstructionDetected24BOOLPR+EV01
CharacteristicUUIDFormatPermsMinMaxValues
TargetPosition *7CUINT8PW+PR+EV0100
CurrentPosition *6DUINT8PR+EV0100
PositionState *72UINT8PR+EV02GOING_TO_MINIMUM (0)
GOING_TO_MAXIMUM (1)
STOPPED (2)
Name23STRINGPR(max 64 characters)
HoldPosition6FBOOLPW01
CurrentHorizontalTiltAngle6CINTPR+EV-9090
TargetHorizontalTiltAngle7BINTPW+PR+EV-9090
CurrentVerticalTiltAngle6EINTPR+EV-9090
TargetVerticalTiltAngle7DINTPW+PR+EV-9090
ObstructionDetected24BOOLPR+EV01