home-assistant / core

:house_with_garden: Open source home automation that puts local control and privacy first.
https://www.home-assistant.io
Apache License 2.0
73.64k stars 30.79k forks source link

Yeelight Wifi Lamp can't change Color Temperature #13785

Closed jerryngm closed 6 years ago

jerryngm commented 6 years ago

Home Assistant release with the issue: 0.66.1

Last working Home Assistant release (if known): N/A

Operating environment: Raspberry Pi3

Component/platform: https://www.home-assistant.io/components/light.yeelight (Model: MJTD01YL)

Description of problem: Only "Cold" color works, I can't make the lamp warmer Here is the error log:

Error when calling <function YeelightLight.set_colortemp at 0x6dfc7bb8>: {'message': 'general error', 'code': -5000}

Everything else works fine (E.g brightness, Effects)

Please help. Thank you!

MuppetOwl commented 6 years ago

I have no idea if the issues are connected. But can confirm a similar issue for Z-wave bulbs. Can no longer set a new color on the my zipato bulb 2 after 066 or 066.1. Nothing happens. Turn on/off and dim works.

jerryngm commented 6 years ago

I just found out that Color Temperature for this lamp only works below the middle point of the (Color Temperature setting) bar. The color actually got warmer. However if I set the Color Temperature above/or all the way to the right then I will get the error message image

I think the reason might be that the lamp can't accept the Color Temperature value greater than the middle point of the bar?

syssi commented 6 years ago

This is the reason for the issue: https://community.home-assistant.io/t/yeelight-led-ceiling-light-compatible-with-ha/29509/109

Could you provide some specs of the light and the entity name (if auto-discovered)? I will prepare a fix.

jerryngm commented 6 years ago

Hi syssi, The model is: MJTD01YL. Auto-discovery is not available for this model.

According to their website, the Color Temperature rangr is between 2700-6500K.

Thanks

syssi commented 6 years ago

@jerryngm Could you provide the mDNS name of your device? It should look like this: yeelink-light-ceiling4_mibt72799069._miio._udp.local.

I'm looking for the "ceiling4" part of your mDNS name to identify the device type in future and provide a proper color temp range.

syssi commented 6 years ago

Could somebody provide the model name of the MJTD01YL? The bulb_discovery method of python-yeelight provides this info, too.

mouth4war commented 6 years ago

Hey @syssi the library has a new release now. This issue can be fixed.

mouth4war commented 6 years ago

The associated PR has been closed without merging. It seems like the issue still remains and a new PR is required.

The library version that provides color temp range per model is 0.4.1 and HASS component still uses 0.4.0.

adrianmihalko commented 6 years ago

Same problem here.

2018-10-02 22:40:50 ERROR (SyncWorker_3) [homeassistant.components.light.yeelight] Error when calling <function YeelightLight.set_colortemp at 0x7efd32d8c950>: {'code': -5000, 'message': 'general error'}
2018-10-02 22:40:54 ERROR (SyncWorker_4) [homeassistant.components.light.yeelight] Error when calling <function YeelightLight.set_colortemp at 0x7efd32d8c950>: {'code': -5000, 'message': 'general error'}
2018-10-02 22:40:55 ERROR (SyncWorker_7) [homeassistant.components.light.yeelight] Error when calling <function YeelightLight.set_colortemp at 0x7efd32d8c950>: {'code': -5000, 'message': 'general error'}

Names are like:

light.yeelight_ceiling_7c49ebb3a0e8:
  supported_features: 3
  friendly_name: "Yeelight 6"
light.yeelight_ceiling_7c49ebb3a622:
  supported_features: 3
  friendly_name: "Yeelight 5"
light.yeelight_ceiling_7c49ebb3a748:
  supported_features: 3
  friendly_name: "Yeelight 2"
light.yeelight_rgb_34ce00910f3f:
adrianmihalko commented 6 years ago

I am using the latest home assistant. 0.79.2

adrianmihalko commented 6 years ago

Anyone knows how to install latest library to use with HA?

And I want to ask If Moon mode is supported, or it can be implemented if not?

Moonlight mode: https://forum.yeelight.com/t/enable-moonlight-of-yeelight-ceiling-with-api/1182

It's already implemented in the original library: https://gitlab.com/stavros/python-yeelight/merge_requests/11

Edit:

I upgraded library:

docker exec -ti homeassistant bash
pip install yeelight -U

pip show yeelight
yeelight 0.4.3

...but it still doesn't work.

syssi commented 6 years ago

I will prepare a new PR soon to fix the issue finally.