5.2 Faking Remotes (switches) - ramses-rf/ramses_cc GitHub Wiki
NOTE: This feature relies on user-provided bind sequences, specific for a device model and manufacturer (OEM). They have been collected in this repository, and were eavesdropped from traffic between the original physical devices and accessories. You are invited to contribute!
Accessories for remote faking supported by Ramses RF include:
- Itho remote to a FAN
- Nuaire 4-way switch to a PIV (positive ventilation unit)
- Orcon RF15 to a HRU (heat recovery ventilation unit)
- Vasco 4-button remote to HRU
- ClimaRad 4-button remote to MiniBox fan
The binding will require OEM-specific information. The following should work:
| OEM | device type | OEM code | device_info payload |
|---|---|---|---|
| Itho | 37: |
01 |
0000010028090101FEFFFFFFFFFF140107E5564D532D313243333900 |
| Nuaire | 32: |
6C |
000001C85A01016CFFFFFFFFFFFF010607E0564D4E2D32334C4D48323300 |
| Orcon | 37: |
67 |
000001C894030167FFFFFFFFFFFF1B0807E4564D492D313557534A353300 |
Tip: If your vendor isn't one of the above, you can determine the OEM by inspecting the parsed
10E0payload from your accessory in the HomeAssistant system log (byte 8 is the OEM code).
This section discusses 100% faked remotes, meaning they only exist in the software.
If you have a physical RF switch, it will be picked up by the Passive Device Scan as soon as you press any of the buttons. Confirm the suggestion in the notification to add it to your system. The integration even tries to discover the command set used by the remote, a so called scheme (not to be confused with schema!). If that remote was already "bound" to a fan using the steps described in your fan instructions, the remote is already coupled to the hardware fan and you can skip this section. Add the _faked: true line under the entry in the Configuration Schema, and use the same address to send commands from Ramses RF.
ClimaRad: ...
WIP
Itho: ...
WIP
Nuaire: 4-way Switch to PIV
This section describes binding a faked Nuaire DRI-ECO-4S to a DRI-ECO-HEAT-HC. Other models should work similarly, but YMMV.
Nuaire PIVs only support a single switch (plus a single CO2, and a single humidity sensor).
To declare a faked remote called 32:123456, add this to your Configuration Schema and restart HA:
32:123456:
_class: REM
_faked: true # device type 32: for Nuaire
_bound: 30:082155
_owner: me
Perform initial binding
To bind the switch, put the PIV into binding mode and invoke this Action:
action: ramses_cc.bind_device
data:
device_id: 32:123456
offer:
"22F1": # 4-way switches only support 22F1
"10E0": # double-quotes are required for 10E0
device_info: " I --- 32:123456 63:262142 --:------ 10E0 030 000001C85A01016CFFFFFFFFFFFF010607E0564D4E2D32334C4D48323300"
Note: Binding will fail without a valid
device_infopacket. The double quotes are necessary to protect the leading space.
Successful bindings will have an I-W-I sequence in the packet log similar to:
> ~ grep config/packet.log -E ' (10E0|1FC9) '
21:04:54.304429 000 I --- 32:123456 --:------ 32:123456 1FC9 024 0022F18325AA6C10E08325AA001FC98325AA
21:04:54.382823 050 W --- 30:082155 32:123456 --:------ 1FC9 012 2131DA7940EB6C10E07940EB
21:04:54.465230 000 I --- 32:123456 30:082155 --:------ 1FC9 001 21
21:04:54.546717 000 I --- 32:123456 63:262142 --:------ 10E0 030 000001C85A01016CFFFFFFFFFFFF010607E0564D4E2D32334C4D48323300
NOTE: Write down the device id of your PIV (this one is
30:082155); you will need it to create the commands later on.
Faking the switch
Add these commands to your Configuration Schema and restart HA:
32:123456:
_class: REM
_faked: true
_commands:
normal: ' I --- 32:123456 30:082155 --:------ 22F1 003 00020A'
boost: ' I --- 32:123456 30:082155 --:------ 22F1 003 00030A'
heater_off: ' I --- 32:123456 30:082155 --:------ 22F1 003 00090A'
heater_auto: ' I --- 32:123456 30:082155 --:------ 22F1 003 000A0A'
battery_ok: ' I --- 32:123456 --:------ 32:123456 1060 003 00FF01'
get_fan_info: 'RQ --- 32:123456 30:082155 --:------ 31DA 001 00'
_owner: me
Note: You need to use the device_id of your PIV, which is unlikely to be
30:082155.
Then, to invoke a command, use the ramses_cc.send_command Action:
action: ramses_cc.send_command
target:
entity_id: remote.32_123456
data:
command: boost
Orcon: 15RF
This is how to bind an Orcon 15RF to an MVS-15...
Perform initial binding
To initiate a bind, put the HRU into binding mode and use this Action:
action: ramses_cc.bind_device
data:
device_id: 37:123456
offer:
"22F1":
"22F3":
"10E0":
device_info: " I --- 37:123456 63:262142 --:------ 10E0 038 000001C894030167FFFFFFFFFFFF1B0807E4564D492D313557534A3533000000000000000000"
Note: Binding will fail without a valid
device_infopayload. Note the leading space, which has necessitated the double quotes.
Successful bindings will have an I-W-I sequence in the packet log similar to::
> ~ grep config/packet.log -E ' (10E0|1FC9) '
21:04:54.304429 000 I --- 37:123456 --:------ 32:123456 1FC9 024 0022F18325AA6C10E08325AA001FC98325AA
21:04:54.382823 050 W --- 32:082155 37:123456 --:------ 1FC9 012 2131DA7940EB6C10E07940EB
21:04:54.465230 000 I --- 37:123456 32:082155 --:------ 1FC9 001 21
21:04:54.546717 000 I --- 37:123456 63:262142 --:------ 10E0 038 000001C894030167FFFFFFFFFFFF1B0807E4564D492D313557534A3533000000000000000000
NOTE: Write down the device id of your PIV (this one is
32:082155), you will need it to create the commands below.
29:163367:
_class: REM
_note: Orcon 15RF remote
_commands:
away: " I --- 37:123456 32:082155 --:------ 22F1 003 000004"
low: " I --- 37:123456 32:082155 --:------ 22F1 003 000104"
medium: " I --- 37:123456 32:082155 --:------ 22F1 003 000204"
high: " I --- 37:123456 32:082155 --:------ 22F1 003 000304"
auto: " I --- 37:123456 32:082155 --:------ 22F1 003 000404"
timer_15mins: " I --- 37:123456 32:082155 --:------ 22F3 007 00020F03040000"
timer_30mins: " I --- 37:123456 32:082155 --:------ 22F3 007 00021E03040000"
timer_60mins: " I --- 37:123456 32:082155 --:------ 22F3 007 00023C03040000"
Vasco: ...
WIP