Honeywell Lyric Thermostat

take a look at this.

As far as I can tell… holduntil is not defined in the component. my error is ’ Client Error: User Input Error for url " leading me to believe, and what im seeing is without the proper preset it errors.

You are on to something there. From a look at the API at the Honeywell site, it seems that the logic of climate control, particularly as it relates to modes (see Heat_Cool) and schedules is different from Nest. The components kicking around here are based upon Nest. That was probably misguided from the get-go.

Something may need to be built from scratch. That’s not me right now as I know nothing about coding and the open source flow world. I first have to learn a whole bunch.

1 Like

Hello. I have a little error (problem) with Honeywell lyric integration after the latest home assistant update. It seems everything works ok but i have this persistent error.

Log Details (WARNING)

Logger: homeassistant.util.async_
Source: util/async_.py:120
First occurred: 5:13:53 PM (8 occurrences)
Last logged: 5:37:08 PM

  • Detected I/O inside the event loop. This is causing stability issues. Please report issue to the custom component author for lyric doing I/O at custom_components/lyric/sensor.py, line 122: state = getattr(self.device, self.key)
  • Detected I/O inside the event loop. This is causing stability issues. Please report issue to the custom component author for lyric doing I/O at custom_components/lyric/climate.py, line 241: self._humidity = self.device.indoorHumidity

The Honeywell integration is such a mess that everyone with an installation currently working is just whispering kindly to their installed instance and turning a blind eye to the log.

2 Likes

Haha. true.

Spot on…

im currently looking into adding Fan control (read as: screwing up my working install) to mine…

Guys - guessing this is broken for now. I tried anyways.

image

Hi,

New to Home Assistant, and was able to get most of my smart home stuff working (from differentt apps and systems) but have a problem getting my Lyric T6 configured,
HASS is running as Docker on my NAS, HACS is up and running.

  • Installed Honywell Lyric v1.0.4
  • Created a new app on the Honeywell developer site, copied the key and secret into my config
  • Restarted HASS, started the configurator app to configure
  • Got to the login screen, logged on and accepted the terms
  • Selected my device I want to add and clicked connect

This is where I get the error:

# 500 Internal Server Error
Server got itself in trouble

Created a new app and retried with the new key and secret, but got the same result.
Searched and tried a lot of possible solutions but none of them work so far.
Home Assistant version 0.109.3

The thermostat was previosly added in Domoticz without issues.

Can anyone help me add the Lyric into my HASS?

Thanks!

its a crapshot with the lyric, but heres whats working for me/some of us.
Delete all the lyric stuff you have now. (back it up before obv).

follow this post, and be sure to click on ‘raw’ and copy the text into an editer and save.

here is my post explaining how i did it about a month ago.

keep in mind, it will have a few errors in the log, read back about a months worth of posts in this thred you will see…

good luck.

Hi Jim,

Thanks for the swift answer!

I have tried to add it using the HomeKit Controller integration, but then I need to detach it from my HomeKit, which works! Only thing is that I then have no HomeKit access to the thermostat while I have some automations running there, not yet set-up/transferred into HASS so I would like to use both systems to access the thermostat.

Tried the copy/paste of the RAW already, but now understand you have disabled it from Homekit as well?
At this moment, I can use the thermostat using HomeKit, the default Honeywell app and from Domoticz

Regards,

Q

Just tried the delete, copy raw etc… didn’t work :frowning_face:

i was using the home assistant homekit integration which does not work anymore (cant change the temp on the thermostat in ha) .

My post was just mentioning that I had to reset the thermostat to defaults to have a clean start. The lyric raw files need to be copied into a yaml editer. I used vs code. have to make sure the spacing is exactly perfect as it is inthe raw file. I actually had an isse when I tried at at first. I had text starting on line 2 or something. make sure the ‘end of line sequence’ is set as LF and not CRLF in the editer.

its a pain with this thermostat. It will work if you get everything copied right, and all the previous lyric.py files removed.

also have to make sure the devoloper app on honeywells site is setup right. you can follow Brams intructions at the beginning of this thread for that information, as I believe its still all correct.

@fiftys assessment is right. These integrations are all at least partially broken (whether via HomeKit or the various efforts at the Lyric API). To fix it, we probably need to recruit some folks with coding skills to start over with the Honeywell API to build something.

