Refactored Honeywell evohome custom_component (EU-only)


If anyone would like to test this code that works with HA 0.89:

It has support for HA 0.89, and the custom_components.json has been sorted.

Sorry, but for several reasons, some not within my control, you have to completely remove the evohome_cc component:

<config folder>\custom_components\evohome_cc\*

… and replace it (with evohome) using these files from the above tagged (v1.1.7) repo:

<config folder>\custom_components\evohome\

Note also, the name has changed back to evohome (the _cc thing isn’t really working, but if anyone wants, I will provide instructions how to manually change it back).

Anyway, don’t forget to also change evohome_cc: to evohome: in your configuration.yaml!

For the custom_updater, I am using the following in my configuration.yaml:

    - components
#   -

Note that does not yet contain the updated custom_components.json, so you’ll need to use the above URL for now. Later, you’ll need to switch it back when bleeding_edge is merged back into master.


It works again!
I have it still placed in custom_components (i saw your comment too late)
Should i try to place evhome dir in the config directory and not in the custom_components folder?
Can i also place some translation for the functions like “Away” or “DayOff”
The tracker card shows also the evohome component!

Great work!


Sorry, a typo on my side, now corrected.

Sorry, what do you mean?


You can set options like Away, autowitheco and dayoff. I want to translate it to Dutch.
Like: Away = Weg


I placed v1.1.7 manually under my config folder and works like a charm.


Sounds good.

Will look into it, and let you know - there are just a few higher priority things that must get sorted first.

  • can you raise an issue on github?


Followed all adaptations for the 1.1.7 release. (config, rename folder, updater url)
but it didn’t seem to work.
Then I realised I should be on 89.1 for using bleeding edge components :wink:
After update all works perfectly! Evohome + custom updater

Once again great work


It looks like the water_heater component doesn’t work with 1.1.7 when testing against 89.1:

2019-03-08 20:39:09 ERROR (MainThread) [homeassistant.loader] Error loading custom_components.evohome.water_heater. Make sure all dependencies are installed
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/site-packages/homeassistant/", line 166, in _load_file
    module = importlib.import_module(path)
  File "/usr/local/lib/python3.7/importlib/", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/config/custom_components/evohome/", line 22, in <module>
    from homeassistant.components.water_heater.const import (
ModuleNotFoundError: No module named 'homeassistant.components.water_heater.const'


Correct. Fixed with v1.1.8 - if you are using custom_updater, this should appear for you now.


As promised, it is now:

    - components


I had a look at:

Are you interested in providing a nl.json file, or (even better) a PR?


Yeah for sure! How can i help?
I just read your last answer, shall i create an issue at github?


No, that was just to remind me to make it happen at some time in the future. Let’s do it now, instead.

Look at:

I think it’s just a matter of creating a file called:

<config folder>\custom_components\evohome\.translations\nl.json

… and going from there!


I wil try it tomorrow in the evening! I let you know!


I have just tried to translate the operarion_mode options, but it won’t have any effect after a restart.


Are yo getting any Dutch, or is it all in English?


It’s all english, i look at a lot of examples at the internet but i don’t get it fixed.


Great, DHW working now, thank you!


Anybody who knowes, how to translate a custom_component?


@Cinamon I am sorry that I don’t have time to make this happen - but I would be happy to test/accept a PR.

I think the way it is done, is to have snake_case strings in the *.py files, which are then used to lookup an internationalized (or the default) string in a *.json. So, in the code:

STATE = 'auto'


    'auto': "Auto"

You can ask at (or maybe another channel via): HA dev channel