-
-
Notifications
You must be signed in to change notification settings - Fork 33.8k
Fix for OSR 8000 AM lights connected to hue bridge #6122
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
@groth-its, thanks for your PR! By analyzing the history of the files in this pull request, we identified @balloob, @fabaff and @michaelarnauts to be potential reviewers. |
Hello @groth-its, When attempting to inspect the commits of your pull request for CLA signature status among all authors we encountered commit(s) which were not linked to a GitHub account, thus not allowing us to determine their status(es). The commits that are missing a linked GitHub account are the following:
Unfortunately, we are unable to accept this pull request until this situation is corrected. Here are your options:
We apologize for this inconvenience, especially since it usually bites new contributors to Home Assistant. We hope you understand the need for us to protect ourselves and the great community we all have built legally. The best thing to come out of this is that you only need to fix this once and it benefits the entire Home Assistant and GitHub community. Thanks, I look forward to checking this PR again soon! ❤️ |
homeassistant/util/color.py
Outdated
def color_xy_brightness_to_hsv(vX: float, vY: float, | ||
ibrightness: int) -> Tuple[int, int, int]: | ||
return color_RGB_to_hsv(color_xy_brightness_to_RGB(vX, vY, ibrightness)) | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
indentation contains tabs
indentation contains mixed spaces and tabs
blank line contains whitespace
homeassistant/util/color.py
Outdated
|
||
def color_xy_brightness_to_hsv(vX: float, vY: float, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
expected 2 blank lines, found 1
homeassistant/util/color.py
Outdated
@@ -258,7 +259,14 @@ def color_xy_brightness_to_RGB(vX: float, vY: float, | |||
|
|||
return (ir, ig, ib) | |||
|
|||
def color_RGB_to_hsv(iR: int, iG: int, iB: int) -> Tuple[int, int, int]: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
expected 2 blank lines, found 1
@@ -369,12 +369,25 @@ def turn_on(self, **kwargs): | |||
command['transitiontime'] = kwargs[ATTR_TRANSITION] * 10 | |||
|
|||
if ATTR_XY_COLOR in kwargs: | |||
command['xy'] = kwargs[ATTR_XY_COLOR] | |||
if self.info['manufacturername'] == "OSRAM": | |||
hsv = color_xy_brightness_to_hsv(kwargs[ATTR_XY_COLOR], ibrightness=self.info['bri']) | 8000
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
undefined name 'color_xy_brightness_to_hsv'
line too long (101 > 79 characters)
Hi @groth-its, It seems you haven't yet signed a CLA. Please do so here. Once you do that we will be able to review and accept this pull request. Thanks! |
command['xy'] = kwargs[ATTR_XY_COLOR] | ||
if self.info['manufacturername'] == "OSRAM": | ||
hsv = color_xy_brightness_to_hsv(kwargs[ATTR_XY_COLOR], | ||
ibrightness=self.info['bri']) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
continuation line under-indented for visual indent
@@ -369,12 +369,26 @@ def turn_on(self, **kwargs): | |||
command['transitiontime'] = kwargs[ATTR_TRANSITION] * 10 | |||
|
|||
if ATTR_XY_COLOR in kwargs: | |||
command['xy'] = kwargs[ATTR_XY_COLOR] | |||
if self.info['manufacturername'] == "OSRAM": | |||
hsv = color_util.color_xy_brightness_to_hsv(kwargs[ATTR_XY_COLOR], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
line too long (82 > 79 characters)
homeassistant/util/color.py
Outdated
@@ -372,4 +385,4 @@ def color_temperature_mired_to_kelvin(mired_temperature): | |||
|
|||
def color_temperature_kelvin_to_mired(kelvin_temperature): | |||
"""Convert degrees kelvin to mired shift.""" | |||
return 1000000 / kelvin_temperature | |||
return 1000000 / kelvin_temperature |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no newline at end of file
@@ -439,4 +455,4 @@ def device_state_attributes(self): | |||
attributes[ATTR_EMULATED_HUE] = self.allow_in_emulated_hue | |||
if self.is_group: | |||
attributes[ATTR_IS_HUE_GROUP] = self.is_group | |||
return attributes | |||
return attributes |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no newline at end of file
Do not send command "effect = none" to OSRAM lights Osram lights connected to a hue bridge do not seem to handle "effect = none" very well. Most of the times they jump to the selected color and then change to red within a second. Osram lights connected to a hue bridge do not handle xy values outside of their gamut. Since they just stay at their old color value, handling the UI is very unpredictable. Sending HSV values to the lights fixes this.
@@ -259,6 +260,18 @@ def color_xy_brightness_to_RGB(vX: float, vY: float, | |||
return (ir, ig, ib) | |||
|
|||
|
|||
def color_RGB_to_hsv(iR: int, iG: int, iB: int) -> Tuple[int, int, int]: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you add a test for these util methods.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done.
Hello @groth-its, When attempting to inspect the commits of your pull request for CLA signature status among all authors we encountered commit(s) which were not linked to a GitHub account, thus not allowing us to determine their status(es). The commits that are missing a linked GitHub account are the following:
Unfortunately, we are unable to accept this pull request until this situation is corrected. Here are your options:
We apologize for this inconvenience, especially since it usually bites new contributors to Home Assistant. We hope you understand the need for us to protect ourselves and the great community we all have built legally. The best thing to come out of this is that you only need to fix this once and it benefits the entire Home Assistant and GitHub community. Thanks, I look forward to checking this PR again soon! ❤️ |
tests/util/test_color.py
Outdated
color_util.color_RGB_to_hsv(0, 255, 0)) | ||
|
||
self.assertEqual((0, 255, 255), | ||
color_util.color_RGB_to_hsv(255, 0, 0)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
trailing whitespace
Thanks! 🐬 |
Do not send command "effect = none" to OSRAM lights
Osram lights connected to a hue bridge do not seem to handle "effect =
none" very well. Most of the times they jump to the selected color and
then change to red within a second.
Osram lights connected to a hue bridge do not handle xy values outside
of their gamut. Since they just stay at their old color value, handling
the UI is very unpredictable. Sending HSV values to the lights fixes this.