Description
Описание
В строке 217 мы проверяем if self.white_value is not None:
, но метод self.white_value всегда возвращает float, так как указано дефолтное значения
def white_value(self): # if self.supported_features & SUPPORT_WHITE_VALUE: return float(self.get_attribute("white_value", 0))
Что может приводит к ошибке
File "/config/custom_components/mega/light.py", line 244, in async_turn_on _before = self.get_rgbw() ^^^^^^^^^^^^^^^ File "/config/custom_components/mega/light.py", line 227, in get_rgbw self.lg.debug(f'rgb: {[round(x * self.max_values[i]) for i, x in enumerate(rgb)]}') ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/config/custom_components/mega/light.py", line 227, in <listcomp> self.lg.debug(f'rgb: {[round(x * self.max_values[i]) for i, x in enumerate(rgb)]}') ~~~~~~~~~~~~~~~^^^
Если мы работаем с rgb, а не с rgbw.
Как вариант решения:
def white_value(self): # if self.supported_features & SUPPORT_WHITE_VALUE: return self.get_attribute("white_value")
Версии систем
Enviroment: linux
HA version: Home Assistant 2023.10.1
mega_hacs version: v1.1.7
megad firmware version: MegaD-2561 by ab-log.ru (fw: 4.60b6)
используется mqtt: false