tuya-home-assistant icon indicating copy to clipboard operation
tuya-home-assistant copied to clipboard

LED Strip brightness mapping is wrong

Open ptavasci opened this issue 2 years ago • 4 comments

Describe the bug Brightness level mapping on Warm White/Cool White is working OK Brightness level mapping on RGB mode is not working OK

Same issue as described in this integration of Local TUYA https://github.com/rospogrigio/localtuya/issues/33

Expected behavior I would expect that 100% of britghtness in the integration with Home Assistant would set 100% britghtness in then led strip and the Smart Life App. Instead, 100% in HA on RGB sets about 25% of brightness in the led strip and in the Smart Life App.

Home Assistant Version core-2021.8.8 supervisor-2021.06.8 Sistema operativo Debian GNU/Linux 10 (buster) Versión de Docker 20.10.8

**Device info/specifications **

{ "active_time":1608259869, "biz_type":18, "category":"dd", "create_time":1600114497, "icon":"smart/icon/ay1532660270361428EU/26b43242c44734bbb456b35b0b6d75ce.png", "id":"eb08fa3f5eb63b0c4csajh", "ip":"", "lat":"", "local_key":"", "lon":"", "model":"sirui-rgbcw", "name":"Cama de Sofi", "online":true, "owner_id":"21235077", "product_id":"w5v2xttjxib8sajw", "product_name":"sirui-rgbcw", "status":[ { "code":"switch_led", "value":false }, { "code":"work_mode", "value":"colour" }, { "code":"bright_value", "value":1000 }, { "code":"temp_value", "value":500 }, { "code":"colour_data", "value":"{"h":304,"s":1000,"v":1000}" }, { "code":"scene_data", "value":"{"scene_num":2,"scene_units":[{"bright":1000,"h":0,"s":0,"temperature":500,"unit_change_mode":"static","unit_gradient_duration":13,"unit_switch_duration":14,"v":0}]}" }, { "code":"countdown", "value":0 } ], "sub":false, "time_zone":"-03:00", "uid":"", "update_time":1629442095, "uuid":"29bb98de99d1e0b9" }, { "active_time":1600899125, "biz_type":18, "category":"dd", "create_time":1599689881, "icon":"smart/icon/ay1532660270361428EU/26b43242c44734bbb456b35b0b6d75ce.png", "id":"eb37100112a8bfa1fexa8o", "ip":"", "lat":"", "local_key":"", "lon":"", "model":"sirui-rgbcw", "name":"Sillón", "online":true, "owner_id":"21235077", "product_id":"w5v2xttjxib8sajw", "product_name":"sirui-rgbcw", "status":[ { "code":"switch_led", "value":true }, { "code":"work_mode", "value":"white" }, { "code":"bright_value", "value":1000 }, { "code":"temp_value", "value":500 }, { "code":"colour_data", "value":"{"h":300,"s":260,"v":1000}" }, { "code":"scene_data", "value":"{"scene_num":2,"scene_units":[{"bright":1000,"h":0,"s":0,"temperature":500,"unit_change_mode":"static","unit_gradient_duration":13,"unit_switch_duration":14,"v":0}]}" }, { "code":"countdown", "value":0 } ], "sub":false, "time_zone":"-03:00", "uid":"", "update_time":1629268101, "uuid":"2d9402c02f19f953" }, { "active_time":1600899067, "biz_type":18, "category":"dd", "create_time":1598994217, "icon":"smart/icon/ay1532660270361428EU/26b43242c44734bbb456b35b0b6d75ce.png", "id":"ebcd2e2f01cadd51f67spn", "ip":"", "lat":"", "local_key":"", "lon":"", "model":"sirui-rgbcw", "name":"Escritorio", "online":true, "owner_id":"21235077", "product_id":"w5v2xttjxib8sajw", "product_name":"sirui-rgbcw", "status":[ { "code":"switch_led", "value":true }, { "code":"work_mode", "value":"white" }, { "code":"bright_value", "value":1000 }, { "code":"temp_value", "value":423 }, { "code":"colour_data", "value":"{"h":270,"s":255,"v":255}" }, { "code":"scene_data", "value":"{"scene_num":2,"scene_units":[{"bright":1000,"h":0,"s":0,"temperature":500,"unit_change_mode":"static","unit_gradient_duration":13,"unit_switch_duration":14,"v":0}]}" }, { "code":"countdown", "value":0 } ], "sub":false, "time_zone":"-03:00", "uid":"***", "update_time":1629268099, "uuid":"0bb628aee29fba87" }

