Code Monkey home page Code Monkey logo

hacs-isy994's People

Contributors

bdraco avatar shbatm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

bdraco

hacs-isy994's Issues

Clicking on Insteon scene in HA Overview UI errors

Version 1.1

2020-03-06 18:10:01 WARNING (MainThread) [homeassistant.components.media_player] Updating roku media_player took longer than the scheduled update interval 0:00:10
2020-03-06 18:10:07 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection.1344947856] 'Group' object has no attribute 'on'
Traceback (most recent call last):
File "/srv/homeassistant/lib/python3.7/site-packages/homeassistant/components/websocket_api/commands.py", line 134, in handle_call_service
connection.context(msg),
File "/srv/homeassistant/lib/python3.7/site-packages/homeassistant/core.py", line 1230, in async_call
await asyncio.shield(self._execute_service(handler, service_call))
File "/srv/homeassistant/lib/python3.7/site-packages/homeassistant/core.py", line 1253, in _execute_service
await handler.func(service_call)
File "/srv/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/entity_component.py", line 198, in handle_service
self._platforms.values(), func, call, required_features
File "/srv/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/service.py", line 402, in entity_service_call
future.result() # pop exception if have
File "/srv/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/entity.py", line 590, in async_request_call
await coro
File "/srv/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/service.py", line 433, in _handle_entity_call
await result
File "/srv/homeassistant/lib/python3.7/site-packages/homeassistant/helpers/entity.py", line 615, in async_turn_on
await self.hass.async_add_job(ft.partial(self.turn_on, **kwargs))
File "/usr/lib/python3.7/concurrent/futures/thread.py", line 57, in run
result = self.fn(*self.args, **self.kwargs)
File "/home/homeassistant/.homeassistant/custom_components/isy994/switch.py", line 61, in turn_on
if not self._node.on():
AttributeError: 'Group' object has no attribute 'on'

Add Services to Allow Direct REST Commands to be sent

Need to add services to allow:
[ ] Fast On / Fast Off Commands
[ ] Fade Up/Down/Stop Commands
[ ] Scene DIM/BRIGHTEN (3% bump) Commands
[ ] Generic ISY Device Commands
[ ] Live Reload of ISY Nodes (disconnect, update, reconnect, reprocess nodes) so that Home Assistant doesn't need to be restarted every time something is changed in the ISY.

Error while setting up isy994 platform for binary_sensor

V 1.3.3 of the ISY994 component.
V 0.108.3 of HA

