Insteon configuration panel

Uh, yes please. That looks great.

Yes please!

I tried my hand at it - you need to create an input_select and an input_number helper.

had basically the same behaviorā€¦ I think I have better luck with devices adding to the hub after a reset using Dev tools > Services > Insteon: Add all link

Iā€™m planning on doing another hub reset (and I think a fresh hass install on a mini pc Ive got (using a Pi 4b right now) and then relinking using this method. I really dont want to factory reset the devices because i have several device-to-device links that function just fine w no hub at all. One of the things that makes me tough it out w insteon.

EDIT: back here to say that iā€™m having the most consistent result using the ā€œadd default linksā€ going to each device one at a time. This was @teharris1 recommendation - and I think I may have added some junk by first trying to link using the + (Add ALDB) or the method above to try to link devices in bulk

so to recap - factory reset the hub, and assuming you still have all your discovered devices in HA like I didā€¦ go to each one and click the add default links & that should be good. No need to reset the devices and no need to even press the button on the device to pair!

OK. First question I would have. Do you have the custom ā€œbutton-cardā€ and ā€œauto-entitiesā€ cards installed? If not there is not much sense in me posting things as they rely on these components.

Like this, but how did you get:

{{ input_number.insteon_scene_creator_scene_number }}

To return ā€œ71ā€ and not ā€œ71.0ā€ ā€¦ because input_number returns as a state a float which would be ā€œ71.0ā€. And you send 71.0 as the scene number, the code fails.

Perhaps in your script that you do not post?

As in all these:

script.insteon_scene_creator_add_link

I actually finally got it working by using just the script. I created one for all lights on, and created one for all lights off. I couldnā€™t seem to find a way through one script to ask Alexa to turn it both on and off the way it seamlessly worked with one scene name in the old Insteon app. If Iā€™m missing something please let me know.

So as my work around I created two routines in Alexa called turn on everything and turn off everything and attached the appropriate scripts. And somehow this made everything work simultaneously.

1 Like

Yes, Alexa scenes can only be turned on if they are HA scriptsā€¦there is no off. An HA script can only be run hence turned on, you either run it or you do not so you need two scripts/scenes which are run/turned onā€¦one to turn on to execute the on state and another to turn on to execute the off state. Not overly intuitive and a little bit confusing if you are new to it I supposeā€¦

Thank you for confirming.

@teharris1 Just following up to see if you have any suggestions on what to do to make the load all link database function work

Before upgrading to latest core (a big thank you for that!) I could call service and get a green checkmark, but nothing would show up in logs

Now in latest version, I get an error message, specifically ā€œunknown errorā€

The logs are below. Any guidance would be very much appreciated:

[548335936368] Error handling message: Unknown error (unknown_error)
10:02:49 AM ā€“ (ERROR) Home Assistant WebSocket API - message first occurred at 10:01:40 AM and shows up 3 times

websocket_api script: Error executing script. Unexpected error for call_service at pos 1: async_load() got an unexpected keyword argument ā€˜callbackā€™
10:02:49 AM ā€“ (ERROR) components/insteon/utils.py - message first occurred at 10:01:40 AM and shows up 3 times

Uncaught exception
9:01:43 AM ā€“ (ERROR) /usr/src/homeassistant/homeassistant/bootstrap.py

Adding index ix_statistics_runs_start to database. Note: this can take several minutes on large databases and slow computers. Please be patient!
9:01:42 AM ā€“ (WARNING) Recorder

Database is about to upgrade. Schema version: 25
9:01:42 AM ā€“ (WARNING) Recorder

[548346543600] Received invalid command: energy/get_prefs
9:01:22 AM ā€“ (ERROR) Home Assistant WebSocket API

I see what that problem is. Donā€™t use the service to load the ALDB any longer. Use the ā€œLoad from deviceā€ button in the panel. The service is broken.

Clearly I didnā€™t test this yet, was just recreating. The Insteon setup is actually in a family memberā€™s house, so thereā€™s only so much I can do remotely. Iā€™ll be able to test with them tonight.

{{ states('input_number.insteon_scene_creator_scene_number') }} is returning 88 without a decimal place for me in templates. However, I can pipe it to |int just incase.

Yes, interesting quirks of Jinja.

{{ states('input_number.target_insteon_group') }} returns a number and the template editor shows it is 51 so your statement is correct.

But using the states to examine, it shows this:

image

And because I am not using Jinja templates with custom button, I was getting ā€œ51.0ā€. I had to use parseInt() function in javascript to make it ā€œ51ā€

Very interesting! I always thought I had to |int in Jinja templates.

Also since you have not fully tested, I beieve you want the device attribute ā€œnameā€ and not ā€œname_by_userā€ per Device Registry | Home Assistant Developer Docs

Funny that we almost have identical ideas (actually that is good because it means it is like a user would want to see things I will bet). I will post my complete package also for folks. I did things different because I like seeing the friendly names I have given to entities, so I used this:

service: input_select.set_options
data_template:
  entity_id: input_select.insteon_devices
  options: >
    [{% for ent in integration_entities('insteon') %} 
    "{{state_attr(ent,'friendly_name') }} ({{ent}})" {% if not loop.last %}, {%
    endif %}  {% endfor %}]

So the drop down shows:

friendly name (actual entity id)

Then I parse out what is between ā€œ(ā€ and ā€œ)ā€ when you need the entity. So I get this in the input select:

Hey thereā€¦ been making Insteon scenes using all the info in this thread. Thanks!.

Is there a way to monitor or see the Insteon traffic on my network? Trying to troubleshoot some direct device to device links that I have setup and would like to see what they send each other. I think I recall doing this with the HA version prior to the Insteon panel but canā€™t remember how and that config is wiped

Tried adding this to config

logger:
  default: warn
  logs:
    homeassistant.components.insteon: info

But this still only shows warnings. Is this due to Insteon being in Core now? I changed default to info and I see HA finding all my Insteon devices on startup, but no comms after that once up and running.

Thanks in advance.
David

Logging should look like this to see the details of what is happening in Insteon:

logger:
  default: <default for all modules>   # Typically this should be warn
  logs:
    homeassistant.components.insteon: debug
    pyinsteon.topics: debug   # This is the minimum you should but in to see what is happening
    pyinsteon.messages: debug  # Optional: Used to see the low level messages to and from the device
    pyinsteon: debug    # Optional: Full debugging mode

if pyinsteon: debug is used then pyinsteon.topics and pyinsteon.messages is redundant.

Thanks for quick reply.i went to insteon panel, clicked on Hub, then clicked the three dots and clicked load from device but got the error message below

ā€œThe device did not respond as expected to the read requestā€

My micro on/off module does not show any properties. it does show the all links database. is the micro module supported by the control panel.