Honeywell Lyric Thermostat


Would love to see Honeywell Lyric thermostats integrated with HA. Honeywell has a well documented API to access the thermostat. I will be happy to work with you on this. I have the thermostat and can also test it out for you.

Thermostat values and options explaination
Best "nice" thermostat?
Honeywell Lyric thermostat with Homekit_controller

Does this not work?


No…that is only for the Honeywell Connected thermostats :frowning:

Lyric is a different line of thermostats that Honeywell introduced to compete with Ecobee and Nest.


I would very much like this as well :slight_smile:


I would love this :slight_smile:


The honeywell lyric doesn’t have any kind of access as far as i know. :frowning:
That’s why I decided to bring it back to the store and buy something else.


It does, it has an API. I’m looking into making a component for it.


Indeed…the API is very well documented. @Bram_Kragten let me know if you need help with it.


Thanks, things are going ok, you can help testing once I’m done (almost)

What type of thermostat do you have and can it cool and heat?
I own a T5R that can only heat, so would be nice to have a Round that can cool as well :slight_smile:


I have the T5 that can both heat and cool. Are you sure yours cannot cool? I am guessing once you get the basics ready (auth, device details), it should be easy to add the other features. Let me know when it is ready to test.


Yeah, if have the europe version… We are limited :frowning:

I think I’ll have something you can test tomorrow… If I can find the time.



That is super cool. Look forward to trying it.


I have a honeywell t5 if you need another tester. Thank you for working on this.


The more the merrier!

It seems like there are a lot of variables in the output depending on device and region, so most of it works for me now, but with your setup that might be different! Let’s see what happens!

Download the 2 files from my fork: components/ and climate/ (sensors and binary_sensors will follow) and place them in your Home Assistant components folder.

  1. Visit Honeywell Developers, and sign in. Create an account if you don’t have one already.
  2. Fill in account details.
  3. Submit changes
  4. Click “My Apps” at top of page, under your account.
  5. Click “Create New App”
  6. Fill in details:
  • App name. Can be anything, I use Home Assistant.
  • In the “Callback URL” enter the adress to your Home Assistant instance: “https://yourhomeassistant:8123/api/lyric/authenticate”. If you have base_url in your http config, use this url. Otherwise use your local ip.
  1. Click “Save Changes”
  2. On the apps page, click on the just created app.
  3. The “Consumer Key” and “Consumer Secret” are shown now. These will be used as client_id and client_secret below.
  4. Once Home Assistant is started, a configurator will pop up asking you to log into your Lyric account.


# Example configuration.yaml entry
  client_id: CLIENT_ID
  client_secret: CLIENT_SECRET
# Example configuration.yaml entry to show only devices at your vacation and primary homes
  client_id: CLIENT_ID
  client_secret: CLIENT_SECRET
    - Vacation
    - Primary

Configuration variables:

  • client_id (Required): Your Lyric developer client id.
  • client_secret (Required): Your Lyric developer client secret.
  • locations (Optional): The location or locations you would like to include devices from. If not specified, this will include all locations in your Lyric account.

Reboot Home assistant and you should see a Lyric configuration box!

AiO script & Python 3.6

Isn’t it better to put them in the custom_components folder for now?


That should work too, I’m quite new to Home Assistant. This is the first project i’ve did in Home Assistant and python, so got a few things to learn still :slight_smile:


Just tried it…I got the configurator. But when I click continue, I see the error Failed to configure, please try again.. I am using my test setup for this one that uses the local ip ( address.

On clicking “Request authorization”, I see {"fault":{"faultstring":"Execution of BuildLoginPageUrl failed with error: Exception thrown from JavaScript : Invalid Request: Invalid Redirect URI. (build_login_url_js#34)","detail":{"errorcode":"steps.javascript.ScriptExecutionFailed"}}}


In the Lyric developer app, have you entered your address as return uri?

And how does the link from “Request authorization” look?


Yes, here is the URL in the Developer App

Here’s the Request Authorization link:


You have https in you developer app, but you hass is running on http, could you change the return url to http