ramses_rf
ramses_rf copied to clipboard
Add 22F1 and 22F3 to HVAC FAN device class
An Orcon RF15 display can send 22F1 and 22F3 commands to HRC Fan unit, which can relay these commands to a SmartComfort valve. Hence FAN devices can send 22F1 and 22F3.
@zxdavb I'm not sure this needs tests. If so, please point me in the right direction and I'll add it.
I am not sure I want to do it this way. I think I'd rather create a new entity that is a FAN/REM hybrid.
So, in device\hvac.py:
classHvacVentilatorDual(HvacVentilatorBase, HvacRemoteBase): # DUA
Although, the above is a very simplistic hint of what I would do... Some tidy-up would be required, e.g. you wouldn't want faking.
classHvacRemote(Fakeable, HvacRemoteBase): # REM
classHvacVentilator(HvacVentilatorBase): # FAN
What we're saying, above is that there's a device that is a FAN, and a REM.
known_devices:
35:12345: {class: DUA}
In the upper layer, you can then do things like:
if isintance (device, HvacRemoteBase)
This is OK, because I already have plans for extending FAN into HRU, CVE & PIV.
All the above is an architectural issue - so, we don't want to get it wrong.
@zxdavb It is certainly much more robust that way. It will probably be easier to identify FAN devices if we assume they never send fan speed commands.
I'll try to implement when time permits.