@shbatm What is the current status of this in Home Assistant?
I am using this in the Core Integrations, but I cannot determine which version it is.
Everything from the beta version above is in HA Core. If you have the HACS version installed it can be removed.
Iām trying to get started with home assistant. Iāve had a fairly sizeable ISY & Insteon installation for many years. Not really an experienced Forum Poster.
Iām getting an index error during the initial setup of the integration.
ISY994 Initial Setup - IndexError: list index out of range
This post āCalling all ISY994 usersā seems to be a place where a lot of conversation has happened. I thought I would link to my issue from here in case I should have put it here to begin with.
I have a small problem with my isy994i integration. I have a controllinc as part of a scene. If it turn on a scene with the controllinc, and off with another device, such as a keypadlinc, Home Assistant sees the scene as still on since the controllinc state stays āonā even though the rest of the scene is off. Iām unable to turn the scene back on until I hit the off button on the controllinc. Anyone else run into this and have a suggestion?
This sounds similar to the Mini Remotes not updating status. Iāll have to go back and see what we did to manage those, I think we exclude them from Group (Scene) āONā status, but sounds like we need to add the ControlLinc to the same logic.
Can you please provide the node definition for the ControlLinc and Iāll see if thereās a better workaround when I get a chance?
In a web browser, go to http://isy-address/rest/nodes/control_linc_insteon_address and post the response here or on the github issue.
That sounds exactly right. Iāve posted the XML for the node in the github issue, thanks!
Which firmware version are you on for the ISY? Looks like an earlier version of 4.x from the nodedef you posted, unless maybe the ISY doesnāt have a definition for a ControlLinc.
Unfortunately, with an empty type (0.0.0.0) and without a nodeDefId
(newer firmware) thereās no good way to ācategorizeā the device appropriately and reliably in Home Assistant.
Two options:
- Upgrade the ISY firmware, if youāre willing to, and I can update PyISY to look for the correct NodeDefId
- Create a duplicate scene in the ISY with all the same devices in the original (excluding the ControlLinc) and use that scene in Home Assistant for control.
Iām running 4.9.0. Iāve avoided upgrading until I was sure everything would work with HA. Can you confirm all is well?
Yes to HA working with the latest version. I built the latest version of PyISY off of 5.x, running 5.3.x now myself. Only caution I have is that there are some differences in the ISY Scene editing for Insteon (on the ISY Admin Console), that was the only thing that tripped me up. Read the release notes on the ISY Forums before making the leap.
Itās interesting if youāre on 4.9 though that thereās no valid Type value for the ControlLinc. It looks like it may be because of the special way it has to be linked, but Iām curious if they actually have a nodeDefId for it in V5 if thatās the case (these are the āflagsā that were added which makes nodes easier to identify with the API, e.g. āDimmerSwitchOnlyā instead of Type 1.2.57.3).
If youāre not ready to take the leap to V5, option 2 above would be the best and simplest way I can recommend.
I made the leap to 5 and now have
<node flag="128" nodeDefId="DimmerSwitchOnly">
<address>0 6F 45 1</address>
<name>ControlLinc-ControlLinc</name>
<parent type="3">10256</parent>
<type>0.0.0.0</type>
<enabled>true</enabled>
<deviceClass>0</deviceClass>
<wattage>0</wattage>
<dcPeriod>0</dcPeriod>
<startDelay>0</startDelay>
<endDelay>0</endDelay>
<pnode>0 6F 45 1</pnode>
<property id="ST" value="" formatted=" " uom="0"/>
</node>
Great! I hope it wasnāt too much trouble getting everything moved over.
Let me check on my node list and a few people have submitted to me to make sure that excluding DimmerSwitchOnly
from a scene status wonāt be a breaking change and Iāll push the PyISY update when I get a chance.
Ooof, things are much worse now but I think your update to PyISY will fix it. Now anything that has a remotelinc in a scene is handled improperly as the scene is kept ālockedā to the last state of the remotelinc or controllinc.
Are they original RemoteLincs or RemoteLinc2?
Also, how are you running Home Assistant? I can give you a one-line change to try the fix until I can push the update.
In one scene, itās a (2342-242) Mini Remote Switch v.38. The other one is a (2342-222) RemoteLinc 2 Keypad, 8 Scene v.37 The original issue is with a (2430) ControLinc v.00. Iām running in a docker container on Ubuntu.
Fixed the models.
From the Docker command prompt (e.g. docker exec -it homeassistant bash
)
Run these commands then restart Home Assistant, it will wipe the Python cached files for PyISY and make the change to the module (temporary until next upgrade of Home Assistant).
find /usr/local/lib/python3.9/site-packages/pyisy/ -regex '^.*\(__pycache__\|\.py[co]\)$' -delete
sed -i '743i \ \ \ \ \"DimmerSwitchOnly\",' /usr/local/lib/python3.9/site-packages/pyisy/constants.py
exit
If you look at your nodes xml for the Mini Remote Switches, let me know if they show anything besides DimmerSwitchOnly
for the nodeDefId
. I only have the Mini Remotes with the scene buttons, and those are already included in the ādo not use for group statusā list.
Commands have been run. For the mini remote and the remotelinc keypds:
<node flag="128" nodeDefId="RemoteLinc2_ADV">
<address>2E 84 E8 1</address>
<name>Melissa Office Remote - B</name>
<parent type="3">10256</parent>
<type>0.18.55.0</type>
<enabled>true</enabled>
<deviceClass>0</deviceClass>
<wattage>0</wattage>
<dcPeriod>0</dcPeriod>
<startDelay>0</startDelay>
<endDelay>0</endDelay>
<pnode>2E 84 E8 1</pnode>
<property id="ST" value="0" formatted="Off" uom="100"/>
</node>
Are you seeing any change? RemoteLinc2ās were already excluded from the status; their state shouldnāt matter for the scene in HA, only the rest of the devices. In the ISY Admin Console are you seeing any other devices listed as ON for the Scene?
RemoteLinc2 and Mini Remote Switch are now behaving properly. Thanks!
Scratch that. After more tests, Iām running into scene issues with the Mini Remote Switch. If itās left āonā the scene canāt be turned on until I turn it back off.
Anything different about the xml for the mini switch vs scene remote? I donāt have a mini switch to test with and realized my mini remotes havenāt been set up in my new houseāif thereās an issue with those I wonāt be able to test until a couple weeks from now.
Not really
This one doesnāt work correctly
<node flag="128" nodeDefId="RemoteLinc2_ADV">
<address>35 A1 58 1</address>
<name>GarageSwitch - A</name>
<parent type="3">44140</parent>
<type>0.28.56.0</type>
<enabled>true</enabled>
<deviceClass>0</deviceClass>
<wattage>0</wattage>
<dcPeriod>0</dcPeriod>
<startDelay>0</startDelay>
<endDelay>0</endDelay>
<pnode>35 A1 58 1</pnode>
<property id="ST" value="0" formatted="Off" uom="100"/>
</node
<node flag="128" nodeDefId="RemoteLinc2_ADV">
<address>35 A1 58 1</address>
<name>GarageSwitch - A</name>
<parent type="3">44140</parent>
<type>0.28.56.0</type>
<enabled>true</enabled>
<deviceClass>0</deviceClass>
<wattage>0</wattage>
<dcPeriod>0</dcPeriod>
<startDelay>0</startDelay>
<endDelay>0</endDelay>
<pnode>35 A1 58 1</pnode>
<property id="ST" value="0" formatted="Off" uom="100"/>
</node<node flag="128" nodeDefId="RemoteLinc2_ADV">
<address>35 A1 58 1</address>
<name>GarageSwitch - A</name>
<parent type="3">44140</parent>
<type>0.28.56.0</type>
<enabled>true</enabled>
<deviceClass>0</deviceClass>
<wattage>0</wattage>
<dcPeriod>0</dcPeriod>
<startDelay>0</startDelay>
<endDelay>0</endDelay>
<pnode>35 A1 58 1</pnode>
<property id="ST" value="0" formatted="Off" uom="100"/>
</node<node flag="128" nodeDefId="RemoteLinc2_ADV">
<address>35 A1 58 1</address>
<name>GarageSwitch - A</name>
<parent type="3">44140</parent>
<type>0.28.56.0</type>
<enabled>true</enabled>
<deviceClass>0</deviceClass>
<wattage>0</wattage>
<dcPeriod>0</dcPeriod>
<startDelay>0</startDelay>
<endDelay>0</endDelay>
<pnode>35 A1 58 1</pnode>
<property id="ST" value="0" formatted="Off" uom="100"/>
</node>
This one is working correctly
<node flag="0" nodeDefId="RemoteLinc2_ADV">
<address>2E 84 E8 2</address>
<name>Melissa Office Remote - A</name>
<parent type="3">10256</parent>
<type>0.18.55.0</type>
<enabled>true</enabled>
<deviceClass>0</deviceClass>
<wattage>0</wattage>
<dcPeriod>0</dcPeriod>
<startDelay>0</startDelay>
<endDelay>0</endDelay>
<pnode>2E 84 E8 1</pnode>
<property id="ST" value="0" formatted="Off" uom="100"/>
</node>