Honeywell Lyric Thermostat

You have to update configuration.yaml


lyric:
  client_id: MY_CONSUMER_KEY
  client_secret: MY_CONSUMER_SECRET

Re-installing doe not help, I tried the whole lot.

It got worse since I upgraded my HA to the latest versions and migrated from RPi3b+ to 4. Not sure what could have changed in the Lyric integration because of that.

Yes, that has the new key and secret. The URL that is looking back has the old key and secret.

You can change the web address manually. Substitute the new client and key directly in the call back address. Then hit enter and load the page.

It’s in discussion with the developer in this thread:

Honeywell Lyrics becomes unavailable every 4 to 8 hours #51344

This the maintainer, as of 3 days ago he cant get his to work.

I’ve struggled with this integration for almost a year, homekit was just added to the t9/t10 about 2 weeks ago and I have been using it without problems. People with t5 and t6 have been using homekit a lot longer seemingly with out problems.

I would love to try to get this to use HomeKit but they don’t show as a device. Is there a trick to force HomeKit find my thermostats?

I’ve just figured it out for myself.
Did you use the Homekit intergration or the Homekit controller?
To add a homekit compatible product to Home Assistant use the Homekit controller intergration.
I didn’t put the honeywell T6 in pairingmode and just tried to open the intergration in HA.

It works but i am missing some data like sensor.next_period_time and sensor.setpoint_status.

It had shown up by itself under homekit controller about 2 weeks ago. I need to enter the pairing code shown on the thermostat.

I’ll just let it ride and see if it shows up.

@sven41 designed a temporary fix: Make an automation to reconnect. It’s no solution but helps to keep it alive.

Mine:

- id: '1034093408936732'
  alias: Honeywell Unavailable - then reconnect
  description: ''
  trigger:
  - platform: time_pattern
    minutes: /5
  condition:
  - condition: state
    entity_id: climate.home_lyric_thermostaat
    state: unavailable
  action:
  - service: homeassistant.update_entity
    target:
      entity_id: climate.home_lyric_thermostaat
  mode: single

I’m having issues as well, I’ve tried updating the callback url to auth/lyric/callback/ however when I click
image
It uses this URL
https://api.honeywell.com/oauth2/authorize?response_type=code&client_id=xxxxxxxx&redirect_uri=http://192.168.80.110:8123/auth/external/callback&state=xxxxxxx
So it seems to ignore the new url in my app, or perhaps the HA integration is using a hard coded URL.

If I manually change the url in the browser to /auth/lyric/callback I get this

It’s authenticating against api.honeywell.com, I try to enter my developer.honeywell.com login info, but it doesn’t work.

Is everyone using /auth/lyric/callback instead of /auth/external/callback, which is in the integfration docs here

I think you need 2 accounts. The developer account and then the account that you would use to log into the honeywell app. In that screen above enter your account info from honeywell home app.

Hey thanks @Mikefila that worked!
Now I just need it to open the correct and updated URL auth/lyric/callback as it’s stuck on auth/external/callback.

I saw some posts about a lyric.yaml file that cached creds, however I don’t have that file in HA.

Maybe it’s hardcoded in the integration? If I knew where that file was I would edit it.

As per many suggestions above, I reset the homekit settings on my thermostat and it was picked up instantly by the HA homekit controller.

Fan control is missing from the homekit controls and would be a welcome addition.
Not sure if honeywell offers fan control in it’s homekit implementation.

My Honeywell app is still working, so I have fan control if i need it.

I’m not a programmer by any stretch but I was wondering if there would be a way to pass the login info to the Honeywell app site with node-red. When the integration becomes “unavailable” a series of http info get’s automatically sent w/node-red relogging in.

Any feedback on the above option?

Nodered works separately from home assistant. It wouldn’t be able to reauthorize the HA integration.

UPDATE => Problem went away - apparently due to some issues at alexa.amazon.com, ugh!

I have been using the Homekit Controller integration with my Honeywell T6 pro for more than a year and it works great (with maybe a monthly pull-off-the-wall-reset required).

My use included telling Alexa to change the temperature (“Alexa, make it warmer/cooler”) and it worked!

However, in the last week, I noticed something changed and Alexa stopped responding as before with the Homekit thermostat, but continued to work with other thermostats such as Pool and Spa (purely MQTT). I noticed the problem on HA 2021.11.5 and upgraded to 2021.12.3 but it persists.

I think the “attributes” changed, particularly the “supported_features” which used to be a number other than “1”.

I tried turning on DEBUG logs, but only thing I see is:

2021-12-17 17:06:54 DEBUG (MainThread) [homeassistant.components.alexa.smart_home_http] Sending Alexa Smart Home response: {'event': {'header': {'namespace': 'Alexa', 'name': 'StateReport', 'messageId': 'xxx', 'payloadVersion': '3', 'correlationToken': 'xxx'}, 'payload': {}, 'endpoint': {'scope': {'type': 'BearerToken', 'token': 'xxx'}, 'endpointId': 'climate#lyric_08907a', 'cookie': {}}}, 'context': {'properties': [{'name': 'powerState', 'namespace': 'Alexa.PowerController', 'value': 'ON', 'timeOfSample': '2021-12-17T23:06:54.0Z', 'uncertaintyInMilliseconds': 0}, {'name': 'thermostatMode', 'namespace': 'Alexa.ThermostatController', 'value': 'AUTO', 'timeOfSample': '2021-12-17T23:06:54.0Z', 'uncertaintyInMilliseconds': 0}, {'name': 'targetSetpoint', 'namespace': 'Alexa.ThermostatController', 'value': {'value': 76.0, 'scale': 'FAHRENHEIT'}, 'timeOfSample': '2021-12-17T23:06:54.0Z', 'uncertaintyInMilliseconds': 0}, {'name': 'temperature', 'namespace': 'Alexa.TemperatureSensor', 'value': {'value': 76.0, 'scale': 'FAHRENHEIT'}, 'timeOfSample': '2021-12-17T23:06:54.0Z', 'uncertaintyInMilliseconds': 0}, {'name': 'connectivity', 'namespace': 'Alexa.EndpointHealth', 'value': {'value': 'OK'}, 'timeOfSample': '2021-12-17T23:06:54.0Z', 'uncertaintyInMilliseconds': 0}]}}


climate.lyric_08907a - Attributes:

hvac_modes: off, heat, cool, heat_cool
min_temp: 50
max_temp: 90
current_temperature: 76
temperature: 76
hvac_action: idle
friendly_name: Downstairs
supported_features: 1

Does anyone have any idea what happened?

If alexa can still send mqtt commands, set a command for temp up and down. Create a mqtt binary sensor in ha. Then use it as an automation trigger to perform the up or down action.