I'm getting the following error in the log:

Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 186, in _async_setup_platform
await asyncio.gather(*pending)
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 295, in async_add_entities
await asyncio.gather(*tasks)
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 346, in _async_add_entity
device_info = entity.device_info
File "/config/custom_components/isy994/init.py", line 687, in device_info
device_info["model"] += (
KeyError: 'model'

The same error is happening for a lock.

Fatal Error in HA Core 0.109

ISY Custom Component yields fatal error upon update to HA Core 0.109.

Some forum posts suggest that this is affecting the native component and this Custom Component while some state that the native component is working:

https://community.home-assistant.io/t/0-109-new-integrations-page-and-weather-card-frontend-lost-weight/191097/126

https://community.home-assistant.io/t/0-109-new-integrations-page-and-weather-card-frontend-lost-weight/191097/86

Reverted back to 0.108.9, so do not have the exact error in front of me, sorry.

HACS-isy994 - Climate module error

Hi again

this is tested with version HACS 1.3.6. on HASS 0.108.6

get a series of error with the climate module.

see log capture:

2020-04-22 15:31:06 WARNING (SyncWorker_7) [custom_components.isy994] Bad ISY Request: http://192.168.3.9:80/rest/vars/definitions/2 404: retry #0
2020-04-22 15:31:07 WARNING (SyncWorker_7) [custom_components.isy994] Bad ISY Request: http://192.168.3.9:80/rest/vars/definitions/2 404: retry #1
2020-04-22 15:31:08 WARNING (SyncWorker_7) [custom_components.isy994] Bad ISY Request: http://192.168.3.9:80/rest/vars/definitions/2 404: retry #2
2020-04-22 15:31:09 WARNING (SyncWorker_7) [custom_components.isy994] Bad ISY Request: http://192.168.3.9:80/rest/vars/definitions/2 404: retry #3
2020-04-22 15:31:10 WARNING (SyncWorker_7) [custom_components.isy994] Bad ISY Request: http://192.168.3.9:80/rest/vars/definitions/2 404: retry #4
2020-04-22 15:31:11 WARNING (SyncWorker_7) [custom_components.isy994] Bad ISY Request: http://192.168.3.9:80/rest/vars/definitions/2 404: retry #5
2020-04-22 15:31:11 ERROR (SyncWorker_7) [custom_components.isy994] Bad ISY Request: http://192.168.3.9:80/rest/vars/definitions/2 404: Failed after 5 retries
2020-04-22 15:31:13 ERROR (MainThread) [homeassistant.components.climate] Error while setting up isy994 platform for climate
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 186, in _async_setup_platform
await asyncio.gather(*pending)
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 295, in async_add_entities
await asyncio.gather(*tasks)
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 447, in _async_add_entity
await entity.async_update_ha_state()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 284, in async_update_ha_state
self._async_write_ha_state()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 320, in _async_write_ha_state
state = self.state
File "/config/custom_components/isy994/init.py", line 740, in state
return super().state
File "/usr/src/homeassistant/homeassistant/components/climate/init.py", line 165, in state
return self.hvac_mode
File "/config/custom_components/isy994/climate.py", line 138, in hvac_mode
return UOM_TO_STATES[self._node.aux_properties[CMD_CLIMATE_MODE].uom].get(
KeyError: 'n/a'
2020-04-22 15:31:13 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 284, in async_update_ha_state
self._async_write_ha_state()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 320, in _async_write_ha_state
state = self.state
File "/config/custom_components/isy994/init.py", line 740, in state
return super().state
File "/usr/src/homeassistant/homeassistant/components/climate/init.py", line 165, in state
return self.hvac_mode
File "/config/custom_components/isy994/climate.py", line 138, in hvac_mode
return UOM_TO_STATES[self._node.aux_properties[CMD_CLIMATE_MODE].uom].get(
KeyError: ''

last stack repeats 4 more times.
The device is listed under the entities under configuration

Screenshot from 2020-04-22 17-01-30

Thank for your work.

Config check not passing with the latest HACS component

I'm not sure how long this has been going on, but I noticed that my config check is now failing with the following error, apparently during the installation of PyISY_beta. The config works fine, including interop with the ISY and exposed Insteon devices, so this doesn't seem like a real runtime problem.

I'm currently running 0.108.5 of "supervised Home Assistant" and v0.24.0 of the custom component, but haven't yet gone back and see if these versions are problematic. Is anyone else seeing something similar?

rcoleman@rcoleman-linux ~ % ./ha core check
Error: Testing configuration at /config
INFO:homeassistant.util.package:Attempting install of PyISY_beta==2.0.0rc4
ERROR:homeassistant.scripts.check_config:BURB
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line                                              3028, in _dep_map
    return self.__dep_map
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line                                              2822, in __getattr__
    raise AttributeError(attr)
AttributeError: _DistInfoDistribution__dep_map

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line                                              3019, in _parsed_pkg_info
    return self._pkg_info
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line                                              2822, in __getattr__
    raise AttributeError(attr)
AttributeError: _pkg_info

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/scripts/check_config.py", line 204,                                              in check
    async_check_ha_config_file(hass)
  File "/usr/local/lib/python3.7/asyncio/base_events.py", line 587, in run_until                                             _complete
    return future.result()
  File "/usr/src/homeassistant/homeassistant/helpers/check_config.py", line 121,                                              in async_check_ha_config_file
    component = integration.get_component()
  File "/usr/src/homeassistant/homeassistant/loader.py", line 268, in get_compon                                             ent
    cache[self.domain] = importlib.import_module(self.pkg_path)
  File "/usr/local/lib/python3.7/importlib/__init__.py", line 127, in import_mod                                             ule
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/config/custom_components/isy994/__init__.py", line 8, in <module>
    from pyisy import ISY
  File "/usr/local/lib/python3.7/site-packages/pyisy/__init__.py", line 29, in <                                             module>
    __version__ = pkg_resources.get_distribution("pyisy-beta").version
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line                                              482, in get_distribution
    dist = get_provider(dist)
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line                                              358, in get_provider
    return working_set.find(moduleOrReq) or require(str(moduleOrReq))[0]
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line                                              901, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line                                              795, in resolve
    new_requirements = dist.requires(req.extras)[::-1]
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line                                              2743, in requires
    dm = self._dep_map
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line                                              3030, in _dep_map
    self.__dep_map = self._compute_dependencies()
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line                                              3039, in _compute_dependencies
    for req in self._parsed_pkg_info.get_all('Requires-Dist') or []:
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line                                              3021, in _parsed_pkg_info
    metadata = self.get_metadata(self.PKG_INFO)
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line                                              1422, in get_metadata
    value = self._get(path)
  File "/usr/local/lib/python3.7/site-packages/pkg_resources/__init__.py", line                                              1618, in _get
    with open(path, 'rb') as stream:
FileNotFoundError: [Errno 2] No such file or directory: '/usr/local/lib/python3.                                             7/site-packages/urllib3-1.25.8.dist-info/METADATA'
Fatal error while loading config: [Errno 2] No such file or directory: '/usr/loc                                             al/lib/python3.7/site-packages/urllib3-1.25.8.dist-info/METADATA'
Failed config
  General Errors:
    - [Errno 2] No such file or directory: '/usr/local/lib/python3.7/site-packag                                             es/urllib3-1.25.8.dist-info/METADATA'

Successful config (partial)

IOLinc Not Showing Properly

  1. haven’t changed the sensor string, in fact these aren’t even referenced anywhere in the hassio config. I only use them in floorplan and homekit.
  2. Unlike my thermostat device, these aren’t grouped since at one point I had them in separate folders in the ISY UI.

My other I/O Linc that is acting the same way doesn’t have sensor in the name and is only mentioned in customize.yaml (which of course isn’t working since there I refer to it as a switch and it’s coming in as a sensor):

switch.projector_screen_trigger:
  hidden: true

The developer tools show:

Entity State Attributes
sensor.projector_screen 0.0 unit_of_measurement: 100 friendly_name: Projector Screen
sensor.projector_screen_trigger 0.0 unit_of_measurement: 100 friendly_name: Projector Screen Trigger

And the nodes look like:

Copy to clipboard

  <node flag="128" nodeDefId="BinaryControl_ADV">
    <address>28 C0 72 1</address>
    <name>Projector Screen Trigger</name>
    <parent type="3">62374</parent>
    <type>7.0.65.0</type>
    <enabled>true</enabled>
    <deviceClass>0</deviceClass>
    <wattage>0</wattage>
    <dcPeriod>0</dcPeriod>
    <startDelay>0</startDelay>
    <endDelay>0</endDelay>
    <pnode>28 C0 72 1</pnode>
    <property id="ST" value="0" formatted="Off" uom="100"/>
  </node>
  <node flag="0" nodeDefId="RelayLampOnly">
    <address>28 C0 72 2</address>
    <name>Projector Screen</name>
    <parent type="3">62374</parent>
    <type>7.0.65.0</type>
    <enabled>true</enabled>
    <deviceClass>0</deviceClass>
    <wattage>0</wattage>
    <dcPeriod>0</dcPeriod>
    <startDelay>0</startDelay>

Reference Forum Topic

https://community.home-assistant.io/t/insteon-thermostat-2441th-for-isy/97821/62

FanLinc Stats Disapears

With update to 1.3.1 from 1.2.2, when changing fan speeds in HA the speed attribute disappears from the FanLinc entry. However if you change the speed from an external source the speed attribute reappears with the correct status returned.

Turning lights on with brightness=100% doesn't work when lights have Local On Level

Problem

Within ISY994 console, I have configured a light to have an On Level (Applied Locally) of 50% (127). In Home Assistant, if I issue a service call for light.turn_on with service data of entity_id: light.kitchen_light and brightness: 255 the light turns on to 50% (On Level). This is incorrect behavior and the light should turn on to full brightness.

Solution

After some testing and watching "Event Viewer" in ISY994, it looks like there is some special behavior within HASS for brightness levels 255 vs. 254. Specifically, light.turn_on with:

  • brightness: 255 - light turns on to 127 (NOT expected, this is the OnLevel bug)
  • brightness: 254 - light turns on to 255 (NOT expected)
  • brightness: 253 - light turns on to 253 (expected)

I modified light.py to take advantage of this special treatment of 255 vs. 254 and the bug goes away. Here is the diff:

    def turn_on(self, brightness=None, **kwargs) -> None:
        """Send the turn on command to the ISY994 light device."""
+       if brightness==255:
+           brightness=254
        if not self._node.on(val=brightness):
            _LOGGER.debug("Unable to turn on light")

The text is missing

I just updated to the new version and the text is not showing up on the integration pop-up. I changed the theme back to default and that doesn't help.
Screen Shot 2020-03-16 at 2 39 53 PM

Also, I had to reinstall the ISY plugin.

Latest version 1.0.14 failed to load

I've tried upgrading to the latest version of the integration, and it's not loading properly for me.

HA: 0.106.2
hacs-isy994: 1.0.12 & 1.0.14

HA spits out the obligatory, "this integration failed to load"..

I've tried downgrading to 1.0.12, same issue, upgrading to 1.0.12, same issue.
Next step is to remove & re-add entirely.

Logs:

2020-02-29 11:23:18 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-29 11:23:26 WARNING (MainThread) [custom_components.isy994] Bad ISY Request: http://192.168.2.50:80/rest/vars/definitions/1 404: retry #0
2020-02-29 11:23:28 WARNING (MainThread) [custom_components.isy994] Bad ISY Request: http://192.168.2.50:80/rest/vars/definitions/1 404: retry #1
2020-02-29 11:23:29 WARNING (MainThread) [custom_components.isy994] Bad ISY Request: http://192.168.2.50:80/rest/vars/definitions/1 404: retry #2
2020-02-29 11:23:30 WARNING (MainThread) [custom_components.isy994] Bad ISY Request: http://192.168.2.50:80/rest/vars/definitions/1 404: retry #3
2020-02-29 11:23:31 WARNING (MainThread) [custom_components.isy994] Bad ISY Request: http://192.168.2.50:80/rest/vars/definitions/1 404: retry #4
2020-02-29 11:23:32 WARNING (MainThread) [custom_components.isy994] Bad ISY Request: http://192.168.2.50:80/rest/vars/definitions/1 404: retry #5
2020-02-29 11:23:32 ERROR (MainThread) [custom_components.isy994] Bad ISY Request: http://192.168.2.50:80/rest/vars/definitions/1 404: Failed after 5 retries
2020-02-29 11:23:32 WARNING (MainThread) [custom_components.isy994] Bad ISY Request: http://192.168.2.50:80/rest/vars/definitions/2 404: retry #0
2020-02-29 11:23:33 WARNING (MainThread) [custom_components.isy994] Bad ISY Request: http://192.168.2.50:80/rest/vars/definitions/2 404: retry #1
2020-02-29 11:23:34 WARNING (MainThread) [custom_components.isy994] Bad ISY Request: http://192.168.2.50:80/rest/vars/definitions/2 404: retry #2
2020-02-29 11:23:35 WARNING (MainThread) [custom_components.isy994] Bad ISY Request: http://192.168.2.50:80/rest/vars/definitions/2 404: retry #3
2020-02-29 11:23:36 WARNING (MainThread) [custom_components.isy994] Bad ISY Request: http://192.168.2.50:80/rest/vars/definitions/2 404: retry #4
2020-02-29 11:23:37 WARNING (MainThread) [custom_components.isy994] Bad ISY Request: http://192.168.2.50:80/rest/vars/definitions/2 404: retry #5
2020-02-29 11:23:37 ERROR (MainThread) [custom_components.isy994] Bad ISY Request: http://192.168.2.50:80/rest/vars/definitions/2 404: Failed after 5 retries
2020-02-29 11:23:37 ERROR (MainThread) [homeassistant.setup] Error during setup of component isy994
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/setup.py", line 170, in _async_setup_component
    hass, processed_config
  File "/config/custom_components/isy994/__init__.py", line 484, in async_setup
    log=_LOGGER,
  File "/usr/local/lib/python3.7/site-packages/PyISY/isy.py", line 87, in __init__
    var_xml=self.conn.get_variables(),
  File "/usr/local/lib/python3.7/site-packages/PyISY/Variables/__init__.py", line 65, in __init__
    self.parse_definitions(def_xml)
  File "/usr/local/lib/python3.7/site-packages/PyISY/Variables/__init__.py", line 87, in parse_definitions
    xmldocs = [minidom.parseString(xml) for xml in xmls]
  File "/usr/local/lib/python3.7/site-packages/PyISY/Variables/__init__.py", line 87, in <listcomp>
    xmldocs = [minidom.parseString(xml) for xml in xmls]
  File "/usr/local/lib/python3.7/xml/dom/minidom.py", line 1968, in parseString
    return expatbuilder.parseString(string)
  File "/usr/local/lib/python3.7/xml/dom/expatbuilder.py", line 925, in parseString
    return builder.parseString(string)
  File "/usr/local/lib/python3.7/xml/dom/expatbuilder.py", line 223, in parseString
    parser.Parse(string, True)
TypeError: a bytes-like object is required, not 'NoneType'

Let me know if you need more details, and thanks!

Variable Sensors Have Unknown State

After upgrading from 1.2.2 to 1.3.1, all variable sensors have a state of "unknown".
Running HA 0.107.7.
ISY v5.0.16C.
Let me know what other info is needed.

Error on startup with 1.0.8

Error during setup of component isy994
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/setup.py", line 172, in _async_setup_component
hass, processed_config
File "/config/custom_components/isy994/init.py", line 482, in async_setup
_categorize_nodes(hass, isy.nodes, ignore_identifier, sensor_identifier)
File "/config/custom_components/isy994/init.py", line 348, in _categorize_nodes
if _check_for_insteon_type(hass, node):
File "/config/custom_components/isy994/init.py", line 198, in _check_for_insteon_type
if domain == "binary_sensor" and int(node.nid[-1]) == 2:
ValueError: invalid literal for int() with base 10: 'D'

Discovery via SSDP

This won't actually work until merged back into HA core since discovery needs to start the config flow based on the name registered in manifest.json

python3 -m netdisco dump
 <UPNPEntry http://192.168.1.32/desc - upnp:rootdevice>,
 <UPNPEntry http://192.168.1.32/desc - uuid:[snip]>,
 <UPNPEntry http://192.168.1.32/desc - urn:udi-com:device:X_Insteon_Lighting_Device:1>,
 <UPNPEntry http://192.168.1.32/desc - urn:udi-com:service:X_Insteon_Lighting_Service:1>,
    async def async_step_ssdp(self, discovery_info):
        """Handle a discovered ISY994 device."""
        _LOGGER.debug("SSDP discovery_info: %s", discovery_info)

        parsed_url = urlparse(discovery_info[ssdp.ATTR_SSDP_LOCATION])
        friendly_name = discovery_info[ssdp.ATTR_UPNP_FRIENDLY_NAME]

...
        return await self.async_step_user(prefilled_data)

Issue generating 'Thermostat' cards on versions >1.0.15

When generating a new 'thermostat' card in Home Assistant with HACS ISY on a version greater than 1.0.15 the card grays out and states "Unavailable" with access to climate functions being entirely disabled.

This error should be easy to reproduce by simply deleting your exisiting thermostat card and trying to recreate it on the latest version of HACS ISY.

Error:

Error doing job: Task exception was never retrieved
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 434, in _async_add_entity
await entity.async_update_ha_state()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 284, in async_update_ha_state
self._async_write_ha_state()
File "/usr/src/homeassistant/homeassistant/helpers/entity.py", line 327, in _async_write_ha_state
attr.update(self.state_attributes or {})
File "/usr/src/homeassistant/homeassistant/components/climate/init.py", line 236, in state_attributes
self.target_temperature_low,
File "/config/custom_components/isy994/climate.py", line 173, in target_temperature_low
self._node.aux_properties[PROP_SETPOINT_HEAT].formatted.replace("°", "")
ValueError: could not convert string to float:

Uncontrollable devices (Remotes, KeypadLinc Buttons) should report events only

Some devices on the ISY cannot be controlled via the REST interface (or Insteon protocol), such as the KeypadLinc children buttons and RemoteLincs. These devices are control-only, but there is currently no way to add them to the ISY without adding them as an entity.

Proposal: add a binary_sensor for the ISY itself to show connection status, and then subscribe to the change events for these types of devices under that parent device. That way, isy994_control events can be fired for them, but we don't need to include them as stand-alone entities.

v1.1.1 configuration error

@shbatm, v1.1.1 just installed and I am getting this configuration error again. I did not changed my configuration.yaml, I just installed the ISY994 v1.1.1 update.

tdw-0000

tdw-0002

tdw-0001

isy994 v1.3.3

@shbatm I have tried another clean install of v1.3.3 on HA 0.108.3 and I am running into some issues.

SNAG-0018

SNAG-0019

No devices are showing
SNAG-0020

The logs show the following just after installation via HACS then integrations.

2020-04-11 13:35:09 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 216, in async_setup
    hass, self
  File "/config/custom_components/isy994/__init__.py", line 519, in async_setup_entry
    webroot=host.path,
  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 93, in __init__
    self.networking = NetworkResources(self, xml=self.conn.get_network())
  File "/usr/local/lib/python3.7/site-packages/pyisy/networking.py", line 56, in __init__
    self.parse(xml)
  File "/usr/local/lib/python3.7/site-packages/pyisy/networking.py", line 65, in parse
    xmldoc = minidom.parseString(xml)
  File "/usr/local/lib/python3.7/xml/dom/minidom.py", line 1968, in parseString
    return expatbuilder.parseString(string)
  File "/usr/local/lib/python3.7/xml/dom/expatbuilder.py", line 925, in parseString
    return builder.parseString(string)
  File "/usr/local/lib/python3.7/xml/dom/expatbuilder.py", line 223, in parseString
    parser.Parse(string, True)
xml.parsers.expat.ExpatError: not well-formed (invalid token): line 1, column 13031

I only did an integration for 192.168.0.3 (House) but 192.168.0.2 (Shop) is also shown in states and they both have the same site_id:?

SNAG-0021

Climate device no loger available

HACS ISY994 version: 1.2.1
HA: 107.1

My thermostat simply says n/a. More digging shows: Entity not available: climate.thermostat

I believe the relevant logs are

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 334, in _async_add_entity
    device_info = entity.device_info
  File "/config/custom_components/isy994/__init__.py", line 690, in device_info
    device_info["model"] += (
KeyError: 'model'
2020-03-19 11:16:52 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 334, in _async_add_entity
    device_info = entity.device_info
  File "/config/custom_components/isy994/__init__.py", line 690, in device_info
    device_info["model"] += (
KeyError: 'model'

I've logged into my ISY, and can query, the thermostat just fine. I've also adjusted the temperature on the thermostat, as well as the ISY so I'm fairly certain communication is working there. Coincidentally I also recently replaced the batteries in my thermostat- which I believe had nothing todo with this problem.

Happy to provide as much details as possible.
Cheers.

PyIsy not installing

‘’’
Unable to install package PyISY_beta==2.0.0.dev84: ERROR: Command errored out with exit status 1:
command: /home/pashdown/homeassistant/bin/python3.7 /home/pashdown/homeassistant/lib/python3.7/site-packages/pip/_vendor/pep517/_in_process.py prepare_metadata_for_build_wheel /tmp/tmp138fzsp0
cwd: /tmp/pip-install-dvy_81nl/PyISY-beta
Complete output (51 lines):
fatal: not a git repository (or any parent up to mount point /)
Stopping at filesystem boundary (GIT_DISCOVERY_ACROSS_FILESYSTEM not set).
Traceback (most recent call last):
File "/tmp/pip-build-env-evqxx96c/normal/lib/python3.7/site-packages/setuptools_git_version.py", line 10, in validate_version_format
version = check_output(command.split()).decode('utf-8').strip()
File "/usr/lib/python3.7/subprocess.py", line 411, in check_output
**kwargs).stdout
File "/usr/lib/python3.7/subprocess.py", line 512, in run
output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['git', 'describe', '--tags', '--long', '--dirty']' returned non-zero exit status 128.

‘’’

I/O Inside Event Loop During Config Flow

2020-05-02 15:31:16 INFO (MainThread) [custom_components.isy994.config_flow] ISY Request: http://192.168.10.18:80/rest/config
2020-05-02 15:31:17 WARNING (MainThread) [homeassistant.util.async_] Detected I/O inside the event loop. This is causing stability issues. Please report issue to the custom component author for isy994 doing I/O at custom_components/isy994/config_flow.py, line 81: partial(Configuration, log=_LOGGER, xml=isy_conn.get_config())

@bdraco - Thoughts?

Renaming devices in ISY, keeping HA in sync

I had dimmers LightA(1.1) and LightB(1.2). My device 1.2 died. Only spare I had was a OnOff switch. Since LightB has to be a dimmer I rewired dimmer 1.1 to LightB and wired onoff 1.3 on LightA. I then went into the ISY UI and deleted LightB, renamed LightA to LightB, named the new OnOff LightB and fixed up the groups. This all worked fine in the ISY.

HA got confused. The new OnOff device is missing (note this device name switched from being a dimmer to an OnOff). I also have two groups LightB, an old one switch.lightb and a new one switch.lightb_2. There should only be one.

So how do I get the HA and ISY synced again after edits like this?

Exception while importing config flow

2020-03-15 21:51:37 ERROR (MainThread) [custom_components.isy994.config_flow] Unexpected exception
Traceback (most recent call last):
  File "/config/custom_components/isy994/config_flow.py", line 100, in async_step_user
    info = await validate_input(self.hass, user_input)
  File "/config/custom_components/isy994/config_flow.py", line 72, in validate_input
    log=_LOGGER,
  File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
TypeError: __init__() got an unexpected keyword argument 'log'

Tracking it down now

Duplicate Devices but Single Entities

Thanks for all your awesome work and support, hope the things I continue to find are useful and help improve the functionality of your module!

Unfortunately I'm not really sure when this started happening, but today I noticed that there are duplicate entries for somethings in the Devices area where there are only single entries in the Entities area. Attached there are 2 Down Hall Lights and 2 Downstairs Thermostats. Each of these Devices seems to have a unique identifier as one of the Down Hall Lights was set in the past to have the Foyer Area where the supposed duplicate has no Area. This would cause issues when trying to create automation against a Device.

image
image

Error loading platform - UNIT_UV_INDEX

HA Version: 0.109.0
Platform Version: 1.3.6

Logs: (related to isy994, the first entry is to be expected)

2020-04-29 12:07:03 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 experience issues with Home Assistant.
2020-04-29 12:07:10 ERROR (MainThread) [homeassistant.setup] Setup failed for isy994: Unable to import component: cannot import name 'UNIT_UV_INDEX' from 'homeassistant.const' (/usr/src/homeassistant/homeassistant/const.py)
2020-04-29 12:08:04 WARNING (MainThread) [homeassistant.helpers.translation] isy994: the '.translations' directory has been moved, the new name is 'translations', starting with Home Assistant 0.111 your translations will no longer load if you do not move/rename this 
2020-04-29 12:09:33 ERROR (MainThread) [aiohttp.server] Error handling request
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/aiohttp/web_protocol.py", line 418, in start
    resp = await task
  File "/usr/local/lib/python3.7/site-packages/aiohttp/web_app.py", line 458, in _handle
    resp = await handler(request)
  File "/usr/local/lib/python3.7/site-packages/aiohttp/web_middlewares.py", line 119, in impl
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/real_ip.py", line 39, in real_ip_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 73, in ban_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 127, in auth_middleware
    return await handler(request)
  File "/usr/src/homeassistant/homeassistant/components/http/view.py", line 125, in handle
    result = await result
  File "/usr/src/homeassistant/homeassistant/components/config/config_entries.py", line 88, in delete
    result = await hass.config_entries.async_remove(entry_id)
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 604, in async_remove
    unload_success = await self.async_unload(entry_id)
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 704, in async_unload
    return await entry.async_unload(self.hass)
  File "/usr/src/homeassistant/homeassistant/config_entries.py", line 272, in async_unload
    component = integration.get_component()
  File "/usr/src/homeassistant/homeassistant/loader.py", line 270, in get_component
    cache[self.domain] = importlib.import_module(self.pkg_path)
  File "/usr/local/lib/python3.7/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/config/custom_components/isy994/__init__.py", line 50, in <module>
    from .const import (
  File "/config/custom_components/isy994/const.py", line 21, in <module>
    from homeassistant.const import (
ImportError: cannot import name 'UNIT_UV_INDEX' from 'homeassistant.const' (/usr/src/homeassistant/homeassistant/const.py)

Translations and a constant issue with 0.109.0, causing component to fail setup and not load

I'm getting the following in home-assistant.log after updating to 0.109.0:

2020-04-29 10:17:40 ERROR (MainThread) [homeassistant.setup] Setup failed for isy994: Unable to import component: cannot import name 'UNIT_UV_INDEX' from 'homeassistant.const' (/usr/src/homeassistant/homeassistant/const.py)
2020-04-29 10:18:03 WARNING (MainThread) [homeassistant.helpers.translation] isy994: the '.translations' directory has been moved, the new name is 'translations', starting with Home Assistant 0.111 your translations will no longer load if you do not move/rename this

For the first one, I removed the two references to "UNIT_UV_INDEX" from const.py and the component is loading and working now.

Unable to add new variables as sensors

HACS ISY994 version: 1.2.1

HA: 107.1
ISY994i: 5.0.16C

After recently adding new variables to ISY994i and setting up configuration.yaml with the new variables (and restarting HA), no new sensors are created for the new variables. For the past several months I have had 8 ‘variables as sensors’ setup and working flawlessly in HA, but I find I am unable to add new sensors for the new variables.

Is it something I’m doing wrong or a code issue?

AttributeError: 'Nodes' object has no attribute 'status'

2019-12-17 16:40:16 ERROR (MainThread) [homeassistant.setup] Error during setup of component isy994
Traceback (most recent call last):
File "/usr/src/homeassistant/homeassistant/setup.py", line 172, in _async_setup_component
hass, processed_config
File "/config/custom_components/isy994/init.py", line 474, in async_setup
log=_LOGGER,
File "/usr/local/lib/python3.7/site-packages/PyISY/isy.py", line 82, in init
self.nodes = Nodes(self, xml=self.conn.get_nodes())
File "/usr/local/lib/python3.7/site-packages/PyISY/Nodes/init.py", line 89, in init
self.parse(xml)
File "/usr/local/lib/python3.7/site-packages/PyISY/Nodes/init.py", line 288, in parse
Group(self, nid, nname, members, controllers),
File "/usr/local/lib/python3.7/site-packages/PyISY/Nodes/group.py", line 33, in init
for m in self.members
File "/usr/local/lib/python3.7/site-packages/PyISY/Nodes/group.py", line 33, in
for m in self.members
AttributeError: 'Nodes' object has no attribute 'status'

Latest version of hass.io and hacs integration. I get this PyISY error from my primary ISY which has several Polyglot Nodeservers running. From a secondary ISY with no nodeservers the component loads fine.

Entity status not updating

HACS-ISY994: v1.0.12-beta1

All isy-994 entities function from withing hassio but entity status do not update.

Also home-assistant.log shows this for each entity.

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 415, in _async_add_entity
    raise HomeAssistantError(msg)
homeassistant.exceptions.HomeAssistantError: Entity id already exists: light.kitchen_lights. Platform isy994 does not generate unique IDs
2020-02-24 17:21:01 ERROR (MainThread) [homeassistant.core] Error doing job: Task exception was never retrieved

Capture event from Keypad button

I want to receive a HA event from a keypad button that does not have an Insteon device associated with it. To do this I created an Insteon scene and put the button into it. That causes scene events to be sent when the button is pressed.

So how do I catch these scene events in a HA automation? So far I have only been able to catch Insteon device events and not Scene events.

Home Assistant looses connection to ISY after several hours

I seem to be experiencing intermittent connectivity drops between the ISY and Home Assistant. I am not really sure how to troubleshoot it but it happens between 12-48 hours. If I restart Home Assistant everything comes back to life and works fine. I don't notice anything unusual in the Home Assistant > Developer Tools > Logs. I am still somewhat new to HA so I would appreciate any feedback.

running version 0.106.5 of HA w/ v1.1.1

hacs-isy994 v1.3.4 - ignored entities

@shbatm got more errors after upgrading to v1.3.4.

2020-04-11 22:23:18 ERROR (SyncWorker_9) [custom_components.isy994] ISY Could not parse response, poorly formatted XML.: NetworkResources
2020-04-11 22:23:20 ERROR (MainThread) [homeassistant.components.lock] Entity id already exists - ignoring: lock.front_door_lock. Platform isy994 does not generate unique IDs
2020-04-11 22:23:20 ERROR (MainThread) [homeassistant.components.light] Entity id already exists - ignoring: light.master_bedroom_lights. Platform isy994 does not generate unique IDs
2020-04-11 22:23:20 ERROR (MainThread) [homeassistant.components.light] Entity id already exists - ignoring: light.dining_room_lights. Platform isy994 does not generate unique IDs
2020-04-11 22:23:20 ERROR (MainThread) [homeassistant.components.light] Entity id already exists - ignoring: light.kitchen_lights. Platform isy994 does not generate unique IDs
2020-04-11 22:23:20 ERROR (MainThread) [homeassistant.components.light] Entity id already exists - ignoring: light.zw_002_multilevel_switch. Platform isy994 does not generate unique IDs
2020-04-11 22:23:20 ERROR (MainThread) [homeassistant.components.light] Entity id already exists - ignoring: light.exterior_lights_front. Platform isy994 does not generate unique IDs
2020-04-11 22:23:20 ERROR (MainThread) [homeassistant.components.light] Entity id already exists - ignoring: light.living_room_lights_front. Platform isy994 does not generate unique IDs
2020-04-11 22:23:20 ERROR (MainThread) [homeassistant.components.light] Entity id already exists - ignoring: light.stairway_lights_down. Platform isy994 does not generate unique IDs
2020-04-11 22:23:20 ERROR (MainThread) [homeassistant.components.light] Entity id already exists - ignoring: light.stairway_lights_up. Platform isy994 does not generate unique IDs
2020-04-11 22:23:20 ERROR (MainThread) [homeassistant.components.light] Entity id already exists - ignoring: light.living_room_lights_back. Platform isy994 does not generate unique IDs
2020-04-11 22:23:21 ERROR (MainThread) [homeassistant.components.switch] Entity id already exists - ignoring: switch.driveway_detection_relay. Platform isy994 does not generate unique IDs
2020-04-11 22:23:21 ERROR (MainThread) [homeassistant.components.switch] Entity id already exists - ignoring: switch.reloading_room_outlet. Platform isy994 does not generate unique IDs
2020-04-11 22:23:21 ERROR (MainThread) [homeassistant.components.switch] Entity id already exists - ignoring: switch.reloading_room_light. Platform isy994 does not generate unique IDs
2020-04-11 22:23:21 ERROR (MainThread) [homeassistant.components.switch] Entity id already exists - ignoring: switch.garage_lights. Platform isy994 does not generate unique IDs
2020-04-11 22:23:21 ERROR (MainThread) [homeassistant.components.switch] Entity id already exists - ignoring: switch.garage_door_house_relay. Platform isy994 does not generate unique IDs
2020-04-11 22:23:21 ERROR (MainThread) [homeassistant.components.switch] Entity id already exists - ignoring: switch.exterior_lights_all. Platform isy994 does not generate unique IDs
2020-04-11 22:23:21 ERROR (MainThread) [homeassistant.components.switch] Entity id already exists - ignoring: switch.garage_door_warning_lights. Platform isy994 does not generate unique IDs
2020-04-11 22:23:21 ERROR (MainThread) [homeassistant.components.switch] Entity id already exists - ignoring: switch.auto_dr. Platform isy994 does not generate unique IDs
2020-04-11 22:23:21 ERROR (MainThread) [homeassistant.components.switch] Entity id already exists - ignoring: switch.bedtime_lights_out. Platform isy994 does not generate unique IDs
2020-04-11 22:23:21 ERROR (MainThread) [homeassistant.components.switch] Entity id already exists - ignoring: switch.kodi_event. Platform isy994 does not generate unique IDs
2020-04-11 22:23:22 ERROR (MainThread) [homeassistant.components.binary_sensor] Entity id already exists - ignoring: binary_sensor.driveway_detection_status. Platform isy994 does not generate unique IDs
2020-04-11 22:23:22 ERROR (MainThread) [homeassistant.components.binary_sensor] Entity id already exists - ignoring: binary_sensor.zw_002_color_switch. Platform isy994 does not generate unique IDs
2020-04-11 22:23:22 ERROR (MainThread) [homeassistant.components.binary_sensor] Entity id already exists - ignoring: binary_sensor.garage_door_house_off_closed. Platform isy994 does not generate unique IDs
2020-04-11 22:23:22 ERROR (MainThread) [homeassistant.components.binary_sensor] Entity id already exists - ignoring: binary_sensor.myq_service. Platform isy994 does not generate unique IDs
2020-04-11 22:23:22 ERROR (MainThread) [homeassistant.components.binary_sensor] Entity id already exists - ignoring: binary_sensor.house_garage_door. Platform isy994 does not generate unique IDs
2020-04-11 22:23:22 ERROR (MainThread) [homeassistant.components.binary_sensor] Entity id already exists - ignoring: binary_sensor.shop_garage_door. Platform isy994 does not generate unique IDs
2020-04-11 22:23:22 ERROR (MainThread) [homeassistant.components.binary_sensor] Entity id already exists - ignoring: binary_sensor.forecast_5. Platform isy994 does not generate unique IDs
2020-04-11 22:23:22 ERROR (MainThread) [homeassistant.components.binary_sensor] Entity id already exists - ignoring: binary_sensor.forecast_6. Platform isy994 does not generate unique IDs
2020-04-11 22:23:22 ERROR (MainThread) [homeassistant.components.binary_sensor] Entity id already exists - ignoring: binary_sensor.zone2. Platform isy994 does not generate unique IDs
2020-04-11 22:23:22 ERROR (MainThread) [homeassistant.components.binary_sensor] Entity id already exists - ignoring: binary_sensor.zone3. Platform isy994 does not generate unique IDs
2020-04-11 22:23:22 ERROR (MainThread) [homeassistant.components.binary_sensor] Entity id already exists - ignoring: binary_sensor.bond_bridge. Platform isy994 does not generate unique IDs
2020-04-11 22:23:22 ERROR (MainThread) [homeassistant.components.binary_sensor] Entity id already exists - ignoring: binary_sensor.blue_iris. Platform isy994 does not generate unique IDs
2020-04-11 22:23:22 ERROR (MainThread) [homeassistant.components.binary_sensor] Entity id already exists - ignoring: binary_sensor.zw_003_color_switch. Platform isy994 does not generate unique IDs

hacs-isy994 v1.3.5 - ISY Could not parse response

@shbatm just did a clean install of hacs-isy994 v1.3.5. Configured 2 ISY994's and this is the only error.

2020-04-12 22:41:40 ERROR (SyncWorker_11) [custom_components.isy994] ISY Could not parse response, poorly formatted XML.: NetworkResources

After 1.0.15 HVAC Fan On/Auto Error

When switching the HVAC Fan to On or Auto a popup message is shown

Failed to call service climate/set_fan_mode. 'Node' object has no attribute 'set_fan_state'

Duplicate devices

Sometime in the last week, my ISY994 integration seems to have created duplicate devices. Entities are not duplicated and there are exactly two devices per entity. Only one device seems to be actually associated with its corresponding entity in the UI, however.

Looking in core.device_registry, I can indeed see two of each device. The only difference seems to be that the MAC for the ISY is colon-separated in one and not the other.

"identifiers": [
[
"isy994",
"0021b901XXYY_F F1 ZZ 1"
]

vs

"identifiers": [
[
"isy994",
"00:21:b9:01:XX:YY_F F1 ZZ 1"
]

Is there a way to automatically clean this up, or should I just remove the duplicate entries? If so, which is correct - colon-separated or not? Thanks.

it's not working when installing with HACS using v1.09

I've installed this via HACS, and I've added (already had) the isy config values. When I restart HA, it takes forever to restart, and once it finally does, it says that there's something wrong with the isy994 configuration, but there is for sure nothing wrong with it. Could this be related to the version of PyISY (I see the requirements are 2.0.0.8 or something like that)?

Insteon scenes as switches

Why are Insteon scenes represented in HA as switches? This is a source of naming conflict for me since I have scenes and switches that are named the same thing.

You can send light up/down commands to groups, so shouldn't they be light entities instead of switches? Even better if they were in the own 'scene' namespace.

BTW I have a very large Insteon system, about 180 devices.

Sensor has two values

Installed the Monoprice Z-Wave Plus Recessed Door/Window Sensor.

ISY installed without an issue.
The devices came over to HA. I did not group them as learned earlier.

The sensor.driveway_gate has its status as "closed 97".
Screen Shot 2020-04-29 at 9 05 20 PM
The _184 which is what has the closed condition has this property:

For some reason it is printing the uom

Attached are the files for the following:
ZW051_1 - Battery

https://pastebin.com/p54Nkwrg

ZW051_184 - Status

https://pastebin.com/1hQvzyvZ

HomeAssistant is not responsive to manual switch changes

On the current release. 1.2.1
Two lights were turned on manually.
HomeAssistant did not change status.
Admin panel indicated status change.
Rebooted ISY and same result.

All devices are still capable of being controlled by HA.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.