File ‘configuration.yaml’ could not be parsed, it was referenced from path ‘configuration.yaml’.This file will be ignored. Error(s): - YAMLSemanticError: Map keys must be unique; “isy994” is repeated (Line: 2)
Another post recommended a 2nd HA server with exposed devices over SSL.
The second ISY994 was my only solution due to separate electrical services however both house & shop are on the same LAN. I wanted to make sure I wasn’t missing a simple configuration change that could make this work from a single instance of HA.
I don’t know if the integration allows multiple ISY units, but the error that you are receiving is saying that the second “isy994:” reference is not allowed. When defining multiple switches, cameras, etc., you would use a single map key followed by the multiple definitions. So, I would start by trying removing the second “isy994:” and have the two units defined inline.
If I had to guess, I would say this would not work as there does not seem to be any reference to including multiple ISY units. If so, then another experiment you can try is to have one ISY on the main integration (i.e., what you describe above) and the second on the custom component that is available. If that works, the only potential issue is that the description of the custom component says that it is intended to join the main integration; the custom component may not be updated after that occurs.
2020-02-26 20:59:48 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for isy994 which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you do experience issues with Home Assistant.
2020-02-26 20:59:48 WARNING (MainThread) [homeassistant.loader] You are using a custom integration for hacs which has not been tested by Home Assistant. This component might cause stability problems, be sure to disable it if you do experience issues with Home Assistant.
The first host address is always “Unavailable” while second host address is the one that resolves.
The above would assume that the username and password are identical on both units. However, I think the other discussion on this topic has established that this does not work.
Having not installed the custom integration, I had hoped that it would have a configuration process that is different from the standard component. However, from your message, I am gathering that you did install the custom integration and it appears that the configuration entry is identical to the standard component (the warning error is typical of custom components/integrations). However, it may still be worth one more shot using the style of configuration entry that I describe above. Alternatively, you could always try communicating with the developer to see if they would consider an enhancement to the code.
Stay on v1.0.12-beta1 for right now until you confirm everything works (I have not merged the changes for multiple hosts yet in v1.0.14. You need to have Show Betas enabled for ISY994 in HACS (in the 3 dot menu on the installation page).
The multiple hosts need to be defined as a list ( with a - for each ).
That’s the correct formatting. I wonder 2 things: 1) I’ve been having some issues where HACS is saying it updated an installation, but it really didn’t. Try removing the integration and re-installing to make sure i’ts actually installing correctly. and 2) HA may be trying to validate against the current config version–if you’ve tried number 1, you may have to force HA to restart (don’t just restart from within HA; restart from the command line or reboot the computer/vm).
New Beta Version:
I found the source of half the problem with the issue you raised here, so please make sure you update to v1.0.14-beta2. The other half of the issue with the “does not create unique ids” comes from “old” entities when you tried the isy994_2 method. You’ll need to clear everything out of .storage/core.restore_states and .storage/core.entity_registry that were added by that method (may be easier to delete the two files and let them regenerate, but that will wipe out any customizations you’ve made on the entity_id names).
I’ve tested this by added two instances of my single controller (and a temp work around to make sure I don’t get the unique_id error) and it appeared to be working properly. Please let me know if you have any issues.
Tagging @simplextech because I don’t know if he’s seen this thread.
Please note: This update prepends the UUID from the ISY controller onto each entity’s node address. This will create duplicate entities the first time it runs. It’s strongly suggested you remove any ISY994 entities from the Entity Register before restarting Home Assistant (or remove them manually from the config/.storage/core.entity_registry and config/.storage/core.restore_states while Home Assistant is not running).
@shbatm I finally had a chance to get back on this.
So I wiped everything ISY994 from my test hassio also deleting the core.entity_registry & core.restore_state from the config.storage folder.
After a restart, I installed one of my two ISY994’s via Configuration/Integrations. I started with the Shop ISY (the one that was not showing the zwave door lock) and everything went well, the zwave lock for the shop shows now :>). Since this went so well I decided to install the ISY994 for the house but this did not work for some reason.
Here is the error log…
2020-03-17 17:13:13 ERROR (MainThread) [homeassistant.config_entries] Error setting up entry ISY - House (192.168.0.3) for isy994
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/config_entries.py", line 215, in async_setup
File "/config/custom_components/isy994/__init__.py", line 515, in async_setup_entry
File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
result = self.fn(*self.args, **self.kwargs)
File "/usr/local/lib/python3.7/site-packages/pyisy/isy.py", line 81, in __init__
self.programs = Programs(self, xml=self.conn.get_programs())
File "/usr/local/lib/python3.7/site-packages/pyisy/programs/__init__.py", line 95, in __init__
File "/usr/local/lib/python3.7/site-packages/pyisy/programs/__init__.py", line 264, in parse
File "/usr/local/lib/python3.7/site-packages/pyisy/programs/program.py", line 108, in update
prunning = (data["plastrun"] >= data["plastup"]) or data["prunning"]
Did you happen to try more than once? Not much has changed in the Programs code, not sure why it would have choked like that unless it just got a bad update from the ISY. I’ll check and see if I can find anything obvious.