-
-
Notifications
You must be signed in to change notification settings - Fork 19
4. Support for HVAC systems
The ramses_cc integration supports HVAC systems (HRUs, CVEs, and PIVs), such as from Itho Daalderop and Orcon. Support extends to their remotes and sensors.
At the time of writing, this is a work in progress. These notes apply to release 0.20.22 and later.
HVAC devices that are not specified elsewhere in the schema should be added as orphans. This creates these entities without having to wait for that information to be eavesdropped (a packet from the device is received by the USB dongle). Add the device id to your configuration.yaml file in the following way:
ramses_cc:
orphans_hvac:
- 29:123456
The creation of a known list is not required but strongly recommended.
-
Enforcing the known list will prevent unknown device id's to end up in your schema.
-
For HVAC devices, it is required to specify the class of the device because, unlike Heat devices, you cannot infer the device class (type) from the device ID.
Note that known devices are not instantiated unless they are either discovered, eavesdropped, or in the schema (config schema, or cached schema).
An example of a known list is shown here:
ramses_cc:
known_list:
18:005904: {class: HGI}
29:123456: {class: REM}
32:123456: {class: FAN, _note: HRC-400}
Beware: For your system, a
29:
may be a fan, and not a remote, or a32:
may be a sensor and not a fan, etc..
To control HVAC systems from Home Assistant, remote faking can be used. To do so, the known_list
needs to be extended. An example is shown below:
ramses_cc:
known_list:
28:111111: { class: REM, faked: true, scheme: orcon } # NB: scheme is not yet implemented
29:123456:
class: REM
faked: True
commands:
low: ' I --- 29:123456 --:------ 29:123456 22F1 003 000107'
medium: ' I --- 29:123456 --:------ 29:123456 22F1 003 000207'
high: ' I --- 29:123456 --:------ 29:123456 22F1 003 000307'
The extra options here are faked
, scheme
, and commands
.
-
faked
: a boolean indicator used to set the device as faked - this is required -
commands
: allows for the user to explicitly specify commands that can be send using the faked remote ifscheme
cannot be used -
scheme
(TBA): used to provide the set of commands fro a remote, which can be vary by manufacturer/model
To discover/add commands from your physical remote, a service call can be used. In Home Assistant, go to Developer Tools
, tab Services
and select the service call Remote: Learn Command
. Fill the YAML with the following:
service: remote.learn_command
data:
command: Auto
timeout: 60
target:
entity_id: remote.29_123456
For entity_id
, use the id of your remote. With everything filled in, click CALL SERVICE
. ramses_cc will now listen for the command. Press the button on your remote that you want your faked remote to learn and you will see a green checkmark appear. The command is now learned and will be registered to your entity.
Similar to command learning there is a 'command send' service call. In Home Assistant, go to Developer Tools
, tab Services
and select the service call Remote: Send Command
. Fill the YAML with the following:
service: remote.send_command
data:
command: Auto
target:
entity_id: remote.29_123456
Click the CALL SERVICE
button and ramses_cc will send the command that was learned before under the name Auto
. If your faked remote is bound to your fan it will respond to the command. To see which commands are supported for your remote, go to Developer Tools
, tab STATES
and select your remote entity. Your commands will appear in the State attributes window.
- to be added
Supported fans return data structures (31DA and 31D9) that contain climate information like temperature, humidity and CO2 levels.
- to be added
This is a Nuaire 4-way switch:
ramses_cc:
known_list:
30:082155: { class: FAN, _note: Nuaire PIV }
32:222222:
class: REM
faked: true
commands:
normal: ' I --- 32:222222 30:082155 --:------ 22F1 003 00020A'
boost: ' I --- 32:222222 30:082155 --:------ 22F1 003 00030A'
heater_auto: ' I --- 32:222222 30:082155 --:------ 22F1 003 000A0A'
heater_off: ' I --- 32:222222 30:082155 --:------ 22F1 003 00090A'
_note: Nuaire DRI-ECO-4S (4-way switch)
This is an Orcon remote (WIP):
ramses_cc:
known_list:
32:123456 : { class: FAN, _note: Orcon HRC 400 }
29:123456:
class: REM
faked: True
commands:
away: ' I --- 29:123456 32:123456 --:------ 22F1 003 000007'
low: ' I --- 29:123456 32:123456 --:------ 22F1 003 000107'
medium: ' I --- 29:123456 32:123456 --:------ 22F1 003 000207'
high: ' I --- 29:123456 32:123456 --:------ 22F1 003 000307'
auto: ' I --- 29:123456 32:123456 --:------ 22F1 003 000407'
auto2: ' I --- 29:123456 32:123456 --:------ 22F1 003 000507'
boost: ' I --- 29:123456 32:123456 --:------ 22F1 003 000607'
disable: ' I --- 29:123456 32:123456 --:------ 22F1 003 000707'
bypass_open: ' W --- 29:123456 32:123456 --:------ 22F7 003 00C8EF'
bypass_close: ' W --- 29:123456 32:123456 --:------ 22F7 003 0000EF'
bypass_auto: ' W --- 29:123456 32:123456 --:------ 22F7 003 00FFEF'
reset_filter: ' W --- 29:123456 32:123456 --:------ 10D0 002 00FF'
_note: based upon an Orcon 15RF 6-button remote (VMN-15LF01)