8000 Add color_mode support to yeelight light by emontnemery · Pull Request #51973 · home-assistant/core · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Add color_mode support to yeelight light #51973

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

Merged
merged 5 commits into from
Jun 25, 2021

Conversation

emontnemery
Copy link
Contributor
@emontnemery emontnemery commented Jun 18, 2021

Proposed change

Add color_mode support to yeelight light

The driver is to fix scene support as reported here: #46341

Also fix a bug related to translation between HS color from the yeelight API and HS color in Home Assistant's format

Type of change

  • Dependency upgrade
  • Bugfix (non-breaking change which fixes an issue)
  • New integration (thank you!)
  • New feature (which adds functionality to an existing integration)
  • Breaking change (fix/feature causing existing functionality to break)
  • Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • The code change is tested and works locally.
  • Local tests pass. Your PR cannot be merged unless tests pass
  • There is no commented out code in this PR.
  • I have followed the development checklist
  • The code has been formatted using Black (black --fast homeassistant tests)
  • Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • Untested files have been added to .coveragerc.

The integration reached or maintains the following Integration Quality Scale:

  • No score or internal
  • 🥈 Silver
  • 🥇 Gold
  • 🏆 Platinum

To help with the load of incoming pull requests:

@emontnemery
Copy link
Contributor Author

@rytilahti , @zewelor , @shenxn Please help to review this


return (hue / 360 * 65536, sat / 100 * 255)
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This conversion seems wrong; Home Assistant expects hue in the range 0..360, not 0..65536 and a saturation in the range 0..100, not 0..255.
Since yeelight uses the same ranges, no conversion should be needed.

Copy link
Member
@rytilahti rytilahti left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR! Alas, It's been such a long time since I touched this code that I cannot give much feedback here :-(

I went and tested the PR on my setup and everything seems to be working fine; the active color mode is displayed correctly, and both color & temperature controls work with yeelink.light.color1 as expected. I did not test the scene support nor any of the services, just played around a bit with the UI. I also verified that the HS mode is correctly displayed by activating it using yeecli (there is no way to control this homeassistant, I suppose?).

@rytilahti rytilahti merged commit dad7a59 into home-assistant:dev Jun 25, 2021
@github-actions github-actions bot locked and limited conversation to collaborators Jun 26, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants
0