smarthomej / addons

SmartHome/J addons for openHAB
Eclipse Public License 2.0
59 stars 23 forks source link

Tuya Dimmer Power Switch Channel Missing #342

Closed BigGeorgeTx closed 2 years ago

BigGeorgeTx commented 2 years ago

Yesterday I installed a new Tuya Dimmer. It is marketed as Treatlife DS02S. Immediately after I set it up in the SmartLife App, it appeared in the openHAB Things Inbox as a new Tuya Thing (and shortly thereafter it also appeared as an Alexa Thing).

The Tuya Thing automatically created 3 channels (led_type_1, bright_value_1, and brightness_min_1) and I attached Items to them. But there is no power on/off channel, and unlike some smartbulbs I have tried, the dimmer channel does not have a second DP for a switch.

I looked on my TuyaCloud project and found the device. It lists a 4th channel, switch_led_1 | Boolean | "{true,false}". I don't know where to start in trying to manually add a channel when I don't know the DP or how to handle a Boolean.

I observed that the item attached to brightness channel changes to 0 when the device is turned off (either at the physical switch or through the SmartLife App) and to 1 when it is turned off. But send a 0 or a 1 to it through openHAB does nothing (in the console, openhab:send Office_Dimmer_Brightness 0).

I realize there are a gazillion Tuya devices and many are configured in unusual ways and it may not be possible for a binding to anticipate and incorporate them all. But before I send the device back, I thought I would share my experience and see if you have any thoughts on how I can make it work.

Here is the openHAB Thing configuration: `UID: tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw label: Office Dimmer Switch thingTypeUID: tuya:tuyaDevice configuration: protocol: "3.3" productId: opqqmfjz7y2o6y6a deviceId: ebb8edc2de0ce2e480xkxw localKey: 028ce8d2a1814762 channels:

J-N-K commented 2 years ago

Interesting. Can you show the discovery of that device? It's not in the database, so I can't see what's wrong.

jimtng commented 2 years ago

Wouldn't that be the dp2: 1?

BigGeorgeTx commented 2 years ago

I deleted the Thing and then added it with TRACE level logging:

Log filtered by full thing name. Filtered by device ID follows.

2022-03-10 14:19:27.168 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' to inbox. 2022-03-10 14:19:27.169 [INFO ] [openhab.event.InboxAddedEvent ] - Discovery Result with UID 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' has been added. 2022-03-10 14:19:46.495 [INFO ] [a.internal.handler.TuyaDeviceHandler] - Configuring IP address 'DeviceInfo{ip='192.168.1.206', version='3.3'}' for thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw'. 2022-03-10 14:19:46.660 [TRACE] [a.internal.handler.TuyaDeviceHandler] - 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' received status message '{1=true, 2=376.0, 3=100.0, 4=LED, 102=0.0, 104=1.0}' 2022-03-10 14:19:46.662 [DEBUG] [a.internal.handler.TuyaDeviceHandler] - Could not find channel for dp '102' in thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' 2022-03-10 14:19:46.663 [DEBUG] [a.internal.handler.TuyaDeviceHandler] - Could not find channel for dp '104' in thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' 2022-03-10 14:19:46.477 [INFO ] [openhab.event.InboxRemovedEvent ] - Discovery Result with UID 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' has been removed. 2022-03-10 14:19:46.480 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' changed from UNINITIALIZED to INITIALIZING 2022-03-10 14:19:46.495 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' changed from INITIALIZING to OFFLINE (CONFIGURATION_PENDING): Waiting for IP address 2022-03-10 14:19:46.499 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' changed from OFFLINE (CONFIGURATION_PENDING): Waiting for IP address to UNKNOWN 2022-03-10 14:19:46.579 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' changed from UNKNOWN to ONLINE

2022-03-10 14:19:27.168 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' to inbox. 2022-03-10 14:19:27.169 [INFO ] [openhab.event.InboxAddedEvent ] - Discovery Result with UID 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' has been added. 2022-03-10 14:19:46.495 [INFO ] [a.internal.handler.TuyaDeviceHandler] - Configuring IP address 'DeviceInfo{ip='192.168.1.206', version='3.3'}' for thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw'. 2022-03-10 14:19:46.509 [TRACE] [.internal.local.handlers.TuyaDecoder] - udpListener/: Decoded raw payload: {"ip":"192.168.1.206","gwId":"ebb8edc2de0ce2e480xkxw","active":2,"ablilty":0,"encrypt":true,"productKey":"opqqmfjz7y2o6y6a","version":"3.3"} 2022-03-10 14:19:46.510 [DEBUG] [.internal.local.handlers.TuyaDecoder] - udpListener/: Received MessageWrapper{commandType=UDP_NEW, content='DiscoveryMessage{ip='192.168.1.206', deviceId='ebb8edc2de0ce2e480xkxw', active=2, ability=0, mode=0, encrypt=true, productKey='opqqmfjz7y2o6y6a', version='3.3'}'} 2022-03-10 14:19:46.572 [DEBUG] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending DP_QUERY, payload {devId=ebb8edc2de0ce2e480xkxw, uid=ebb8edc2de0ce2e480xkxw, t=1646943586, dps=null, gwId=ebb8edc2de0ce2e480xkxw} 2022-03-10 14:19:46.574 [TRACE] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending encoded '000055AA000000010000000A00000088873FA29B2A253A5A3AF9FA0C70D911160607244977B364D490931F190ED020CCBBA7F797E81E0F89B1B4ED1F0C125013136BF054B6DAB88834B134789415B50013B32F7C3D6E9DBFF813972E9ECFF9829437C98549D0AC4A5350012BD4556B5FD0DC4063CF9C70A4B1D9B729FBDF17702B8708F07D4451CC7B900D9E0D92B4BBDC94AA330000AA55' 2022-03-10 14:19:46.576 [DEBUG] [al.local.handlers.TuyaMessageHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Connection established. 2022-03-10 14:19:46.655 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received encoded '000055AA000000010000000A0000004C00000000976D180DB878DC9C1C1091362B2F5046F01251D029057BDEDB42A8C0B1FB66EF33D7B417BA32B3C2441CFCE25C307487DB56F717BC0F2C42F271708BA17561F67F3749470000AA55' 2022-03-10 14:19:46.657 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Decoded raw payload: {"dps":{"1":true,"2":376,"3":100,"4":"LED","102":0,"104":1}} 2022-03-10 14:19:46.658 [DEBUG] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Received MessageWrapper{commandType=DP_QUERY, content='{1=true, 2=376.0, 3=100.0, 4=LED, 102=0.0, 104=1.0}'} 2022-03-10 14:19:46.660 [TRACE] [a.internal.handler.TuyaDeviceHandler] - 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' received status message '{1=true, 2=376.0, 3=100.0, 4=LED, 102=0.0, 104=1.0}' 2022-03-10 14:19:46.662 [DEBUG] [a.internal.handler.TuyaDeviceHandler] - Could not find channel for dp '102' in thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' 2022-03-10 14:19:46.663 [DEBUG] [a.internal.handler.TuyaDeviceHandler] - Could not find channel for dp '104' in thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' 2022-03-10 14:19:46.871 [TRACE] [rnal.local.handlers.HeartbeatHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending ping 2022-03-10 14:19:46.874 [DEBUG] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending HEART_BEAT, payload {devId=ebb8edc2de0ce2e480xkxw, uid=ebb8edc2de0ce2e480xkxw, t=1646943586, dps=, gwId=ebb8edc2de0ce2e480xkxw} 2022-03-10 14:19:46.876 [TRACE] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending encoded '000055AA000006000000000900000097332E33000000000000000000000000873FA29B2A253A5A3AF9FA0C70D911160607244977B364D490931F190ED020CCBBA7F797E81E0F89B1B4ED1F0C125013136BF054B6DAB88834B134789415B50013B32F7C3D6E9DBFF813972E9ECFF98225951B9AF38C68F68F9A9E3A88D26A17D0DC4063CF9C70A4B1D9B729FBDF17702B8708F07D4451CC7B900D9E0D92B4BB216603A20000AA55' 2022-03-10 14:19:46.982 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received encoded '000055AA00000000000000090000000C00000000B051AB030000AA55' 2022-03-10 14:19:46.984 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Decoded raw payload: 2022-03-10 14:19:46.986 [DEBUG] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Received MessageWrapper{commandType=HEART_BEAT, content=''} 2022-03-10 14:19:46.988 [TRACE] [rnal.local.handlers.HeartbeatHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received pong 2022-03-10 14:19:46.477 [INFO ] [openhab.event.InboxRemovedEvent ] - Discovery Result with UID 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' has been removed. 2022-03-10 14:19:46.480 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' changed from UNINITIALIZED to INITIALIZING 2022-03-10 14:19:46.495 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' changed from INITIALIZING to OFFLINE (CONFIGURATION_PENDING): Waiting for IP address 2022-03-10 14:19:46.499 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' changed from OFFLINE (CONFIGURATION_PENDING): Waiting for IP address to UNKNOWN 2022-03-10 14:19:46.579 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' changed from UNKNOWN to ONLINE 2022-03-10 14:19:48.909 [TRACE] [rnal.local.handlers.HeartbeatHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending ping 2022-03-10 14:19:48.911 [DEBUG] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending HEART_BEAT, payload {devId=ebb8edc2de0ce2e480xkxw, uid=ebb8edc2de0ce2e480xkxw, t=1646943588, dps=, gwId=ebb8edc2de0ce2e480xkxw} 2022-03-10 14:19:48.913 [TRACE] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending encoded '000055AA00001F460000000900000097332E33000000000000000000000000873FA29B2A253A5A3AF9FA0C70D911160607244977B364D490931F190ED020CCBBA7F797E81E0F89B1B4ED1F0C125013136BF054B6DAB88834B134789415B500CB6DE772A63AC38B2EC39F6A774EEDA725951B9AF38C68F68F9A9E3A88D26A17D0DC4063CF9C70A4B1D9B729FBDF17702B8708F07D4451CC7B900D9E0D92B4BB5C81A01B0000AA55' 2022-03-10 14:19:49.019 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received encoded '000055AA00000000000000090000000C00000000B051AB030000AA55' 2022-03-10 14:19:49.021 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Decoded raw payload: 2022-03-10 14:19:49.023 [DEBUG] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Received MessageWrapper{commandType=HEART_BEAT, content=''} 2022-03-10 14:19:49.024 [TRACE] [rnal.local.handlers.HeartbeatHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received pong 2022-03-10 14:19:56.577 [TRACE] [rnal.local.handlers.HeartbeatHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending ping 2022-03-10 14:19:56.580 [DEBUG] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending HEART_BEAT, payload {devId=ebb8edc2de0ce2e480xkxw, uid=ebb8edc2de0ce2e480xkxw, t=1646943596, dps=, gwId=ebb8edc2de0ce2e480xkxw} 2022-03-10 14:19:56.582 [TRACE] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending encoded '000055AA000000020000000900000097332E33000000000000000000000000873FA29B2A253A5A3AF9FA0C70D911160607244977B364D490931F190ED020CCBBA7F797E81E0F89B1B4ED1F0C125013136BF054B6DAB88834B134789415B500B42C9B80E8659BEDCB2AD6BA8A4C344D25951B9AF38C68F68F9A9E3A88D26A17D0DC4063CF9C70A4B1D9B729FBDF17702B8708F07D4451CC7B900D9E0D92B4BB2269FDFC0000AA55' 2022-03-10 14:19:56.694 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received encoded '000055AA00000000000000090000000C00000000B051AB030000AA55' 2022-03-10 14:19:56.696 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Decoded raw payload: 2022-03-10 14:19:56.699 [DEBUG] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Received MessageWrapper{commandType=HEART_BEAT, content=''} 2022-03-10 14:19:56.700 [TRACE] [rnal.local.handlers.HeartbeatHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received pong 2022-03-10 14:19:56.879 [TRACE] [rnal.local.handlers.HeartbeatHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending ping 2022-03-10 14:19:56.881 [DEBUG] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending HEART_BEAT, payload {devId=ebb8edc2de0ce2e480xkxw, uid=ebb8edc2de0ce2e480xkxw, t=1646943596, dps=, gwId=ebb8edc2de0ce2e480xkxw} 2022-03-10 14:19:56.883 [TRACE] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending encoded '000055AA000006010000000900000097332E33000000000000000000000000873FA29B2A253A5A3AF9FA0C70D911160607244977B364D490931F190ED020CCBBA7F797E81E0F89B1B4ED1F0C125013136BF054B6DAB88834B134789415B500B42C9B80E8659BEDCB2AD6BA8A4C344D25951B9AF38C68F68F9A9E3A88D26A17D0DC4063CF9C70A4B1D9B729FBDF17702B8708F07D4451CC7B900D9E0D92B4BB75A6554E0000AA55' 2022-03-10 14:19:56.993 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received encoded '000055AA00000000000000090000000C00000000B051AB030000AA55' 2022-03-10 14:19:56.995 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Decoded raw payload: 2022-03-10 14:19:56.996 [DEBUG] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Received MessageWrapper{commandType=HEART_BEAT, content=''} 2022-03-10 14:19:56.998 [TRACE] [rnal.local.handlers.HeartbeatHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received pong 2022-03-10 14:19:58.915 [TRACE] [rnal.local.handlers.HeartbeatHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending ping 2022-03-10 14:19:58.917 [DEBUG] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending HEART_BEAT, payload {devId=ebb8edc2de0ce2e480xkxw, uid=ebb8edc2de0ce2e480xkxw, t=1646943598, dps=, gwId=ebb8edc2de0ce2e480xkxw} 2022-03-10 14:19:58.918 [TRACE] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending encoded '000055AA00001F470000000900000097332E33000000000000000000000000873FA29B2A253A5A3AF9FA0C70D911160607244977B364D490931F190ED020CCBBA7F797E81E0F89B1B4ED1F0C125013136BF054B6DAB88834B134789415B500F28BBB4A8DCE2D4B5351098293BFA66A25951B9AF38C68F68F9A9E3A88D26A17D0DC4063CF9C70A4B1D9B729FBDF17702B8708F07D4451CC7B900D9E0D92B4BB792768470000AA55' 2022-03-10 14:19:58.940 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received encoded '000055AA00000000000000090000000C00000000B051AB030000AA55' 2022-03-10 14:19:58.942 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Decoded raw payload: 2022-03-10 14:19:58.943 [DEBUG] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Received MessageWrapper{commandType=HEART_BEAT, content=''} 2022-03-10 14:19:58.944 [TRACE] [rnal.local.handlers.HeartbeatHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received pong 2022-03-10 14:20:06.585 [TRACE] [rnal.local.handlers.HeartbeatHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending ping 2022-03-10 14:20:06.587 [DEBUG] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending HEART_BEAT, payload {devId=ebb8edc2de0ce2e480xkxw, uid=ebb8edc2de0ce2e480xkxw, t=1646943606, dps=, gwId=ebb8edc2de0ce2e480xkxw} 2022-03-10 14:20:06.589 [TRACE] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending encoded '000055AA000000030000000900000097332E33000000000000000000000000873FA29B2A253A5A3AF9FA0C70D911160607244977B364D490931F190ED020CCBBA7F797E81E0F89B1B4ED1F0C125013136BF054B6DAB88834B134789415B5000EDF51DC02CBAB6D6EF4DF9E91BB891F25951B9AF38C68F68F9A9E3A88D26A17D0DC4063CF9C70A4B1D9B729FBDF17702B8708F07D4451CC7B900D9E0D92B4BBBB92BB9F0000AA55' 2022-03-10 14:20:06.619 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received encoded '000055AA00000000000000090000000C00000000B051AB030000AA55' 2022-03-10 14:20:06.621 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Decoded raw payload: 2022-03-10 14:20:06.623 [DEBUG] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Received MessageWrapper{commandType=HEART_BEAT, content=''} 2022-03-10 14:20:06.624 [TRACE] [rnal.local.handlers.HeartbeatHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received pong 2022-03-10 14:20:06.886 [TRACE] [rnal.local.handlers.HeartbeatHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending ping 2022-03-10 14:20:06.887 [DEBUG] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending HEART_BEAT, payload {devId=ebb8edc2de0ce2e480xkxw, uid=ebb8edc2de0ce2e480xkxw, t=1646943606, dps=, gwId=ebb8edc2de0ce2e480xkxw} 2022-03-10 14:20:06.889 [TRACE] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending encoded '000055AA000006020000000900000097332E33000000000000000000000000873FA29B2A253A5A3AF9FA0C70D911160607244977B364D490931F190ED020CCBBA7F797E81E0F89B1B4ED1F0C125013136BF054B6DAB88834B134789415B5000EDF51DC02CBAB6D6EF4DF9E91BB891F25951B9AF38C68F68F9A9E3A88D26A17D0DC4063CF9C70A4B1D9B729FBDF17702B8708F07D4451CC7B900D9E0D92B4BB1761BE0E0000AA55' 2022-03-10 14:20:07.041 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received encoded '000055AA00000000000000090000000C00000000B051AB030000AA55' 2022-03-10 14:20:07.043 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Decoded raw payload: 2022-03-10 14:20:07.044 [DEBUG] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Received MessageWrapper{commandType=HEART_BEAT, content=''} 2022-03-10 14:20:07.046 [TRACE] [rnal.local.handlers.HeartbeatHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received pong 2022-03-10 14:20:08.920 [TRACE] [rnal.local.handlers.HeartbeatHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending ping 2022-03-10 14:20:08.922 [DEBUG] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending HEART_BEAT, payload {devId=ebb8edc2de0ce2e480xkxw, uid=ebb8edc2de0ce2e480xkxw, t=1646943608, dps=, gwId=ebb8edc2de0ce2e480xkxw} 2022-03-10 14:20:08.924 [TRACE] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending encoded '000055AA00001F480000000900000097332E33000000000000000000000000873FA29B2A253A5A3AF9FA0C70D911160607244977B364D490931F190ED020CCBBA7F797E81E0F89B1B4ED1F0C125013136BF054B6DAB88834B134789415B500F698E9A6E9C271E61F7AC31733F9403F25951B9AF38C68F68F9A9E3A88D26A17D0DC4063CF9C70A4B1D9B729FBDF17702B8708F07D4451CC7B900D9E0D92B4BB4FE929C20000AA55' 2022-03-10 14:20:08.998 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received encoded '000055AA00000000000000090000000C00000000B051AB030000AA55' 2022-03-10 14:20:09.000 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Decoded raw payload: 2022-03-10 14:20:09.002 [DEBUG] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Received MessageWrapper{commandType=HEART_BEAT, content=''} 2022-03-10 14:20:09.003 [TRACE] [rnal.local.handlers.HeartbeatHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received pong

J-N-K commented 2 years ago

I guess that 1 is a good guess for the on/off channel. The question is why that is not detected automatically.

Do you have a request to /v1.1/devices/ebb8edc2de0ce2e480xkxw/specifications in the log? It should show up when the device is discovered and the response contains what the API presents as available dp.

BigGeorgeTx commented 2 years ago

First, I created a switch channel, configured with DP one and it turns the device on and off. It also instantly track changes made in the Smartlife App or if the device power is toggled manually. So I have what I need at this point. If further pursuing this will help you make the binding better, I am very willing to help in any way I can. I really appreciate this binding. I like being able to control my smart home without having to rely on a 3rd party server over the Internet.

I couldn't find the request you mentioned, just these, which I think are included in the original logs. I do see that it is reporting the DPS states "Decoded raw payload: {"dps":{"1":true,"2":376,"3":100,"4":"LED","102":0,"104":1}}", and it looks like DP 1 has the Boolean for the power state. I can confirm that the DP 2 value of 376 matches the 38% on the dimmer, which is DP 2.

2022-03-10 14:19:46.495 [INFO ] [a.internal.handler.TuyaDeviceHandler] - Configuring IP address 'DeviceInfo{ip='192.168.1.206', version='3.3'}' for thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw'. 2022-03-10 14:19:46.508 [TRACE] [.internal.local.handlers.TuyaDecoder] - udpListener: Received encoded '000055AA00000000000000130000009C00000000D09766676F3369EB10B5E9F132FD802AD2E27C5F32F3E3F0AFC41C85D5F380E6FAAA67378A1AD8D82C8881CF61B1ED1C17CDF83527CCE8ED665CF186940C31867256F992EF0BB3C9946F6CA8E2E148532E0DBC9A92C3317286EBF238BE579786D6580B90DE59FFECA847456AFC569A70F961BDD6290849510943F0B3DEDC720E7A23E3B2249F5ADF48A714F851AAF43999DF41830000AA55' 2022-03-10 14:19:46.509 [TRACE] [.internal.local.handlers.TuyaDecoder] - udpListener/: Decoded raw payload: {"ip":"192.168.1.206","gwId":"ebb8edc2de0ce2e480xkxw","active":2,"ablilty":0,"encrypt":true,"productKey":"opqqmfjz7y2o6y6a","version":"3.3"} 2022-03-10 14:19:46.510 [DEBUG] [.internal.local.handlers.TuyaDecoder] - udpListener/: Received MessageWrapper{commandType=UDP_NEW, content='DiscoveryMessage{ip='192.168.1.206', deviceId='ebb8edc2de0ce2e480xkxw', active=2, ability=0, mode=0, encrypt=true, productKey='opqqmfjz7y2o6y6a', version='3.3'}'} 2022-03-10 14:19:46.572 [DEBUG] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending DP_QUERY, payload {devId=ebb8edc2de0ce2e480xkxw, uid=ebb8edc2de0ce2e480xkxw, t=1646943586, dps=null, gwId=ebb8edc2de0ce2e480xkxw} 2022-03-10 14:19:46.574 [TRACE] [.internal.local.handlers.TuyaEncoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Sending encoded '000055AA000000010000000A00000088873FA29B2A253A5A3AF9FA0C70D911160607244977B364D490931F190ED020CCBBA7F797E81E0F89B1B4ED1F0C125013136BF054B6DAB88834B134789415B50013B32F7C3D6E9DBFF813972E9ECFF9829437C98549D0AC4A5350012BD4556B5FD0DC4063CF9C70A4B1D9B729FBDF17702B8708F07D4451CC7B900D9E0D92B4BBDC94AA330000AA55' 2022-03-10 14:19:46.576 [DEBUG] [al.local.handlers.TuyaMessageHandler] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Connection established. 2022-03-10 14:19:46.655 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw/192.168.1.206:6668: Received encoded '000055AA000000010000000A0000004C00000000976D180DB878DC9C1C1091362B2F5046F01251D029057BDEDB42A8C0B1FB66EF33D7B417BA32B3C2441CFCE25C307487DB56F717BC0F2C42F271708BA17561F67F3749470000AA55' 2022-03-10 14:19:46.657 [TRACE] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Decoded raw payload: {"dps":{"1":true,"2":376,"3":100,"4":"LED","102":0,"104":1}} 2022-03-10 14:19:46.658 [DEBUG] [.internal.local.handlers.TuyaDecoder] - ebb8edc2de0ce2e480xkxw//192.168.1.206:6668: Received MessageWrapper{commandType=DP_QUERY, content='{1=true, 2=376.0, 3=100.0, 4=LED, 102=0.0, 104=1.0}'} 2022-03-10 14:19:46.660 [TRACE] [a.internal.handler.TuyaDeviceHandler] - 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' received status message '{1=true, 2=376.0, 3=100.0, 4=LED, 102=0.0, 104=1.0}' 2022-03-10 14:19:46.662 [DEBUG] [a.internal.handler.TuyaDeviceHandler] - Could not find channel for dp '102' in thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' 2022-03-10 14:19:46.663 [DEBUG] [a.internal.handler.TuyaDeviceHandler] - Could not find channel for dp '104' in thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw'

and

2022-03-10 14:14:27.194 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing 'tuya:tuyaDevice:ebb8edc2de0ce2e480xkxw' to inbox. 2022-03-10 14:15:41.251 [TRACE] [.internal.local.handlers.TuyaDecoder] - udpListener: Received encoded '000055AA00000000000000000000009F000000007B226970223A223139322E3136382E312E323437222C2267774964223A223336383032353538383430643865393566336334222C22616374697665223A322C226162696C697479223A302C226D6F6465223A302C22656E6372797074223A747275652C2270726F647563744B6579223A22704A6E70543058634D354654526A4F64222C2276657273696F6E223A22332E31227D157010A20000AA55' 2022-03-10 14:15:41.254 [DEBUG] [.internal.local.handlers.TuyaDecoder] - udpListener/: Received MessageWrapper{commandType=UDP, content='DiscoveryMessage{ip='192.168.1.247', deviceId='36802558840d8e95f3c4', active=2, ability=0, mode=0, encrypt=true, productKey='pJnpT0XcM5FTRjOd', version='3.1'}'} 2022-03-10 14:15:41.380 [TRACE] [.internal.local.handlers.TuyaDecoder] - udpListener: Received encoded '000055AA00000000000000130000009C00000000D09766676F3369EB10B5E9F132FD802AD2E27C5F32F3E3F0AFC41C85D5F380E6FAAA67378A1AD8D82C8881CF61B1ED1C17CDF83527CCE8ED665CF186940C31867256F992EF0BB3C9946F6CA8E2E148532E0DBC9A92C3317286EBF238BE579786D6580B90DE59FFECA847456AFC569A70F961BDD6290849510943F0B3DEDC720E7A23E3B2249F5ADF48A714F851AAF43999DF41830000AA55' 2022-03-10 14:15:41.385 [TRACE] [.internal.local.handlers.TuyaDecoder] - udpListener/: Decoded raw payload: {"ip":"192.168.1.206","gwId":"ebb8edc2de0ce2e480xkxw","active":2,"ablilty":0,"encrypt":true,"productKey":"opqqmfjz7y2o6y6a","version":"3.3"} 2022-03-10 14:15:41.387 [DEBUG] [.internal.local.handlers.TuyaDecoder] - udpListener/: Received MessageWrapper{commandType=UDP_NEW, content='DiscoveryMessage{ip='192.168.1.206', deviceId='ebb8edc2de0ce2e480xkxw', active=2, ability=0, mode=0, encrypt=true, productKey='opqqmfjz7y2o6y6a', version='3.3'}'} 2022-03-10 14:15:41.419 [TRACE] [.internal.local.handlers.TuyaDecoder] - udpListener: Received encoded '000055AA0000000000000013000000CC00000000D09766676F3369EB10B5E9F132FD802AE33F0A22D663644012FC8D872BCF03D07B64C8DD4401899000716D5170D1858B0B1B576FA1E157538A210ED25F4C31067256F992EF0BB3C9946F6CA8E2E148532E0DBC9A92C3317286EBF238BE57978641CBF9244804CF3DC911CADA0E75770803BF05AC9D8E6CCA4A3B9E5968A55B0DCC37291424EC2B5401F4F50D7EB6A63204AF131AE1CD3F0E4AB9A53DA72F98A8617CB007FF58786669D79C94FB8EA213D482232E3BD3BF5CF00BC08816559FD6A790AEB30000AA55' 2022-03-10 14:15:41.420 [TRACE] [.internal.local.handlers.TuyaDecoder] - udpListener/: Decoded raw payload: {"ip":"192.168.1.246","gwId":"eb755c84e755bbd761ymwj","active":2,"ablilty":0,"encrypt":true,"productKey":"keyyj3fy8x98arty","version":"3.3","lan_cap":5000,"lan_seq":25,"token":true} 2022-03-10 14:15:41.421 [DEBUG] [.internal.local.handlers.TuyaDecoder] - udpListener/: Received MessageWrapper{commandType=UDP_NEW, content='DiscoveryMessage{ip='192.168.1.246', deviceId='eb755c84e755bbd761ymwj', active=2, ability=0, mode=0, encrypt=true, productKey='keyyj3fy8x98arty', version='3.3'}'}

J-N-K commented 2 years ago

Weird. If you log in to your Tuya Could project, could you go to "API Explorer", "Smarthome Management System", "Device Control", "Get Device Specification Attribute" and enter the device id? On the right sight, under "Debugging Result" you should find a JSON with all supported DPs. Is 1 listed there? And what is the associated name?

BigGeorgeTx commented 2 years ago

Yes it is. "switch_led_1"

{ "result": { "category": "tgq", "functions": [ { "code": "**switch_led_1**", "type": "Boolean", "values": "{}" }, { "code": "bright_value_1", "type": "Integer", "values": "{\"min\":10,\"max\":1000,\"scale\":0,\"step\":1}" }, { "code": "brightness_min_1", "type": "Integer", "values": "{\"min\":10,\"max\":1000,\"scale\":0,\"step\":1}" }, { "code": "led_type_1", "type": "Enum", "values": "{\"range\":[\"incandescent\",\"halogen\"]}" } ], "status": [ { "code": "switch_led_1", "type": "Boolean", "values": "{}" }, { "code": "bright_value_1", "type": "Integer", "values": "{\"min\":10,\"max\":1000,\"scale\":0,\"step\":1}" }, { "code": "brightness_min_1", "type": "Integer", "values": "{\"min\":10,\"max\":1000,\"scale\":0,\"step\":1}" }, { "code": "led_type_1", "type": "Enum", "values": "{\"range\":[\"incandescent\",\"halogen\"]}" } ] }, "success": true, "t": 1647013932951, "tid": "379b9440a15311ec97432e609e0e211c" }

BigGeorgeTx commented 2 years ago

I found this about the API Discovery Service in the log:

2022-03-11 10:09:26.738 [WARN ] [g.tuya.internal.TuyaDiscoveryService] - Tried to start scan but API for bridge 'tuya:project:dc58ac9d8e' is not connected. 2022-03-11 10:14:26.741 [WARN ] [g.tuya.internal.TuyaDiscoveryService] - Tried to start scan but API for bridge 'tuya:project:dc58ac9d8e' is not connected. 2022-03-11 10:19:26.743 [WARN ] [g.tuya.internal.TuyaDiscoveryService] - Tried to start scan but API for bridge 'tuya:project:dc58ac9d8e' is not connected. The Tuya Account Thing shows a Online in the UI.

J-N-K commented 2 years ago

Can you check if you did the correct request for "Get Device Specification Attribute" under the location I posted above? The output should look like this (including the DPs):

{
  "result": {
    "category": "dd",
    "functions": [
      {
        "code": "switch_led",
        "dp_id": 20,
        "type": "Boolean",
        "values": "{}"
      },
      {
        "code": "work_mode",
        "dp_id": 21,
        "type": "Enum",
        "values": "{\"range\":[\"white\",\"colour\",\"scene\",\"music\"]}"
      },
      {
        "code": "bright_value",
        "dp_id": 22,
        "type": "Integer",
        "values": "{\"min\":10,\"max\":1000,\"scale\":0,\"step\":1}"
      },
      {
        "code": "temp_value",
        "dp_id": 23,
        "type": "Integer",
        "values": "{\"min\":0,\"max\":1000,\"scale\":0,\"step\":1}"
      },
      {
        "code": "colour_data",
        "dp_id": 24,
        "type": "Json",
        "values": "{\"h\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":360,\"step\":1},\"s\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":1000,\"step\":1},\"v\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":1000,\"step\":1}}"
      },
      {
        "code": "scene_data",
        "dp_id": 25,
        "type": "Json",
        "values": "{\"scene_num\":{\"min\":1,\"scale\":0,\"max\":8,\"step\":1},\"scene_units\": {\"unit_change_mode\":{\"range\":[\"static\",\"jump\",\"gradient\"]},\"unit_switch_duration\":{\"min\":0,\"scale\":0,\"max\":100,\"step\":1},\"unit_gradient_duration\":{\"min\":0,\"scale\":0,\"max\":100,\"step\":1},\"bright\":{\"min\":0,\"scale\":0,\"max\":1000,\"step\":1},\"temperature\":{\"min\":0,\"scale\":0,\"max\":1000,\"step\":1},\"h\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":360,\"step\":1},\"s\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":1000,\"step\":1},\"v\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":1000,\"step\":1}}}"
      },
      {
        "code": "countdown",
        "dp_id": 26,
        "type": "Integer",
        "values": "{\"unit\":\"s\",\"min\":0,\"max\":86400,\"scale\":0,\"step\":1}"
      },
      {
        "code": "music_data",
        "dp_id": 27,
        "type": "Json",
        "values": "{\"change_mode\":{\"range\":[\"direct\",\"gradient\"]}, \"bright\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":1000,\"step\":1}, \"temperature\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":1000,\"step\":1}, \"h\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":360,\"step\":1},\"s\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":255,\"step\":1},\"v\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":255,\"step\":1}}"
      },
      {
        "code": "control_data",
        "dp_id": 28,
        "type": "Json",
        "values": "{\"change_mode\":{\"range\":[\"direct\",\"gradient\"]}, \"bright\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":1000,\"step\":1}, \"temperature\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":1000,\"step\":1}, \"h\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":360,\"step\":1},\"s\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":255,\"step\":1},\"v\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":255,\"step\":1}}"
      }
    ],
    "status": [
      {
        "code": "switch_led",
        "dp_id": 20,
        "type": "Boolean",
        "values": "{}"
      },
      {
        "code": "work_mode",
        "dp_id": 21,
        "type": "Enum",
        "values": "{\"range\":[\"white\",\"colour\",\"scene\",\"music\"]}"
      },
      {
        "code": "bright_value",
        "dp_id": 22,
        "type": "Integer",
        "values": "{\"min\":10,\"max\":1000,\"scale\":0,\"step\":1}"
      },
      {
        "code": "temp_value",
        "dp_id": 23,
        "type": "Integer",
        "values": "{\"min\":0,\"max\":1000,\"scale\":0,\"step\":1}"
      },
      {
        "code": "colour_data",
        "dp_id": 24,
        "type": "Json",
        "values": "{\"h\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":360,\"step\":1},\"s\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":1000,\"step\":1},\"v\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":1000,\"step\":1}}"
      },
      {
        "code": "scene_data",
        "dp_id": 25,
        "type": "Json",
        "values": "{\"scene_num\":{\"min\":1,\"scale\":0,\"max\":8,\"step\":1},\"scene_units\": {\"unit_change_mode\":{\"range\":[\"static\",\"jump\",\"gradient\"]},\"unit_switch_duration\":{\"min\":0,\"scale\":0,\"max\":100,\"step\":1},\"unit_gradient_duration\":{\"min\":0,\"scale\":0,\"max\":100,\"step\":1},\"bright\":{\"min\":0,\"scale\":0,\"max\":1000,\"step\":1},\"temperature\":{\"min\":0,\"scale\":0,\"max\":1000,\"step\":1},\"h\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":360,\"step\":1},\"s\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":1000,\"step\":1},\"v\":{\"min\":0,\"scale\":0,\"unit\":\"\",\"max\":1000,\"step\":1}}}"
      },
      {
        "code": "countdown",
        "dp_id": 26,
        "type": "Integer",
        "values": "{\"unit\":\"s\",\"min\":0,\"max\":86400,\"scale\":0,\"step\":1}"
      }
    ]
  },
  "success": true,
  "t": 1647026863632,
  "tid": "52e4b7bfa17111ecbb5ea27854ae7791"
}
BigGeorgeTx commented 2 years ago

Ahh. I did "Get device specification attributes", not "Get Devices Specification Attributes." I guess in this case the case really matters. Here is what you wanted:

{ "result": { "category": "tgq", "functions": [ { "code": "switch_led_1", "dp_id": 1, "type": "Boolean", "values": "{}" }, { "code": "bright_value_1", "dp_id": 2, "type": "Integer", "values": "{\"min\":10,\"max\":1000,\"scale\":0,\"step\":1}" }, { "code": "brightness_min_1", "dp_id": 3, "type": "Integer", "values": "{\"min\":10,\"max\":1000,\"scale\":0,\"step\":1}" }, { "code": "led_type_1", "dp_id": 4, "type": "Enum", "values": "{\"range\":[\"incandescent\",\"halogen\"]}" } ], "status": [ { "code": "switch_led_1", "dp_id": 1, "type": "Boolean", "values": "{}" }, { "code": "bright_value_1", "dp_id": 2, "type": "Integer", "values": "{\"min\":10,\"max\":1000,\"scale\":0,\"step\":1}" }, { "code": "brightness_min_1", "dp_id": 3, "type": "Integer", "values": "{\"min\":10,\"max\":1000,\"scale\":0,\"step\":1}" }, { "code": "led_type_1", "dp_id": 4, "type": "Enum", "values": "{\"range\":[\"incandescent\",\"halogen\"]}" } ] }, "success": true, "t": 1647028816896, "tid": "df2693b7a17511eca6146e0e3d4c7b49" }

BigGeorgeTx commented 2 years ago

Probably easier to read w/o code brackets { "result": { "category": "tgq", "functions": [ { "code": "switch_led_1", "dp_id": 1, "type": "Boolean", "values": "{}" }, { "code": "bright_value_1", "dp_id": 2, "type": "Integer", "values": "{\"min\":10,\"max\":1000,\"scale\":0,\"step\":1}" }, { "code": "brightness_min_1", "dp_id": 3, "type": "Integer", "values": "{\"min\":10,\"max\":1000,\"scale\":0,\"step\":1}" }, { "code": "led_type_1", "dp_id": 4, "type": "Enum", "values": "{\"range\":[\"incandescent\",\"halogen\"]}" } ], "status": [ { "code": "switch_led_1", "dp_id": 1, "type": "Boolean", "values": "{}" }, { "code": "bright_value_1", "dp_id": 2, "type": "Integer", "values": "{\"min\":10,\"max\":1000,\"scale\":0,\"step\":1}" }, { "code": "brightness_min_1", "dp_id": 3, "type": "Integer", "values": "{\"min\":10,\"max\":1000,\"scale\":0,\"step\":1}" }, { "code": "led_type_1", "dp_id": 4, "type": "Enum", "values": "{\"range\":[\"incandescent\",\"halogen\"]}" } ] }, "success": true, "t": 1647028816896, "tid": "df2693b7a17511eca6146e0e3d4c7b49" }

J-N-K commented 2 years ago

Found it. The reason is that bright_value_1 was not set as Dimmer but as Number channel. Can you try the develop version? You need to delete and re-add the thing. Thanks.

BigGeorgeTx commented 2 years ago

As requested, I deleted the Thing, removed the Tuya binding and then added the develop version. As expected, when I added the dimmer thing from the Inbox, it created a Dimmer channel. I linked the items I have previous created (or the UI had created for all but the on/off switch). I changed the brightness item from number to dimmer, and linked both it and the on/off switch item to the brightness dimmer channel, and everything works as it should.

It would be more user friendly if when the user uses "Add Equipment to Model" to create the channels and linked items in the UI, it created the on/off switch. Right now, it only creates the dimmer channel and linked item, and the user has to know enough to look at the channel to find out what the switch dp is and then link an item to it. I don't know if that is on the UI side or the binding. It isn't a problem for me, as I now know what to do. But for new users, it could be confusing.