mirror of
https://github.com/home-assistant/core.git
synced 2025-07-13 08:17:08 +00:00
Update xknx to 0.17.1 (#46974)
This commit is contained in:
parent
87cbbcb014
commit
d02b27a5d0
@ -106,34 +106,34 @@ CONFIG_SCHEMA = vol.Schema(
|
|||||||
vol.Optional(CONF_KNX_EXPOSE): vol.All(
|
vol.Optional(CONF_KNX_EXPOSE): vol.All(
|
||||||
cv.ensure_list, [ExposeSchema.SCHEMA]
|
cv.ensure_list, [ExposeSchema.SCHEMA]
|
||||||
),
|
),
|
||||||
vol.Optional(SupportedPlatforms.cover.value): vol.All(
|
vol.Optional(SupportedPlatforms.COVER.value): vol.All(
|
||||||
cv.ensure_list, [CoverSchema.SCHEMA]
|
cv.ensure_list, [CoverSchema.SCHEMA]
|
||||||
),
|
),
|
||||||
vol.Optional(SupportedPlatforms.binary_sensor.value): vol.All(
|
vol.Optional(SupportedPlatforms.BINARY_SENSOR.value): vol.All(
|
||||||
cv.ensure_list, [BinarySensorSchema.SCHEMA]
|
cv.ensure_list, [BinarySensorSchema.SCHEMA]
|
||||||
),
|
),
|
||||||
vol.Optional(SupportedPlatforms.light.value): vol.All(
|
vol.Optional(SupportedPlatforms.LIGHT.value): vol.All(
|
||||||
cv.ensure_list, [LightSchema.SCHEMA]
|
cv.ensure_list, [LightSchema.SCHEMA]
|
||||||
),
|
),
|
||||||
vol.Optional(SupportedPlatforms.climate.value): vol.All(
|
vol.Optional(SupportedPlatforms.CLIMATE.value): vol.All(
|
||||||
cv.ensure_list, [ClimateSchema.SCHEMA]
|
cv.ensure_list, [ClimateSchema.SCHEMA]
|
||||||
),
|
),
|
||||||
vol.Optional(SupportedPlatforms.notify.value): vol.All(
|
vol.Optional(SupportedPlatforms.NOTIFY.value): vol.All(
|
||||||
cv.ensure_list, [NotifySchema.SCHEMA]
|
cv.ensure_list, [NotifySchema.SCHEMA]
|
||||||
),
|
),
|
||||||
vol.Optional(SupportedPlatforms.switch.value): vol.All(
|
vol.Optional(SupportedPlatforms.SWITCH.value): vol.All(
|
||||||
cv.ensure_list, [SwitchSchema.SCHEMA]
|
cv.ensure_list, [SwitchSchema.SCHEMA]
|
||||||
),
|
),
|
||||||
vol.Optional(SupportedPlatforms.sensor.value): vol.All(
|
vol.Optional(SupportedPlatforms.SENSOR.value): vol.All(
|
||||||
cv.ensure_list, [SensorSchema.SCHEMA]
|
cv.ensure_list, [SensorSchema.SCHEMA]
|
||||||
),
|
),
|
||||||
vol.Optional(SupportedPlatforms.scene.value): vol.All(
|
vol.Optional(SupportedPlatforms.SCENE.value): vol.All(
|
||||||
cv.ensure_list, [SceneSchema.SCHEMA]
|
cv.ensure_list, [SceneSchema.SCHEMA]
|
||||||
),
|
),
|
||||||
vol.Optional(SupportedPlatforms.weather.value): vol.All(
|
vol.Optional(SupportedPlatforms.WEATHER.value): vol.All(
|
||||||
cv.ensure_list, [WeatherSchema.SCHEMA]
|
cv.ensure_list, [WeatherSchema.SCHEMA]
|
||||||
),
|
),
|
||||||
vol.Optional(SupportedPlatforms.fan.value): vol.All(
|
vol.Optional(SupportedPlatforms.FAN.value): vol.All(
|
||||||
cv.ensure_list, [FanSchema.SCHEMA]
|
cv.ensure_list, [FanSchema.SCHEMA]
|
||||||
),
|
),
|
||||||
}
|
}
|
||||||
|
@ -26,23 +26,23 @@ CONF_RESET_AFTER = "reset_after"
|
|||||||
class ColorTempModes(Enum):
|
class ColorTempModes(Enum):
|
||||||
"""Color temperature modes for config validation."""
|
"""Color temperature modes for config validation."""
|
||||||
|
|
||||||
absolute = "DPT-7.600"
|
ABSOLUTE = "DPT-7.600"
|
||||||
relative = "DPT-5.001"
|
RELATIVE = "DPT-5.001"
|
||||||
|
|
||||||
|
|
||||||
class SupportedPlatforms(Enum):
|
class SupportedPlatforms(Enum):
|
||||||
"""Supported platforms."""
|
"""Supported platforms."""
|
||||||
|
|
||||||
binary_sensor = "binary_sensor"
|
BINARY_SENSOR = "binary_sensor"
|
||||||
climate = "climate"
|
CLIMATE = "climate"
|
||||||
cover = "cover"
|
COVER = "cover"
|
||||||
fan = "fan"
|
FAN = "fan"
|
||||||
light = "light"
|
LIGHT = "light"
|
||||||
notify = "notify"
|
NOTIFY = "notify"
|
||||||
scene = "scene"
|
SCENE = "scene"
|
||||||
sensor = "sensor"
|
SENSOR = "sensor"
|
||||||
switch = "switch"
|
SWITCH = "switch"
|
||||||
weather = "weather"
|
WEATHER = "weather"
|
||||||
|
|
||||||
|
|
||||||
# Map KNX controller modes to HA modes. This list might not be complete.
|
# Map KNX controller modes to HA modes. This list might not be complete.
|
||||||
|
@ -40,34 +40,34 @@ def create_knx_device(
|
|||||||
config: ConfigType,
|
config: ConfigType,
|
||||||
) -> XknxDevice:
|
) -> XknxDevice:
|
||||||
"""Return the requested XKNX device."""
|
"""Return the requested XKNX device."""
|
||||||
if platform is SupportedPlatforms.light:
|
if platform is SupportedPlatforms.LIGHT:
|
||||||
return _create_light(knx_module, config)
|
return _create_light(knx_module, config)
|
||||||
|
|
||||||
if platform is SupportedPlatforms.cover:
|
if platform is SupportedPlatforms.COVER:
|
||||||
return _create_cover(knx_module, config)
|
return _create_cover(knx_module, config)
|
||||||
|
|
||||||
if platform is SupportedPlatforms.climate:
|
if platform is SupportedPlatforms.CLIMATE:
|
||||||
return _create_climate(knx_module, config)
|
return _create_climate(knx_module, config)
|
||||||
|
|
||||||
if platform is SupportedPlatforms.switch:
|
if platform is SupportedPlatforms.SWITCH:
|
||||||
return _create_switch(knx_module, config)
|
return _create_switch(knx_module, config)
|
||||||
|
|
||||||
if platform is SupportedPlatforms.sensor:
|
if platform is SupportedPlatforms.SENSOR:
|
||||||
return _create_sensor(knx_module, config)
|
return _create_sensor(knx_module, config)
|
||||||
|
|
||||||
if platform is SupportedPlatforms.notify:
|
if platform is SupportedPlatforms.NOTIFY:
|
||||||
return _create_notify(knx_module, config)
|
return _create_notify(knx_module, config)
|
||||||
|
|
||||||
if platform is SupportedPlatforms.scene:
|
if platform is SupportedPlatforms.SCENE:
|
||||||
return _create_scene(knx_module, config)
|
return _create_scene(knx_module, config)
|
||||||
|
|
||||||
if platform is SupportedPlatforms.binary_sensor:
|
if platform is SupportedPlatforms.BINARY_SENSOR:
|
||||||
return _create_binary_sensor(knx_module, config)
|
return _create_binary_sensor(knx_module, config)
|
||||||
|
|
||||||
if platform is SupportedPlatforms.weather:
|
if platform is SupportedPlatforms.WEATHER:
|
||||||
return _create_weather(knx_module, config)
|
return _create_weather(knx_module, config)
|
||||||
|
|
||||||
if platform is SupportedPlatforms.fan:
|
if platform is SupportedPlatforms.FAN:
|
||||||
return _create_fan(knx_module, config)
|
return _create_fan(knx_module, config)
|
||||||
|
|
||||||
|
|
||||||
@ -121,12 +121,12 @@ def _create_light(knx_module: XKNX, config: ConfigType) -> XknxLight:
|
|||||||
group_address_tunable_white_state = None
|
group_address_tunable_white_state = None
|
||||||
group_address_color_temp = None
|
group_address_color_temp = None
|
||||||
group_address_color_temp_state = None
|
group_address_color_temp_state = None
|
||||||
if config[LightSchema.CONF_COLOR_TEMP_MODE] == ColorTempModes.absolute:
|
if config[LightSchema.CONF_COLOR_TEMP_MODE] == ColorTempModes.ABSOLUTE:
|
||||||
group_address_color_temp = config.get(LightSchema.CONF_COLOR_TEMP_ADDRESS)
|
group_address_color_temp = config.get(LightSchema.CONF_COLOR_TEMP_ADDRESS)
|
||||||
group_address_color_temp_state = config.get(
|
group_address_color_temp_state = config.get(
|
||||||
LightSchema.CONF_COLOR_TEMP_STATE_ADDRESS
|
LightSchema.CONF_COLOR_TEMP_STATE_ADDRESS
|
||||||
)
|
)
|
||||||
elif config[LightSchema.CONF_COLOR_TEMP_MODE] == ColorTempModes.relative:
|
elif config[LightSchema.CONF_COLOR_TEMP_MODE] == ColorTempModes.RELATIVE:
|
||||||
group_address_tunable_white = config.get(LightSchema.CONF_COLOR_TEMP_ADDRESS)
|
group_address_tunable_white = config.get(LightSchema.CONF_COLOR_TEMP_ADDRESS)
|
||||||
group_address_tunable_white_state = config.get(
|
group_address_tunable_white_state = config.get(
|
||||||
LightSchema.CONF_COLOR_TEMP_STATE_ADDRESS
|
LightSchema.CONF_COLOR_TEMP_STATE_ADDRESS
|
||||||
|
@ -34,14 +34,14 @@ class KNXFan(KnxEntity, FanEntity):
|
|||||||
"""Initialize of KNX fan."""
|
"""Initialize of KNX fan."""
|
||||||
super().__init__(device)
|
super().__init__(device)
|
||||||
|
|
||||||
if self._device.mode == FanSpeedMode.Step:
|
if self._device.mode == FanSpeedMode.STEP:
|
||||||
self._step_range = (1, device.max_step)
|
self._step_range = (1, device.max_step)
|
||||||
else:
|
else:
|
||||||
self._step_range = None
|
self._step_range = None
|
||||||
|
|
||||||
async def async_set_percentage(self, percentage: int) -> None:
|
async def async_set_percentage(self, percentage: int) -> None:
|
||||||
"""Set the speed of the fan, as a percentage."""
|
"""Set the speed of the fan, as a percentage."""
|
||||||
if self._device.mode == FanSpeedMode.Step:
|
if self._device.mode == FanSpeedMode.STEP:
|
||||||
step = math.ceil(percentage_to_ranged_value(self._step_range, percentage))
|
step = math.ceil(percentage_to_ranged_value(self._step_range, percentage))
|
||||||
await self._device.set_speed(step)
|
await self._device.set_speed(step)
|
||||||
else:
|
else:
|
||||||
@ -63,7 +63,7 @@ class KNXFan(KnxEntity, FanEntity):
|
|||||||
if self._device.current_speed is None:
|
if self._device.current_speed is None:
|
||||||
return None
|
return None
|
||||||
|
|
||||||
if self._device.mode == FanSpeedMode.Step:
|
if self._device.mode == FanSpeedMode.STEP:
|
||||||
return ranged_value_to_percentage(
|
return ranged_value_to_percentage(
|
||||||
self._step_range, self._device.current_speed
|
self._step_range, self._device.current_speed
|
||||||
)
|
)
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
"domain": "knx",
|
"domain": "knx",
|
||||||
"name": "KNX",
|
"name": "KNX",
|
||||||
"documentation": "https://www.home-assistant.io/integrations/knx",
|
"documentation": "https://www.home-assistant.io/integrations/knx",
|
||||||
"requirements": ["xknx==0.17.0"],
|
"requirements": ["xknx==0.17.1"],
|
||||||
"codeowners": ["@Julius2342", "@farmio", "@marvin-w"],
|
"codeowners": ["@Julius2342", "@farmio", "@marvin-w"],
|
||||||
"quality_scale": "silver"
|
"quality_scale": "silver"
|
||||||
}
|
}
|
||||||
|
@ -174,7 +174,7 @@ class LightSchema:
|
|||||||
vol.Optional(CONF_COLOR_TEMP_STATE_ADDRESS): cv.string,
|
vol.Optional(CONF_COLOR_TEMP_STATE_ADDRESS): cv.string,
|
||||||
vol.Optional(
|
vol.Optional(
|
||||||
CONF_COLOR_TEMP_MODE, default=DEFAULT_COLOR_TEMP_MODE
|
CONF_COLOR_TEMP_MODE, default=DEFAULT_COLOR_TEMP_MODE
|
||||||
): cv.enum(ColorTempModes),
|
): vol.All(vol.Upper, cv.enum(ColorTempModes)),
|
||||||
vol.Exclusive(CONF_RGBW_ADDRESS, "color"): cv.string,
|
vol.Exclusive(CONF_RGBW_ADDRESS, "color"): cv.string,
|
||||||
vol.Optional(CONF_RGBW_STATE_ADDRESS): cv.string,
|
vol.Optional(CONF_RGBW_STATE_ADDRESS): cv.string,
|
||||||
vol.Optional(CONF_MIN_KELVIN, default=DEFAULT_MIN_KELVIN): vol.All(
|
vol.Optional(CONF_MIN_KELVIN, default=DEFAULT_MIN_KELVIN): vol.All(
|
||||||
@ -256,7 +256,7 @@ class ClimateSchema:
|
|||||||
vol.Optional(CONF_NAME, default=DEFAULT_NAME): cv.string,
|
vol.Optional(CONF_NAME, default=DEFAULT_NAME): cv.string,
|
||||||
vol.Optional(
|
vol.Optional(
|
||||||
CONF_SETPOINT_SHIFT_MODE, default=DEFAULT_SETPOINT_SHIFT_MODE
|
CONF_SETPOINT_SHIFT_MODE, default=DEFAULT_SETPOINT_SHIFT_MODE
|
||||||
): cv.enum(SetpointShiftMode),
|
): vol.All(vol.Upper, cv.enum(SetpointShiftMode)),
|
||||||
vol.Optional(
|
vol.Optional(
|
||||||
CONF_SETPOINT_SHIFT_MAX, default=DEFAULT_SETPOINT_SHIFT_MAX
|
CONF_SETPOINT_SHIFT_MAX, default=DEFAULT_SETPOINT_SHIFT_MAX
|
||||||
): vol.All(int, vol.Range(min=0, max=32)),
|
): vol.All(int, vol.Range(min=0, max=32)),
|
||||||
|
@ -2333,7 +2333,7 @@ xbox-webapi==2.0.8
|
|||||||
xboxapi==2.0.1
|
xboxapi==2.0.1
|
||||||
|
|
||||||
# homeassistant.components.knx
|
# homeassistant.components.knx
|
||||||
xknx==0.17.0
|
xknx==0.17.1
|
||||||
|
|
||||||
# homeassistant.components.bluesound
|
# homeassistant.components.bluesound
|
||||||
# homeassistant.components.rest
|
# homeassistant.components.rest
|
||||||
|
Loading…
x
Reference in New Issue
Block a user