Hi,
I recently moved into a home that has Feller ZeptrionAIR wifi controlled light switches. I have been able to configure the switches in Home Assistant using the Restful configuration like so:
switch:
- platform: rest
name: "Breakfast Nook Chandelier"
resource: http://zapp-xxxxxxxxx.local/zrap/chctrl/ch1
state_resource: http://zapp-xxxxxxxxx.local/zrap/chscan
body_on: "cmd=on"
body_off: "cmd=off"
is_on_template: "{{ value.find('<ch1><val>0') == -1 }}"
headers:
Content-Type: application/xml
verify_ssl: false
This works fine in Home Assistant. And with the HomeKit integration I can see these switches in the Apple Home app. In the Home app, I assigned the switches to different rooms and added them to the “Leave Home”, “Arrive Home”, “Goodnight”, and “Good morning” scenes.
However, every time there is a Home Assistant OS update, all the switches lose their configurations in the Apple Home App and I have to assign them all over again. This is probably the result of the ‘aid’ (accessory ID) not being persistent over OS updates.
According to the documentation (HomeKit - Home Assistant), the accessory id gets generated from the entity_id. If there is no unique_id for the entity, all configurations in the Home app will be lost when the entity_id changes.
Using the developer tools in Home assistant, I can see that my switches do not have unqiue ids. I get sent to this page for more info: This entity does not have a unique ID? - Home Assistant
I tried assigning an entity_id to one of the switches in the hope of keeping the unique_id persistent over OS updates, but this entity_id is not an accepted configuration option for rest switches.
Is there anything else I can do?