Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Insignia Homekit Garage Door Opener #107137

Closed
jaimehall63 opened this issue Jan 4, 2024 · 20 comments · Fixed by #107177
Closed

Insignia Homekit Garage Door Opener #107137

jaimehall63 opened this issue Jan 4, 2024 · 20 comments · Fixed by #107177

Comments

@jaimehall63
Copy link

jaimehall63 commented Jan 4, 2024

home-assistant_2024-01-04T15-38-18.273Z.log

The problem

The Core update 2024.1.0 broke my Insignia Homekit Garage Door Opener. Rolling back to version 2023.12.4 fixed the issue.

What version of Home Assistant Core has the issue?

core-2024.1.0

What was the last working version of Home Assistant Core?

core-2023.12.4

What type of installation are you running?

Home Assistant OS

Integration causing the issue

Homekit Device

Link to integration documentation on our website

https://www.home-assistant.io/integrations/homekit_controller/

Diagnostics information

Log attached.

Example YAML snippet

No response

Anything in the logs that might be useful for us?

No response

Additional information

No response

@home-assistant
Copy link

home-assistant bot commented Jan 4, 2024

Hey there @Jc2k, @bdraco, mind taking a look at this issue as it has been labeled with an integration (homekit_controller) you are listed as a code owner for? Thanks!

Code owner commands

Code owners of homekit_controller can trigger bot actions by commenting:

  • @home-assistant close Closes the issue.
  • @home-assistant rename Awesome new title Renames the issue.
  • @home-assistant reopen Reopen the issue.
  • @home-assistant unassign homekit_controller Removes the current integration label and assignees on the issue, add the integration domain after the command.
  • @home-assistant add-label needs-more-information Add a label (needs-more-information, problem in dependency, problem in custom component) to the issue.
  • @home-assistant remove-label needs-more-information Remove a label (needs-more-information, problem in dependency, problem in custom component) on the issue.

(message by CodeOwnersMention)


homekit_controller documentation
homekit_controller source
(message by IssueLinks)

@joostlek
Copy link
Member

joostlek commented Jan 4, 2024

Anything in the logs?

@jaimehall63
Copy link
Author

I can tell it is mentioned in the log but I can not tell what it is saying. I've attached the downloaded log.
home-assistant_2024-01-04T15-38-18.273Z.log

@joostlek
Copy link
Member

joostlek commented Jan 4, 2024

There are 2 devices that return a 404, can you double check they are operational?

@jaimehall63
Copy link
Author

That would be the two "covers" (garage door openers, IP 192.168.1.165 and .166). The are powered up and operating correctly under core-2023.12.4. They only become disconnected when I upgrade to core 2024.1.0. I've gone through the upgrade then downgrade three times just to make sure.

@Jc2k
Copy link
Member

Jc2k commented Jan 4, 2024

The homekit protocol doesn't return normally return 404 and HTML when a connection fails. Thats off spec and not very helpful of it.

It looks like you have some homekit bluetooth devices. But do you have any other homekit ip devices?

@Jc2k
Copy link
Member

Jc2k commented Jan 4, 2024

And when you downgrade, do you power cycle the garage openers or do they just start working?

@Jc2k
Copy link
Member

Jc2k commented Jan 4, 2024

Looks like you have an ecobee that is working fine?

@jaimehall63
Copy link
Author

Yeah Ecobee is fine and two Belkin mini's (switches), which are IP devices are working fine. The garage openers just start working without a restart when I downgrade. I did try a power cycle after the upgrade to see if that would get them working but it didn't. I did not try deleting them and trying to re-integrate them after the upgrade. These Insignia's can be difficult to get into HA at first. Once they integrate they seem to be pretty solid though.

@jaimehall63
Copy link
Author

I noticed in the log the line, "Connecting to accessory failed: M2: Missing public key;" for both openers. I'm not sure of the mechanism for exchanging those keys but it must be done behind the scenes? I've never configured that anywhere before.

@Jc2k
Copy link
Member

Jc2k commented Jan 4, 2024

Yeah when we connect we do the key exchange. We send an M1, then they send us an M2, then we send an M3 and they send an M4 and we are done. It's saying the M2 is invalid because it doesn't contain a key and aborting. That's correct because their M2 is a 404 and error html.

@Jc2k
Copy link
Member

Jc2k commented Jan 4, 2024

The same log output for the previous version might be helpful, the most obvious explanation is that something changed in our headers. The host header was potentially changed as part of adding happy eyeballs. But it looks valid to my eyes. So comparison might be useful.

@jaimehall63
Copy link
Author

Here is the core log for core-2023.12.4 but it doesn't look like there is anything in there relevant (I guess I should let you make that determination. I'm not so good with logs).
home-assistant_2024-01-04T17-00-41.054Z.log

@Jc2k
Copy link
Member

Jc2k commented Jan 4, 2024

It looks like debug logs aren't switched on,
Or they were switched on too late.

@jaimehall63
Copy link
Author

oops, sorry. Try this one.
home-assistant_2024-01-04T18-26-24.856Z.log

@Jc2k
Copy link
Member

Jc2k commented Jan 4, 2024

This is what I wanted to compare:

2024-01-04 10:23:48.963 DEBUG (MainThread) [aiohomekit.controller.ip.connection] 192.168.1.165: raw request: b'POST /pair-verify HTTP/1.1\r\nHost: 192.168.1.165\r\nContent-Length: 125\r\nContent-Type: application/pairing+tlv8\r\n\r\n\x06\x01\x03\x05x\xe0MJ\xb5\xb5\x91\x13\xaf\xf1\x1ayn\x8e\xf2\x86;\x89LF\xda9p\xa8\x1cku\x85\xb4\xf3>\x02\x99\x9a@\xe0\xb6\xb9X\x94x\xc2\xb6\xb0\xdd\xf5I\x02\x9bU\xa7\x07\x98+IW\xe3\x06\xc8\xd3\x83{Z\xfa2\xa8\x80\xe0\xb4\xfd>J:\xa3V`\x9dt\x0b\xae\xd6\x85b\x04\xee\xf7\xce\xc1m \xcc\x83\xe8~\x06\x93\xcb\x85\xcfjbXM\x88yG\xcaJQO\x0eC\x9djtk\xdb\x9bAI\xf1'

Vs

2024-01-04 07:36:12.896 DEBUG (MainThread) [aiohomekit.controller.ip.connection] 192.168.1.166: raw request: b'POST /pair-verify HTTP/1.1\r\nHost: 192.168.1.166:80\r\nContent-Length: 37\r\nContent-Type: application/pairing+tlv8\r\n\r\n\x06\x01\x01\x03 \xcd\xbc|5\xc3<b\x18$+?\xcby\x92\xd5l\xbc\x1b9[\xbd0\x8d\xa3\x90\xcb\xbf-\xf7ID"'

First one is the old code. 2nd is new.

To my eyes things are choking because we put the port in the host header and didn't used to.

bdraco added a commit to Jc2k/aiohomekit that referenced this issue Jan 4, 2024
related issue home-assistant/core#107137

When we added happy eyeballs, I added the port, but this seems
to cause problems for some devices
@jaimehall63
Copy link
Author

Thanks!

@Jc2k
Copy link
Member

Jc2k commented Jan 4, 2024

Let's see if our hunch is right first! Let us know how it goes when you get the next update :/

@jaimehall63
Copy link
Author

jaimehall63 commented Jan 4, 2024 via email

@jaimehall63
Copy link
Author

jaimehall63 commented Jan 5, 2024 via email

@github-actions github-actions bot locked and limited conversation to collaborators Feb 5, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants