Please feel free to test from my fork linked above. I’m currently waiting for changes made to PyIsy to be incorporated before Home Assistant will review the changes.
If you don’t want to use the whole fork, you should be able to test my changes using a custom component in the config folder… When I figure out how to do that myself I’ll post some instructions.
I believe I figured out the custom_component part, and now I’m ready to add the thermostat to my configuration. Could you drop a sample snippet of your configuration.yaml that invokke the thermostat?
Thanks
Has anyone figured out how to add this to their instance? I’ve tried adding all of the files to my custom_components directory in the structure as they are from the GitHub fork, but no luck
TO TEST AS A CUSTOM COMPONENT: This assumes you have ~/.homeassistant as your config directory, update as needed
Copy all of the files from the isy994 component folder from my fork to ~/.homeassistant/custom_components/isy994/ (either download the whole repo zip file and copy just that folder, or download and save each file 1-by-1).
EDIT: The following steps are no longer required: 2. Install the custom PyISY instance (still waiting for it to be updated on PyPi): *
- Run pip3 install https://github.com/shbatm/PyISY/archive/develop.zip#PyISY==1.1.2 --target ~/.homeassistant/deps --system. If you use a virtual environment, make sure you activate it first. 3. Run Home Assistant with the --skip-pip flag to make sure it uses the custom module. e.g. hass --skip-pip
EDIT: Working in Hass.io instance now too. No need to use --skip-pip, it automatically installed my version of the PyISY module in the main dependency folder. If it doesn’t work right away, check your logs and see if there was an error, I had some DNS issues with the Docker container preventing the installation the first time (couldn’t find github.com). END EDIT
Also, I had to remove the option to set “Program Auto” mode by request of the reviewers. This is not an “approved” climate mode in Hass–I completely disagree with limiting the functions that are supported by a device because they don’t match a Hass standard; if you want to weigh in on the conversation and direction the Climate module is taking: here’s your chance!
Just a few notes: this has been updated for the breaking changes introduced in 0.92b3. Also, due to some restrictions in getting this component added officially, I have split off the version to be used for custom_components to the isy994-climate-dev branch:
Primary differences:
This will install the requirements for PyISY from my repo until it is updated in PyPi to the next version.
Current operating status is used as the state (heating/cooling/idle) instead of the mode it is set to (heat/cool/auto).
This should not be required now if you use the isy994-climate-dev branch. I pushed a PyISY_beta package to PyPi which the component should pull when it loads.
The PR request is in on GitHub and has been reviewed. Currently, I am waiting for the PyISY changes to be accepted (the Hass reviewers are also considering accepting my temporary fork of PyISY)
anybody tested this with zwave thermostats yet? I’m just installing it in my dev hass instance, and it’s bombing, but I need to dig into it to make sure it’s not a misconfig…
File "/usr/lib/python3.5/asyncio/tasks.py", line 239, in _step
result = coro.send(None)
File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/helpers/entity_platform.py", line 365, in _async_add_entity
await entity.async_update_ha_state()
File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/helpers/entity.py", line 225, in async_update_ha_state
self._async_write_ha_state()
File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/helpers/entity.py", line 256, in _async_write_ha_state
attr.update(self.device_state_attributes or {})
File "/home/homeassistant/.homeassistant/custom_components/isy994/__init__.py", line 484, in device_state_attributes
for name, val in self._node.aux_properties.items():
AttributeError: 'list' object has no attribute 'items'
EDIT: here’s what the _node.aux_properties contains:
Hm, I’m pretty sure I pulled the custom component files from your latest release, but I’ll double check this. I’ve enabled debug logs and created an issue for you - thanks! https://github.com/shbatm/home-assistant/issues/1
edit: confirmed I cloned out of the correct branch, all files md5 the same.
I just followed the above steps with hassio and am getting an error in the logs and no climate device showing up in the UI. I am using an ISY994i with a Venstar T1800.
2019-06-06 13:55:00 ERROR (MainThread) [homeassistant.core] Error doing job: Tas
k exception was never retrieved
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 3
65, in _async_add_entity
await entity.async_update_ha_state()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 225, in as
ync_update_ha_state
self._async_write_ha_state()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 255, in _a
sync_write_ha_state
attr.update(self.state_attributes or {})
File "/usr/src/homeassistant/homeassistant/components/climate/__init__.py", li
ne 211, in state_attributes
self.precision),
File "/usr/src/homeassistant/homeassistant/helpers/temperature.py", line 22, i
n display_temp
"Temperature is not a number: {}".format(temperature))
TypeError: Temperature is not a number: None