Additional context None

ptavasci avatar Aug 20 '21 21:08 ptavasci

I'm dealing with exactly the same issue with my RGBCCT lights. The brightness and color temperature of the WW and CW work without issue.

However in the RGB mode there is an issue. For example, if light is set to red via color wheel in HA with 100% brightness, the light switches to 26% brightness and the color saturation on the color palette wheel is also reduced, like visible on the screenshot below:

Screenshot_20210821_123741_com tuya smartlife - Copy

Device info/specifications

{ "active_time": 1623166604, "biz_type": 18, "category": "dd", "create_time": 1623166604, "icon": "smart/icon/ay1532660270361428EU/87af0626f0d76af969f07557f84cba26.png", "id": "", "ip": "", "lat": "", "local_key": "", "lon": "", "model": "wifi-5ch", "name": "Bed light", "online": true, "owner_id": "10021157", "product_id": "qfx0apvo5dsigaj9", "product_name": "YSR-RGBCW", "status": [ { "code": "switch_led", "value": false }, { "code": "work_mode", "value": "colour" }, { "code": "bright_value", "value": 1000 }, { "code": "temp_value", "value": 0 }, { "code": "colour_data", "value": "{"h":360,"s":255,"v":255}" }, { "code": "scene_data", "value": "{"scene_num":1,"scene_units":[{"bright":200,"h":0,"s":0,"temperature":0,"unit_change_mode":"static","unit_gradient_duration":13,"unit_switch_duration":14,"v":0}]}" }, { "code": "countdown", "value": 0 } ], "sub": false, "time_zone": "+02:00", "uid": "eu1580147494420s6vlA", "update_time": 1629470329, "uuid": "6fefcde42e6796fe" }, "success": true, "t": 1629543873545 }

If I am not mistaken, the wrong values for saturation and value (both 255 therefore showing as 26% in the Smart life app) are sent to the device when 100% brightness and 100% saturation is selected in HA RGB color palette wheel and the brightness slider.

Additional context

[tuya iot] on_message: {'data': {'dataId': '0e59bd74-1dce-4604-bc8b-30f7d1a00302', 'devId': '', 'productKey': 'qfx0apvo5dsigaj9', 'status': [{'24': '016800ff00ff', 'code': 'colour_data', 't': '1629548477', 'value': '{"h":0,"s":255,"v":255}'}]}, 'protocol': 4, 'pv': '2.0', 'sign': '7f53d9144fb1c6c23bbcfb03785f8949', 't': 1629548477}

It should probably be sending 1000 for both brightness and saturation like in the bolded text below:

[tuya iot] mq _on_device_report-> [{'24': '000003e803e8', 'code': 'colour_data', 't': '1629549244', 'value': '{"h":0,"s":1000,"v":1000}'}]

User2234 avatar Aug 21 '21 12:08 User2234

Same issue here! Any workaround until a fix has been released?

bellini666 avatar Sep 08 '21 22:09 bellini666

I figured a workaround in Node-RED that works, but for the moment I only needed for the red light with low brightness to be turned on based on the motion sensor. I guess if CCT or other options would be needed it shouldn't be too hard to modify my template.

I've used the node-red-contrib-tuya-smart-device module in Node-RED to add my RGB light and then listened what values it was receiving when I changed the setting in my mobile app. The relevant part of the flow looks like this: image

Below are the contents of the function node. The essential part is the value after "24", the one in the example below sets my light to red at 10% brightness:

msg.payload = {"multiple": true, "data": {"20": msg.payload, "24":"000003e80062" } }


/*

    */
return msg;

It's not an elegant workaround, but I am just starting my first month with HA so can't really figure out a better one.

Hopefully, the issue will be closed in one of the future releases as it would be much easier to control the light with the RGB/CCT picker.

User2234 avatar Sep 10 '21 19:09 User2234

This is still an issue

Wlada avatar Apr 01 '22 02:04 Wlada