core: Yeelight color4 is not configured correctly
The problem
Yeelight Color 1S (color4) is discovered via integration but no device or entities is created. When adding manually the light in configuration.yaml, the light is not available (but entities is created)
The light has a fixed IP and LAN enabled. My other yeelights works without any problem (color1 and color2, via autodiscovery and manually)
Environment
Home Assistant 2020.12.1 on docker
Problem-relevant configuration.yaml
Traceback/Error logs
Additional information
About this issue
- Original URL
- State: closed
- Created 4 years ago
- Reactions: 1
- Comments: 53 (4 by maintainers)
Latest news: I was able to extract my token and use the miio protocol… Now all commands are very fast! Only the reading of the status remains slow… for example, if I turn off the strip from the button, Home Assistant needs about 5-10 seconds to update the status
Well a lot can still happen, post any issues on the repo issue tracker.
The next big thing is the miio protocol it uses the same way xiaomi/yeelight communicates with the bulb. So bye bye buggy LAN Control. The downside is that it’s requires you to extract the tokens used for authentication. I already have an initial implementation though.
As explained here : https://python-miio.readthedocs.io/en/latest/yeelight.html#yeelight-token-extraction
TLDR Android token extraction:
@sdemmery haha well I have troubleshooted it a bit. It all comes down that you need to use HTTPS instead Using SSH on a repo with is not your own for which you don’t have WRITE access causes this.
I’ve pushed a commit and made sure the submodules are pulled using HTTPS as well. And tested it on a computer with no ssh keys.
Anyway this should do it (HTTPS):
@sdemmery Try ssh -T git@github.com If this fails it means you havent properly added your pub key in github
As an alternative you can also use HTTPS instead of ssh though I’d recommend ssh (since the submodules are configured to pull using ssh as well) Else you’d have to manually pull in those respective repositories
You can mount the yeelight integration as a custom component and update the manifest.json to use my yeelight library instead.
So copy all files from https://github.com/home-assistant/core/tree/dev/homeassistant/components/yeelight
Put it into a folder such as yeelight_v2 Update the manifests.json
Create folder called custom_components in your root directory (where your configuration.yaml is) and copy the yeelight_v2 folder to custom_components.
Affter that update your configuration.yaml Uncomment yeelight: <-- This is important. If you use both, the original python-yeelight library will be used instead of mine. And use yeelight_v2:
Example: