An update to what I wrote yesterday. I used a device_override entry (with correct cat/subcat) in configuration.yaml and the Fanlinc was successfully discovered with the correct entities created.
However, I do have an issue that is still confusing me. I’m using a Keypadlinc to control the fan from the wall, so to keep them synchronized, I created scenes corresponding to each state that include both the fanlinc and the keypadlinc. When I trigger the scenes via the insteon.scene_on service call, I do get an update from the Fanlinc reporting the current state as shown in the log entry:
2020-08-17 09:20:43 DEBUG (MainThread) [homeassistant.components.insteon.insteon_entity] Received update for device 51ceb6 group 2 value 85
but the entity state doesn’t appear to be updated:
speed: off
insteon_address: XX.XX.XX
insteon_group: 2
friendly_name: Living Room Ceiling Fan
supported_features: 1
Edit: this is also the case when I trigger directly from the keypadlinc buttons The Insteon component recieves a message with the updated state of the fanlinc, but doesn’t seem to correctly update the state of the entity.
Is this an issue with the integration?
Your help is definitely appreciated.
Thanks!
@Peter_K can you make sure the ALDB is loaded for both the KPL and the FanLInc? This is what connects the two in HA. Also, if the issue persists, can you put the module in debug mode so I can see what is happening? You just need to send the snippet of the logs from when you trigger the FanLinc from the KPL.
@teharris1 I’ll send you the PLM’s ALDB in a DM, but it looks OK to me. I’m not sure why it wasn’t auto-discovered. I did create some scenes on the PLM in Houselinc to control both the fanlinc and keypadlinc, so that may have been enough, but I also added the manual override entry at the same time so I can’t be certain.
I captured the logs in debug mode and I can send those, but I think I may have identified the issue with the fan state.
The fan state seems to work correctly when the fan is off (group 2 value 0) and high (group 2 value 255), but it doesn’t report correctly when the fan is set to low (group 2 value 85) and medium (group 2 value 170). In both the medium and low cases, the state is shown as off
Log snippet:
2020-08-17 18:30:51 DEBUG (MainThread) [homeassistant.components.insteon.utils] Firing event insteon.button_on with {'address': 'xxxxxx', 'button': 'a'}
2020-08-17 18:30:54 DEBUG (MainThread) [homeassistant.components.insteon.insteon_entity] Received update for device yyyyyy group 2 value 0
2020-08-17 18:31:14 DEBUG (MainThread) [homeassistant.components.insteon.utils] Firing event insteon.button_on with {'address': 'xxxxxx', 'button': 'b'}
2020-08-17 18:31:23 DEBUG (MainThread) [homeassistant.components.insteon.insteon_entity] Received update for device yyyyyy group 2 value 85
2020-08-17 18:31:49 DEBUG (MainThread) [homeassistant.components.insteon.utils] Firing event insteon.button_on with {'address': 'xxxxxx', 'button': 'd'}
2020-08-17 18:31:52 DEBUG (MainThread) [homeassistant.components.insteon.insteon_entity] Received update for device yyyyyy group 2 value 170
2020-08-17 18:32:29 DEBUG (MainThread) [homeassistant.components.insteon.utils] Firing event insteon.button_on with {'address': 'xxxxxx', 'button': 'c'}
2020-08-17 18:32:32 DEBUG (MainThread) [homeassistant.components.insteon.insteon_entity] Received update for device yyyyyy group 2 value 255
Where xxxxxx is the Keypadlinc and yyyyyy is the fanlinc.
It seems like perhaps the values of 85 and 170 are not properly being mapped to the appropriate state and state attributes for low and medium settings?
The light level (group 1) seems to reflect the state correctly.
Thanks a lot for the help and let me know if I need to create a bug against it!
@peter_k, yes you are right. I am not using the data fields today with scenes. It is a binary on/off only right now. The issue is different devices use the data fields differently. I will have that by the end of the year but need to prioritize it.
Thanks for the reply! That makes sense, but can you tell me which messages you’re looking at to pull this information from?
2020-08-17 18:31:52 DEBUG (MainThread) [homeassistant.components.insteon.insteon_entity] Received update for device yyyyyy group 2 value 170
Is that coming from directly from the Fanlinc or is that coming from the scene broadcast message? The reason I ask is that when I put my PLM into promiscuous mode via the Insteon Terminal application and trigger the scene from the KPL, I don’t see any response from the Fanlinc in the output.
@Peter_K, I need to look at this more. After re-reading your original post, I think the fanlinc should show the proper value in HA. When I revisited the code recently, it is not just doing a basic on/off check based on the all-link database, it is actually getting the device status so HA should see the actual value of the device at that point. the message you show above with Received update for device yyyyyy group 2 value 170 is coming form HA which means that the fan speed is set to 170 (or 67% where 255 if the fully on state). Can you send me the section of the logs where you use the KPL to set the fan speed? Put both the pyinsteon messages and topics as well as the insteon component in HA to debug mode.
I would like to test out this capability. Do you have any directions for newbies to get this insteon integration setup? I have been using isy-994i to control 50+ switches for the past 10 years or so, but don’t like the limitation with control over non-insteon devices lately. I have only been using HA on and off for the past year, so am very new to this. I followed the directions here - https://www.reddit.com/r/homeassistant/comments/bdytqs/insteon_setup_with_ha/ - to add the basic Insteon integrations, but am having minimal luck getting devices added. Auto-discovery picked up 3-4 switches and updated the file insteon_devices.json; and so far my manual efforts to add other switches by updating configuration.yaml isn’t working. Hopefully this Insteon integration will be easier / more powerful.
@teharris1 Hi! I agree that it seems like the component is getting the right value for the fan speed group. I checked the log when commanding the Fanlinc from HA via the fan control Lovelace card (first half) and from the KPL (second half). It looks like the reported values for the low and medium speeds are different depending on which controller (HA vs KPL) is used to set the speed. Perhaps that’s the issue? The group 2 values for each speed are set by the Fanlinc module (with a button that cycles between low-med-high-off) so those aren’t user-adjustable when pairing with a KPL, but I’m guessing the Fanlinc probably accepts (and regulates speed) across the full 0-255 range, which must be how HA controls it.
#Cycling Medium-High-Low-Off via Lovelace Fan card
2020-09-07 14:31:26 DEBUG (MainThread) [homeassistant.components.insteon.insteon_entity] Received update for device 51ceb6 group 2 value 192
2020-09-07 14:31:41 DEBUG (MainThread) [homeassistant.components.insteon.insteon_entity] Received update for device 51ceb6 group 2 value 255
2020-09-07 14:31:45 DEBUG (MainThread) [homeassistant.components.insteon.insteon_entity] Received update for device 51ceb6 group 2 value 64
2020-09-07 14:31:49 DEBUG (MainThread) [homeassistant.components.insteon.insteon_entity] Received update for device 51ceb6 group 2 value 0
#Cycling Low-Medium-High-Off via KPL
2020-09-07 14:32:43 DEBUG (MainThread) [homeassistant.components.insteon.utils] Firing event insteon.button_on with {'address': '4b5ea2', 'button': 'b'}
2020-09-07 14:32:47 DEBUG (MainThread) [homeassistant.components.insteon.insteon_entity] Received update for device 51ceb6 group 2 value 85
2020-09-07 14:32:51 DEBUG (MainThread) [homeassistant.components.insteon.utils] Firing event insteon.button_on with {'address': '4b5ea2', 'button': 'd'}
2020-09-07 14:32:53 DEBUG (MainThread) [homeassistant.components.insteon.insteon_entity] Received update for device 51ceb6 group 2 value 170
2020-09-07 14:32:57 DEBUG (MainThread) [homeassistant.components.insteon.insteon_entity] Received update for device 4b5ea2 group 5 value 255
2020-09-07 14:32:57 DEBUG (MainThread) [homeassistant.components.insteon.utils] Firing event insteon.button_on with {'address': '4b5ea2', 'button': 'c'}
2020-09-07 14:33:01 DEBUG (MainThread) [homeassistant.components.insteon.insteon_entity] Received update for device 51ceb6 group 2 value 255
2020-09-07 14:33:02 DEBUG (MainThread) [homeassistant.components.insteon.utils] Firing event insteon.button_on with {'address': '4b5ea2', 'button': 'a'}
2020-09-07 14:33:07 DEBUG (MainThread) [homeassistant.components.insteon.insteon_entity] Received update for device 51ceb6 group 2 value 0
The title of this thread is “New Insteon version for beta testing - (Do not use since this is now in 0.111 and higher)”
Does the “Do not use” comment refer to not using this thread? Because I couldn’t find a newer thread. Or does it refer to not using some particular version of the software?
By the way, how do I figure out what version of the integration I am using?
My thermostat card is displaying the current temp correctly 70F, but the set points are wrong. It appears it’s actually converting them to Celsius. I have them set to 70-86 and the card shows 158-187.
Just installed this beta version. Now it looks like all my insteon devices have been duplicated with the original devices now being unavailable. Is this expected or did I miss a step in the install?
Platform insteon2 does not generate unique IDs. ID 121348 already exists - ignoring switch.togglelinc_on_off_12_13_48_2
10:28:46 AM – Switch (ERROR) - message first occurred at 10:27:47 AM and shows up 20 times
Platform insteon2 does not generate unique IDs. ID 54575b_3 already exists - ignoring binary_sensor.motion_sensor_ii_54_57_5b_battery_2
10:27:47 AM – Binary sensor (ERROR) - message first occurred at 10:27:47 AM and shows up 14 times
Unexpected error importing insteon/media_source.py
10:27:47 AM – loader.py (ERROR) - message first occurred at 10:27:47 AM and shows up 3 times
Error importing platform config_flow from integration insteon to set up insteon configuration entry: No module named 'custom_components.insteon2.config_flow'
10:27:47 AM – config_entries.py (ERROR)
Light is deprecated, modify InsteonDimmerEntity to extend LightEntity
10:27:35 AM – Light (WARNING)
CoverDevice is deprecated, modify InsteonCoverEntity to extend CoverEntity
10:27:35 AM – Cover (WARNING)
ClimateDevice is deprecated, modify InsteonClimateEntity to extend ClimateEntity
10:27:35 AM – Climate (WARNING)
BinarySensorDevice is deprecated, modify InsteonBinarySensorEntity to extend BinarySensorEntity
10:27:35 AM – Binary sensor (WARNING)
SwitchDevice is deprecated, modify InsteonSwitchEntity to extend SwitchEntity
10:27:35 AM – Switch (WARNING)
Hi, if you have issues after that delete de insteon_devices file on the HA config folder and reboot. It will take time to rebuilt the database depends on how many devices you have.
First of all thank you very much for your hard work Mr. Harris!
Not sure though if this is the correct topic… but i couldn’t find any related topic
Lately im having issues with my Insteon Thermostat (2441ZTH) along with Insteon Hub (2245-555) in Home Assistant.
Home Assistant Details:
Version 0.118.5
Installation Type - Home Assistant OS
Development - false
Supervisor - true
Docker - true
Virtual Environment - false
Python Version - 3.8.6
Operating System Family - Linux
Operating System Version - 4.19.127-v8
CPU Architecture - aarch64
The Thermostat display shows Fahrenheit values instead of Celsius values (as i set it before), then in the Home Assistant thermostat card i can see it in negative Celsius.
When im changing from Fahrenheit to Celsius at the device itself, after couple of minutes its changing back to Fahrenheit without any human intervene.
i was configured the logger to be verbose (debug mode) to find whats going on and i can see the insteon set the thermostat to Celsius but not vice versa (or i think i see )
*** update ***
Ive deleted manually the thermostat from the “insteon_devices.json” and restart HA.
After couple of min i could notice the thermostat created again but now with the flags!
As you can see above ive got the params ok and changed manually the “Celsius” param from “false” to “true”.
Back to the thermostat device itself again, changed manually the thermostat from Fahrenheit to Celsius, restart HA, waited couple of min, and then BOOM! Fahrenheit back again on the thermostat display , HA device & entity remained in Celsius though…
if anyone has any directions for me why the Insteon thermostat repeatedly changing from celsius to fahrenheit i will really appreciate it, already spent so many hours on this.