Add RFXtrx Rfy venetian blinds tilt control (#44309)
* Add tilt control for RFXtrx Rfy venetian blinds * Update Rfy cover test * Update the required version of pyRFXtrx * Update required pyRFXtrx version to 0.26.1 * Revert "Update required pyRFXtrx version to 0.26.1" This reverts commitd54f1645d5
. * Revert "Update the required version of pyRFXtrx" This reverts commitac36d65326
. * Update required version of pyRFXtrx to 0.26.1 * @dzukero Update required version of pyRFXtrx to 0.26.1 * Make requested changes from review * Fix isort * Remove set tilt position support * Remove set tilt position support per review
This commit is contained in:
parent
cc21639f00
commit
2ed7b90027
10 changed files with 375 additions and 8 deletions
|
@ -40,6 +40,10 @@ from .const import (
|
|||
CONF_REMOVE_DEVICE,
|
||||
CONF_REPLACE_DEVICE,
|
||||
CONF_SIGNAL_REPETITIONS,
|
||||
CONF_VENETIAN_BLIND_MODE,
|
||||
CONST_VENETIAN_BLIND_MODE_DEFAULT,
|
||||
CONST_VENETIAN_BLIND_MODE_EU,
|
||||
CONST_VENETIAN_BLIND_MODE_US,
|
||||
DEVICE_PACKET_TYPE_LIGHTING4,
|
||||
)
|
||||
from .cover import supported as cover_supported
|
||||
|
@ -218,6 +222,10 @@ class OptionsFlow(config_entries.OptionsFlow):
|
|||
device[CONF_COMMAND_ON] = command_on
|
||||
if command_off:
|
||||
device[CONF_COMMAND_OFF] = command_off
|
||||
if user_input.get(CONF_VENETIAN_BLIND_MODE):
|
||||
device[CONF_VENETIAN_BLIND_MODE] = user_input[
|
||||
CONF_VENETIAN_BLIND_MODE
|
||||
]
|
||||
|
||||
self.update_config_data(
|
||||
global_options=self._global_options, devices=devices
|
||||
|
@ -282,6 +290,23 @@ class OptionsFlow(config_entries.OptionsFlow):
|
|||
}
|
||||
)
|
||||
|
||||
if isinstance(self._selected_device_object.device, rfxtrxmod.RfyDevice):
|
||||
data_schema.update(
|
||||
{
|
||||
vol.Optional(
|
||||
CONF_VENETIAN_BLIND_MODE,
|
||||
default=device_data.get(
|
||||
CONF_VENETIAN_BLIND_MODE, CONST_VENETIAN_BLIND_MODE_DEFAULT
|
||||
),
|
||||
): vol.In(
|
||||
[
|
||||
CONST_VENETIAN_BLIND_MODE_DEFAULT,
|
||||
CONST_VENETIAN_BLIND_MODE_US,
|
||||
CONST_VENETIAN_BLIND_MODE_EU,
|
||||
]
|
||||
),
|
||||
}
|
||||
)
|
||||
devices = {
|
||||
entry.id: entry.name_by_user if entry.name_by_user else entry.name
|
||||
for entry in self._device_entries
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue