Skip to content
David Bonnes edited this page Dec 21, 2023 · 6 revisions

What are the well-known device types?

Please see the relevant table in the underlying code base.

For example, a device ID of 01:123456 (an evohome controller) has device type 01; in the table, its class is known as CTL or controller:

DevType.CTL: {"01": "controller"},

Only devices from the Heat (CH/DHW) domain have well-known device types. HVAC devices vary between (and within) vendors.

How do I convert a device ID into a Hex ID?

The hex equivalent can be found with MS Excel. With the id of the device in cell A1 (e.g. 18:136212), this formula in A2 will give you the hex equivalent (4A1414):

=DEC2HEX(BITLSHIFT(LEFT(A1, 2), 18) + VALUE(RIGHT(A1, 6)))

Alternatively, use this python code:

device_id = '18:136212' # a.k.a. 4A1414
print(f"{(int(device_id[:2]) << 18) + int(device_id[-6:]):0>6X}")

Why can't I see the Controller's temperature sensor?

Q: I use the controller as the sensor for the zone. So being able to see [the] value [of the controller sensor] would be useful?

TL;DR: it is simply not possible to see the value of the controller's temperature sensor

Or maybe you started with the wrong premise:

  • "the value of the zone temperature is useful" (yes, or course it is), versus
  • "so the value of the controller's temperature sensor is useful" (N/A)

I am sorry, I have failed to explain this before...

The zone temperatures are all easily determined via discovery: ramses_rf just has to ask the temperature control system (TCS) for them.

In addition, many evohome devices have a temperature sensor - ramses_rf will pick these up by eavesdropping the announcements sent between those devices and the TCS (most of these devices are battery-powered and will not respond to any request for data)

There is one device which has a temperature sensor, but it does not make any such announcement - the controller (which is why you cannot get this value - there is nothing to eavesdrop).

Oh, and the TCS is also the controller.

This is why the temperature Sensor entities have names like

  • 34:123456 (temperature) instead of Kitchen (temperature)

BTW, there are other devices that have temperature sensors that have nothing to do with zones, such as the DHW sensor.

Why do some devices show as the wrong class?

Q: I see that one or more of my devices in Home Assistant doesn't match with my setup (probably a zone setup changed in your controller), how to fix this?

A new schema has to be build by ramses_cc. To initiate this you need to add 'restore_state: false' to your configuration and restart Home Assistant. After the restart your entities should match with your heating setup. You can remove the line so that the state will be restored in the future (or set the value to true).

Example configuration:

ramses_cc:
  (...)
  restore_state: false