Note: I’ve gone through various approaches. Currently I am back to using the HomeKit Integration to provide me with accurate, read-only information about my two thermostats. That part seems to work.

1 Like

I indeed copy/paste all the raw data into the correct files using vscode. I am sure the app setup is correct, have used the Honeywell developer site earluer, and is pretty straight forward. Only thing I can imagine now is that my HASS is running on Http instead https. Also used http when creating the app, and it works as I am able to logon and select my thermostat, its the wrap-up at the end where the server error pops up…

If you want to use the HomeKit integration, make sure you first delete it from your iPhone homekitApp first (or reset the homekit settings on the device) else the integration won’t find it (HomeKit devices can only be linked to one HomeKit instance)

Output in the log:

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/local/lib/python3.7/asyncio/coroutines.py”, line 120, in coro
res = func(*args, **kw)
File “/config/custom_components/lyric/init.py”, line 199, in get
data = request.GET
AttributeError: ‘Request’ object has no attribute ‘GET’

Guess the last etry is causing the issue, GET is not set?

To fix it, we probably need to recruit some folks with coding skills to start over with the Honeywell API to build something.

There are enough Lyric’s out there, would be great to get more love for this plug-in for sure. It works okay for now, but I’m now seeing new error messages in my log file which I think might be occasionally interfering with response time in HA

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 lyric doing I/O at custom_components/lyric/sensor.py, line 122: state = getattr(self.device, self.
key)

Personally I’d use Homekit if I could to get away from Honeywell’s cloud, but everything works in controlling the T5 except being able to change temp :roll_eyes:…pretty much defeats the whole smart thermostat thing!

By next winter I might just give up on the Lyric T5 and just get a generic Z-wave Thermostat as heating automation is pretty critical to my home and optimizing cost.

Guys - it worked… after downloading the lyric package that fifty quoted. Delete old comp folder and drop this in, restart. And install via integration.

You need to change the callback URL to
https://Yourbaseip:8123/auth/lyric/callback

Just tried and it popped up, hope this help.

3 Likes

THANK YOU !!!
I can Confirm this procedure works 100%
I have been trying to get my lyric t5 working in hassio every since it mysteriously quit during an update over a year ago (i almost gave up getting it to work the first time)!
I want to elaborate on a couple of things that were a little confusing to me though.
@ian611 says “Delete old comp folder” This is referring to your “lyric” folder inside your “custom components folder”. I also used visual studio code and searched for the word “lyric” and deleted anything else that came up in hassio with that name except log files.
Also when ian611 says “And install via integration” DO NOT USE THE INTEGRATION MENU IN HACS ! This will overwrite the folder and files that you just painstakingly copied and pasted! Navigate to the “integrations” menu via sidebar/configuration/integrations then click the + button at bottom right and select “Honeywell lyric” from the drop down and follow the instructions.
I also used http://myhassioip:myhassioport and that is all, as the callback url instead of what @ian611 used (i assume this is because i do not use a base url setting in my config and i also do not use ssl) Dont Know Dont Care , It Works !! LoL I,m Exstatic!
Hope this extra info helps another noob like me. Thanks again to @fiftys and @ian611 for the How To!!!
Also for those confused on how to download the files from the link that @fiftys recomends (the only one that work),ask me how i know lol.
Click the link start at the top of the list by clicking .translations, this opens en.py, click this and on the right top of page select “raw” then in the next page press cntrl+a then cntrl+c on your keyboard to select all and copy to your clip board. I then made a folder named translations and saved to desktop then open notepad++ and paste then save into the translations folder on the desktop. Make another folder named lyric and place translations in it then repeat the copy past routine for the rest of the files.
Again Hope this helps someone else like me.

2 Likes

Spent few days on trying to get this work. i am using default Hacs plugin for Lyric. It takes me to allow devices and then the Honeywell portal displays
" 500 Internal Server Error

Server got itself in trouble"
This is error In HA log

Error handling request
2:05:06 AM – custom_components/lyric/init.py (ERROR)

Error details

raceback (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/local/lib/python3.7/asyncio/coroutines.py”, line 120, in coro
res = func(*args, **kw)
File “/config/custom_components/lyric/init.py”, line 199, in get
data = request.GET
AttributeError: ‘Request’ object has no attribute ‘GET’

I have also followed instructions by @msauto and I also get an error for lyric component not being detected by HA.

Any help is appreciated to get this working.