Skip to content

Ошибка в mega.light метод get_rgbw #165

Open
@lesovoy-alim

Description

@lesovoy-alim

Описание
В строке 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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions