From f175433b0e6c2fb759c3c73938eab7cecb72a8d3 Mon Sep 17 00:00:00 2001 From: Gregg Date: Sun, 21 Jan 2024 12:41:33 -0600 Subject: [PATCH] update --- tools/makeServiceList | 2 +- tools/test.md | 74 +++++++++++++++++++++---------------------- 2 files changed, 38 insertions(+), 38 deletions(-) diff --git a/tools/makeServiceList b/tools/makeServiceList index 4f8a63a..cc391af 100755 --- a/tools/makeServiceList +++ b/tools/makeServiceList @@ -55,7 +55,7 @@ END { s=services[i] printf("## %s (%s)\n",s,uuid[s]) printf("
%s
\n",desc[s]) - printf("\n") + printf("\n") for(j=0;j Required Identification Information. For each Accessory in a HomeSpan device this must be included as the first Service.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
- + @@ -12,7 +12,7 @@ ## AirPurifier (BB)
Defines a basic Air Purifier with an optional fan. Optional Linked Services: FilterMaintenance, AirQualitySensor, Fan, and Slat
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
Identify14boolPW01
  • IDLE (0)
  • RUN_ID (1)
the Home App set this to RUN_ID when it wants the device to run its identification routine
FirmwareRevision52stringPR+EV--"1.0.0" must be in form x[.y[.z]] - informational only
Manufacturer20stringPR--"HomeSpan" any string - informational only
- + @@ -24,7 +24,7 @@ ## AirQualitySensor (8D)
Defines an Air Quality Sensor.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
ActiveB0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
indicates if the Service is active/on
CurrentAirPurifierStateA9uint8PR+EV02
  • INACTIVE (0)
  • IDLE (1)
  • PURIFYING (2)
indicates current state of air purification
TargetAirPurifierStateA8uint8PW+PR+EV01
  • MANUAL (0)
  • AUTO (1)
- + @@ -41,7 +41,7 @@ ## BatteryService (96)
Defines a standalone Battery Service.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
AirQuality95uint8PR+EV05
  • UNKNOWN (0)
  • EXCELLENT (1)
  • GOOD (2)
  • FAIR (3)
  • INFERIOR (4)
  • POOR (5)
a subjective description
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
OzoneDensityC3floatPR+EV010000 measured in micrograms/m3
- + @@ -50,7 +50,7 @@ ## CarbonDioxideSensor (97)
Defines a Carbon Dioxide Sensor.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
BatteryLevel68uint8PR+EV01000 measured as a percentage
ChargingState8Fuint8PR+EV02
  • NOT_CHARGING (0)
  • CHARGING (1)
  • NOT_CHARGEABLE (2)
indicates state of battery charging
StatusLowBattery79uint8PR+EV01
  • NOT_LOW_BATTERY (0)
  • LOW_BATTERY (1)
- + @@ -63,7 +63,7 @@ ## CarbonMonoxideSensor (7F)
Defines a Carbon Monoxide Sensor.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CarbonDioxideDetected92uint8PR+EV01
  • NORMAL (0)
  • ABNORMAL (1)
indicates if abnormal level is detected
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
StatusActive75boolPR+EV01true
- + @@ -76,7 +76,7 @@ ## ContactSensor (80)
Defines a Contact Sensor.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CarbonMonoxideDetected69uint8PR+EV01
  • NORMAL (0)
  • ABNORMAL (1)
indicates if abnormal level is detected
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
StatusActive75boolPR+EV01true
- + @@ -87,7 +87,7 @@ ## Door (81)
Defines a motorized Door.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
ContactSensorState6Auint8PR+EV01
  • DETECTED (0)
  • NOT_DETECTED (1)
indictates if contact is detected (i.e. closed)
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
StatusActive75boolPR+EV01true
- + @@ -96,14 +96,14 @@ ## Doorbell (121)
Defines a Doorbell. Can be used on a standalone basis or in conjunction with a LockMechanism Service.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CurrentPosition6Duint8PR+EV01000 current position (as a percentage) from fully closed (0) to full open (100)
TargetPosition7Cuint8PW+PR+EV01000
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
- +
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
ProgrammableSwitchEvent73uint8PR+EV+NV02
  • SINGLE_PRESS (0)
  • DOUBLE_PRESS (1)
  • LONG_PRESS (2)
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
## Fan (B7)
Defines a Fan. Can be used in conjunction with a LightBulb Service to create a Lighted Ceiling Fan.
- + @@ -116,7 +116,7 @@ ## Faucet (D7)
Defines the master control for a multi-Valve appliance. Linked Services: Valve (at least one required), and HeaterCooler (optional).
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
ActiveB0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
indicates if the Service is active/on
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
CurrentFanStateAFuint8PR+EV02
  • INACTIVE (0)
  • IDLE (1)
  • BLOWING (2)
indicates current state of a fan
- + @@ -124,7 +124,7 @@ ## FilterMaintenance (BA)
Defines a Filter Maintainence check.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
ActiveB0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
indicates if the Service is active/on
StatusFault77uint8PR+EV01
  • NO_FAULT (0)
  • FAULT (1)
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
- + @@ -133,7 +133,7 @@ ## GarageDoorOpener (41)
Defines a motorized Garage Door Opener.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
FilterChangeIndicationACuint8PR+EV01
  • NO_CHANGE_NEEDED (0)
  • CHANGE_NEEDED (1)
indicates state of filter
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
FilterLifeLevelABfloatPR+EV01000 measures as a percentage of remaining life
- + @@ -145,7 +145,7 @@ ## 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.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CurrentDoorStateEuint8PR+EV04
  • OPEN (0)
  • CLOSED (1)
  • OPENING (2)
  • CLOSING (3)
  • STOPPED (4)
indicates current state of a door
TargetDoorState32uint8PW+PR+EV01
  • OPEN (0)
  • CLOSED (1)
ObstructionDetected24boolPR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
indicates if obstruction is detected
- + @@ -161,7 +161,7 @@ ## 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.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
ActiveB0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
indicates if the Service is active/on
CurrentTemperature11floatPR+EV01000 current temperature measured in Celsius
CurrentHeaterCoolerStateB1uint8PR+EV03
  • INACTIVE (0)
  • IDLE (1)
  • HEATING (2)
  • COOLING (3)
indicates whether appliance is currently heating, cooling, idle, or off
- + @@ -177,7 +177,7 @@ ## HumiditySensor (82)
Defines a Humidity Sensor.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
ActiveB0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
indicates if the Service is active/on
CurrentRelativeHumidity10floatPR+EV01000current humidity measured as a percentage
CurrentHumidifierDehumidifierStateB3uint8PR+EV03
  • INACTIVE (0)
  • IDLE (1)
  • HUMIDIFYING (2)
  • DEHUMIDIFYING (3)
indicates current state of humidifier/dehumidifer
- + @@ -188,7 +188,7 @@ ## InputSource (D9)
Defines an Input Source for a TV. Use only as a Linked Service for the Television Service.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CurrentRelativeHumidity10floatPR+EV01000current humidity measured as a percentage
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
StatusActive75boolPR+EV01true
- + @@ -198,7 +198,7 @@ ## IrrigationSystem (CF)
Defines an Irrigation System. Linked Services: Valve Service (at least one required).
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
ConfiguredNameE3stringPW+PR+EV--"unnamed"
IsConfiguredD6uint8PR+EV01
  • NOT_CONFIGURED (0)
  • CONFIGURED (1)
indicates if a predefined Service has been configured
IdentifierE6uint32PR02550
- + @@ -208,7 +208,7 @@ ## LeakSensor (83)
Defines a Leak Sensor.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
ActiveB0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
indicates if the Service is active/on
ProgramModeD1uint8PR+EV02
  • NONE (0)
  • SCHEDULED (1)
  • SCHEDULE_OVERRIDEN (2)
InUseD2uint8PR+EV01
  • NOT_IN_USE (0)
  • IN_USE (1)
if Service is set to active, this indictes whether it is currently in use
- + @@ -219,7 +219,7 @@ ## LightBulb (43)
Defines any type of Light.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
LeakDetected70uint8PR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
indictates if a leak is detected
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
StatusActive75boolPR+EV01true
- + @@ -230,7 +230,7 @@ ## LightSensor (84)
Defines a Light Sensor.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
On25boolPR+PW+EV01
  • OFF (0)
  • ON (1)
indicates if the Service is active/on
Brightness8intPR+PW+EV01000 measured as a percentage
Hue13floatPR+PW+EV03600 color (in degrees) from red (0) to green (120) to blue (240) and back to red (360)
- + @@ -241,7 +241,7 @@ ## LockMechanism (45)
Defines an electronic Lock.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CurrentAmbientLightLevel6BfloatPR+EV0.00011000001 measured in Lux (lumens/m2
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
StatusActive75boolPR+EV01true
- + @@ -252,7 +252,7 @@ ## MotionSensor (85)
Defines a Motion Sensor.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
LockCurrentState1Duint8PR+EV03
  • UNLOCKED (0)
  • LOCKED (1)
  • JAMMED (2)
  • UNKNOWN (3)
indictates state of a lock
LockTargetState1Euint8PW+PR+EV01
  • UNLOCK (0)
  • LOCK (1)
indicates desired state of lock
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
- + @@ -263,7 +263,7 @@ ## OccupancySensor (86)
Defines and Occupancy Sensor.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
MotionDetected22boolPR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
indicates if motion is detected
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
StatusActive75boolPR+EV01true
- + @@ -274,7 +274,7 @@ ## Outlet (47)
Defines an controllable Outlet used to power any light or appliance.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
OccupancyDetected71uint8PR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
indicates if occupanccy is detected
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
StatusActive75boolPR+EV01true
- + @@ -282,7 +282,7 @@ ## SecuritySystem (7E)
Defines a Security System.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
On25boolPR+PW+EV01
  • OFF (0)
  • ON (1)
indicates if the Service is active/on
OutletInUse26boolPR+EV01
  • NOT_IN_USE (0)
  • IN_USE (1)
indicates if an appliance or light is plugged into the outlet, regardless of whether on or off
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
- + @@ -294,7 +294,7 @@ ## Slat (B9)
Defines a motorized ventilation Slat(s).
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
SecuritySystemCurrentState66uint8PR+EV04
  • ARMED_STAY (0)
  • ARMED_AWAY (1)
  • ARMED_NIGHT (2)
  • DISARMED (3)
  • ALARM_TRIGGERED (4)
SecuritySystemTargetState67uint8PW+PR+EV03
  • ARM_STAY (0)
  • ARM_AWAY (1)
  • ARM_NIGHT (2)
  • DISARM (3)
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
- + @@ -305,7 +305,7 @@ ## SmokeSensor (87)
Defines a Smoke Sensor.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CurrentSlatStateAAuint8PR+EV02
  • FIXED (0)
  • JAMMED (1)
  • SWINGING (2)
indicates current state of slats
SlatTypeC0uint8PR01
  • HORIZONTAL (0)
  • VERTICAL (1)
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
- + @@ -319,21 +319,21 @@ ## StatelessProgrammableSwitch (89)
Defines a "Stateless" Programmable Switch that can be used to trigger actions in the Home App.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
SmokeDetected76uint8PR+EV01
  • NOT_DETECTED (0)
  • DETECTED (1)
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
StatusActive75boolPR+EV01true
- +
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
ProgrammableSwitchEvent73uint8PR+EV+NV02
  • SINGLE_PRESS (0)
  • DOUBLE_PRESS (1)
  • LONG_PRESS (2)
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
## Switch (49)
Defines a generic Switch.
- +
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
On25boolPR+PW+EV01
  • OFF (0)
  • ON (1)
indicates if the Service is active/on
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
## Television (D8)
Defines a TV. Optional Linked Services: InputSource and TelevisionSpeaker.
- + @@ -343,14 +343,14 @@ ## 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.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
ActiveB0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
indicates if the Service is active/on
ConfiguredNameE3stringPW+PR+EV--"unnamed"
ActiveIdentifierE7uint32PW+PR+EV02550 the Identifier of the current Input Source
- +
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
VolumeControlTypeE9uint8PR+EV030
VolumeSelectorEAuint8PW010
## TemperatureSensor (8A)
Defines a Temperature Sensor.
- + @@ -361,7 +361,7 @@ ## Thermostat (4A)
Defines a Thermostat used to control a furnace, air conditioner, or both.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CurrentTemperature11floatPR+EV01000 current temperature measured in Celsius
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
StatusActive75boolPR+EV01true
- + @@ -376,7 +376,7 @@ ## Valve (D0)
Defines an electronic Valve. Can be used standalone or as a Linked Service in conjunction with the Faucet and IrrigationSystem Services.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CurrentHeatingCoolingStateFuint8PR+EV02
  • IDLE (0)
  • HEATING (1)
  • COOLING (2)
indicates whether appliance is currently heating, cooling, or just idle
TargetHeatingCoolingState33uint8PW+PR+EV03
  • OFF (0)
  • HEAT (1)
  • COOL (2)
  • AUTO (3)
CurrentTemperature11floatPR+EV01000 current temperature measured in Celsius
- + @@ -389,7 +389,7 @@ ## Window (8B)
Defines a motorized Window.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
ActiveB0uint8PW+PR+EV01
  • INACTIVE (0)
  • ACTIVE (1)
indicates if the Service is active/on
InUseD2uint8PR+EV01
  • NOT_IN_USE (0)
  • IN_USE (1)
if Service is set to active, this indictes whether it is currently in use
ValveTypeD5uint8PR+EV030
- + @@ -398,7 +398,7 @@ ## WindowCovering (8C)
Defines a motorized Window Shade, Screen, Awning, etc.
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
CurrentPosition6Duint8PR+EV01000 current position (as a percentage) from fully closed (0) to full open (100)
TargetPosition7Cuint8PW+PR+EV01000
Name23stringPR--"unnamed" default name of a Service used only during initial pairing
- +
CharacteristicUUIDFormatPermsMinMaxConstantsNotes
CharacteristicUUIDFormatPermsMinMaxDefaultsNotes
TargetPosition7Cuint8PW+PR+EV01000
CurrentPosition6Duint8PR+EV01000 current position (as a percentage) from fully closed (0) to full open (100)
Name23stringPR--"unnamed" default name of a Service used only during initial pairing