Add hardware version support to homekit controller (#61743)

pull/62102/head
J. Nick Koston 2021-12-16 05:24:18 -06:00 committed by GitHub
parent 389d9c2c35
commit 11fde22d45
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 8 additions and 0 deletions

View File

@ -177,6 +177,7 @@ class HomeKitEntity(Entity):
model=info.value(CharacteristicsTypes.MODEL, ""),
name=info.value(CharacteristicsTypes.NAME),
sw_version=info.value(CharacteristicsTypes.FIRMWARE_REVISION, ""),
hw_version=info.value(CharacteristicsTypes.HARDWARE_REVISION, ""),
)
# Some devices only have a single accessory - we don't add a

View File

@ -244,6 +244,7 @@ class HKDevice:
manufacturer=info.value(CharacteristicsTypes.MANUFACTURER, ""),
model=info.value(CharacteristicsTypes.MODEL, ""),
sw_version=info.value(CharacteristicsTypes.FIRMWARE_REVISION, ""),
hw_version=info.value(CharacteristicsTypes.HARDWARE_REVISION, ""),
)
if accessory.aid != 1:

View File

@ -40,6 +40,7 @@ async def test_eufycam_setup(hass):
assert device.name == "eufyCam2-0000"
assert device.model == "T8113"
assert device.sw_version == "1.6.7"
assert device.hw_version == "1.0.0"
# These cameras are via a bridge, so via should be set
assert device.via_device_id is not None

View File

@ -63,6 +63,7 @@ async def test_lg_tv(hass):
assert device.model == "OLED55B9PUA"
assert device.sw_version == "04.71.04"
assert device.via_device_id is None
assert device.hw_version == "1"
# A TV has media player device triggers
triggers = await async_get_device_automations(hass, "trigger", device.id)

View File

@ -40,6 +40,7 @@ async def test_rainmachine_pro_8_setup(hass):
assert device.model == "SPK5 Pro"
assert device.sw_version == "1.0.4"
assert device.via_device_id is None
assert device.hw_version == "1"
# The device is made up of multiple valves - make sure we have enumerated them all
entry = entity_registry.async_get("switch.rainmachine_00ce4a_2")

View File

@ -40,12 +40,14 @@ async def test_ryse_smart_bridge_setup(hass):
assert device.name == "Master Bath South"
assert device.model == "RYSE Shade"
assert device.sw_version == "3.0.8"
assert device.hw_version == "1.0.0"
bridge = device_registry.async_get(device.via_device_id)
assert bridge.manufacturer == "RYSE Inc."
assert bridge.name == "RYSE SmartBridge"
assert bridge.model == "RYSE SmartBridge"
assert bridge.sw_version == "1.3.0"
assert bridge.hw_version == "0101.3521.0436"
# Check that the cover.ryse_smartshade is correctly found and set up
cover_id = "cover.ryse_smartshade"

View File

@ -34,6 +34,7 @@ async def test_vocolinc_flowerbud_setup(hass):
assert device.model == "Flowerbud"
assert device.sw_version == "3.121.2"
assert device.via_device_id is None
assert device.hw_version == "0.1"
# Assert the humidifier is detected
entry = entity_registry.async_get("humidifier.vocolinc_flowerbud_0d324b")