From a21212ab7ebd54343957493ab86ccec16fb6e39e Mon Sep 17 00:00:00 2001 From: Pete Sage <76050312+PeteRager@users.noreply.github.com> Date: Mon, 1 Jun 2026 18:27:50 -0400 Subject: [PATCH] Send midpoint of fan range for mapping devices for Z-Wave (#172562) --- homeassistant/components/zwave_js/fan.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/homeassistant/components/zwave_js/fan.py b/homeassistant/components/zwave_js/fan.py index 4a2be4c6cb4c..ac320ee2e1ef 100644 --- a/homeassistant/components/zwave_js/fan.py +++ b/homeassistant/components/zwave_js/fan.py @@ -268,7 +268,9 @@ class ValueMappingZwaveFan(ZwaveFan): speed_level = math.ceil( percentage_to_ranged_value((1, self.speed_count), percentage) ) - return self.fan_value_mapping.speeds[speed_level - 1][1] + min_speed, max_speed = self.fan_value_mapping.speeds[speed_level - 1] + # Use the midpoint rather than the range maximum for robustness. + return (min_speed + max_speed) // 2 def zwave_speed_to_percentage(self, zwave_speed: int) -> int | None: """Convert a Zwave speed to a percentage.