Skip to content
David Bonnes edited this page Sep 20, 2020 · 35 revisions

Install & Configuration

This is a HA custom component.

Download the evohome_cc repo (note: CC) to custom_components\evohome_cc:

cd custom_components
git clone https://github.com/zxdavb/evohome_cc evohome_cc

Example Configuration

Add something much like the following to your configuration.yaml (use your own controller id, not mine):

evohome_cc:
  scan_interval: 60
  serial_port: /dev/ttyUSB0
  packet_log: packet.log
  schema:
    controller: 01:145038
  ignore_list:
    - 13:237335
    - 01:032820
    - 12:207082
    - 12:227486

The controller is optional, but is recommended - you need to get your own controller ID from the evohome controller's UI.

The ignore_list is optional, but will help if your system picks up devices belonging to your neighbors.

Troubleshooting

Note that log files will be required, if you are requesting help.

Unavailable State

Some evohome devices - particularly battery-powered devices like TRVs - will not send packets frequently. Thus, the state of some HA entities will not be known until the corresponding packet is next sent. Some of these (e.g. battery state) are cast only once per 24 hours (and if you miss it...).

Logging

Consider adding something like the following to you configuration.yaml:

logger:
  default: info  # otherwise too much logging
  logs:
    custom_components.evohome_cc: debug
    evohome_rf: warning

Then you can try: cat home-assistant.log | grep evohome

It may be worth searching for: evohome, Found, Schema, Params, and Status. For example:

2020-09-18 21:50:58 WARNING (MainThread) [custom_components.evohome_cc] Schema = {'controller': '01:145038', 'system': {'heating_control': '13:035462', 'orphans': []}, 'stored_hotwater': {'hotwater_sensor': '07:045960', 'hotwater_valve': '13:081807', 'heating_valve': '13:106039'}, 'ufh_controllers': {}, 'zones': {'01': {'heating_type': 'radiator_valve', 'sensor': '04:189082', 'devices': ['04:189078', '04:056053', '04:189082']}, '02': {'heating_type': 'radiator_valve', 'sensor': '04:056057', 'devices': ['04:056057']}, '03': {'heating_type': 'electric_heat', 'sensor': '03:183434', 'devices': ['03:183434']}, '04': {'heating_type': 'zone_valve', 'sensor': '12:010740', 'devices': ['12:010740']}, '05': {'heating_type': 'underfloor_heating', 'sensor': '34:092243', 'devices': ['34:092243']}, '06': {'heating_type': 'mixing_valve', 'sensor': None, 'devices': []}, '07': {'heating_type': 'mixing_valve', 'sensor': None, 'devices': []}, '08': {'heating_type': 'underfloor_heating', 'sensor': None, 'devices': []}, '09': {'heating_type': 'electric_heat', 'sensor': None, 'devices': []}, '0B': {'heating_type': 'zone_valve', 'sensor': None, 'devices': []}}, 'device_info': {'01:145038': {'description': 'Evo Color', 'firmware': '2020-08-11', 'manufactured': '2013-08-01', 'unknown': '000002FF0163FFFFFFFF'}}}

... which will give you:

{
    "controller": "01:145038",
    "system": {
        "heating_control": "13:035462",
        "orphans": []
    },
    "stored_hotwater": {
        "hotwater_sensor": "07:045960",
        "hotwater_valve": "13:081807",
        "heating_valve": "13:106039"
    },
    "ufh_controllers": {},
    "zones": {
        "01": {
            "heating_type": "radiator_valve",
            "sensor": "04:189082",
            "devices": [
                "04:189078",
                "04:056053",
                "04:189082"
            ]
        },
        "02": {
            "heating_type": "radiator_valve",
            "sensor": "04:056057",
...