Skip to content
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

robot vacuums entities not correctly identified. #158

Closed
chris4824 opened this issue Mar 1, 2024 · 39 comments
Closed

robot vacuums entities not correctly identified. #158

chris4824 opened this issue Mar 1, 2024 · 39 comments
Labels
auto configure Related to auto configure entities feature.

Comments

@chris4824
Copy link

Adding the 2 robots with auto configure works with no errors but doesn't show all entities and one robot shows as unavailable.

1st robot
robot

{
"home_assistant": {
"installation_type": "Home Assistant OS",
"version": "2024.3.0b3",
"dev": false,
"hassio": true,
"virtualenv": false,
"python_version": "3.12.2",
"docker": true,
"arch": "x86_64",
"timezone": "America/New_York",
"os_name": "Linux",
"os_version": "6.6.16-haos",
"supervisor": "2024.02.1",
"host_os": "Home Assistant OS 12.0",
"docker_version": "24.0.7",
"chassis": "vm",
"run_as_root": true
},
"custom_components": {
"cielo_home": {
"version": "1.6.8",
"requirements": []
},
"weatherdotcom": {
"version": "1.1.6",
"requirements": []
},
"smartlife": {
"version": "0.1.0",
"requirements": [
"tuya-device-sharing-sdk==0.1.9"
]
},
"ttlock": {
"version": "v0.6.1",
"requirements": [
"pydantic"
]
},
"alarmo": {
"version": "v1.9.14",
"requirements": []
},
"blueiris": {
"version": "1.0.16",
"requirements": []
},
"localtuya": {
"version": "3.2.4.3",
"requirements": []
},
"alexa_media": {
"version": "4.9.2",
"requirements": [
"alexapy==1.27.10",
"packaging>=20.3",
"wrapt>=1.14.0"
]
},
"dreo": {
"version": "0.1.3",
"requirements": [
"websockets"
]
},
"meross_cloud": {
"version": "1.2.13",
"requirements": [
"meross_iot==0.4.6.1"
]
},
"hacs": {
"version": "1.34.0",
"requirements": [
"aiogithubapi>=22.10.1"
]
}
},
"integration_manifest": {
"domain": "localtuya",
"name": "Local Tuya",
"codeowners": [],
"config_flow": true,
"dependencies": [],
"documentation": "https://github.com/xZetsubou/hass-localtuya/",
"integration_type": "hub",
"iot_class": "local_push",
"issue_tracker": "https://github.com/xZetsubou/hass-localtuya/issues",
"requirements": [],
"version": "3.2.4.3",
"is_built_in": false
},
"data": {
"device_config": {
"friendly_name": "Wall-E",
"device_id": "...",
"host": "192.168.1.16",
"local_key": "...",
"protocol_version": "3.3",
"enable_debug": false,
"node_id": null,
"model": "R3",
"product_key": "...",
"dps_strings": [
"2 ( code: power_go , value: False )",
"3 ( code: mode , value: chargego )",
"4 ( code: direction_control , value: foward, cloud pull )",
"5 ( code: status , value: charge_done )",
"6 ( code: electricity_left , value: 100 )",
"13 ( code: seek , value: True, cloud pull )",
"14 ( code: suction , value: normal )",
"16 ( code: clean_area , value: 46 )",
"17 ( code: clean_time , value: 51 )",
"18 ( code: fault , value: 0 )",
"101 ( code: pause , value: False )",
"102 ( code: water_mode , value: 3 )",
"103 ( code: reset_map , value: True, cloud pull )",
"104 ( code: request , value: get_map, cloud pull )",
"105 ( code: command , value: q3AAAAAM, cloud pull )",
"107 ( code: switch_disturb , value: False )",
"108 ( code: smart_rooms , value: cur_rooms, cloud pull )",
"109 ( code: rooms_msg , value: 0, cloud pull )",
"110 ( code: break_clean , value: False )",
"111 ( code: voice_language , value: en )",
"112 ( code: volume_set , value: 100 )",
"113 ( code: y_mop , value: False )"
],
"entities": [
{
"id": "3",
"select_options": "standby,random,smart,wall_follow,mop,spiral,left_spiral,right_spiral,right_bow,left_bow,partial_bow,chargego",
"friendly_name": "Mode",
"icon": "mdi:layers-outline",
"entity_category": "config",
"platform": "select"
},
{
"id": "16",
"friendly_name": "",
"icon": "mdi:texture-box",
"entity_category": "None",
"state_class": "measurement",
"platform": "sensor"
},
{
"id": "17",
"friendly_name": "",
"icon": "mdi:progress-clock",
"entity_category": "None",
"state_class": "measurement",
"platform": "sensor"
},
{
"id": "103",
"friendly_name": "Reset Map",
"icon": "mdi:map-marker-remove",
"entity_category": "config",
"platform": "button"
},
{
"id": "107",
"friendly_name": "Do Not Disturb",
"icon": "mdi:minus-circle",
"entity_category": "config",
"platform": "switch"
},
{
"id": "112",
"min_value": 0,
"max_value": 100,
"step_size": 1,
"scaling": 1,
"friendly_name": "volume",
"icon": "mdi:volume-high",
"entity_category": "config",
"platform": "number"
}
]
},
"device_cloud_info": {
"active_time": 1692144776,
"biz_type": 18,
"category": "sd",
"create_time": 1612367330,
"icon": "smart/icon/bay15948075783455pQT/425d742c39bb7ddaf06b217cf7cc60dc.jpg",
"id": "...",
"ip": "6...8",
"lat": "33.7600",
"local_key": "...",
"lon": "-79.1900",
"model": "R3",
"name": "Wall-E",
"online": true,
"owner_id": "38040947",
"product_id": "...",
"product_name": "Lds Robot",
"status": [
{
"code": "power_go",
"value": false
},
{
"code": "mode",
"value": "chargego"
},
{
"code": "direction_control",
"value": "foward"
},
{
"code": "status",
"value": "charge_done"
},
{
"code": "electricity_left",
"value": 100
},
{
"code": "seek",
"value": true
},
{
"code": "suction",
"value": "normal"
},
{
"code": "clean_area",
"value": 46
},
{
"code": "clean_time",
"value": 51
},
{
"code": "fault",
"value": 0
},
{
"code": "pause",
"value": false
},
{
"code": "water_mode",
"value": "3"
},
{
"code": "reset_map",
"value": true
},
{
"code": "request",
"value": "get_map"
},
{
"code": "command",
"value": "q3AAAAAM"
},
{
"code": "path_data",
"value": ""
},
{
"code": "switch_disturb",
"value": false
},
{
"code": "smart_rooms",
"value": "cur_rooms"
},
{
"code": "rooms_msg",
"value": 0
},
{
"code": "break_clean",
"value": false
},
{
"code": "voice_language",
"value": "en"
},
{
"code": "volume_set",
"value": 100
},
{
"code": "y_mop",
"value": false
}
],
"sub": false,
"time_zone": "-04:00",
"uid": "az1616955819532Lesth",
"update_time": 1709252277,
"uuid": "a66ada4974b2c9c0",
"dps_data": {
"2": {
"code": "power_go",
"custom_name": "",
"dp_id": 2,
"time": 1708814549048,
"value": false,
"type": "Boolean",
"values": "{"type": "bool", "typeDefaultValue": False}",
"id": 2,
"accessMode": "rw"
},
"3": {
"code": "mode",
"custom_name": "",
"dp_id": 3,
"time": 1708814493031,
"value": "chargego",
"type": "Enum",
"values": "{"range": ["smart", "zone", "pose", "part", "chargego", "wallfollow", "selectroom"], "type": "enum", "typeDefaultValue": "smart"}",
"id": 3,
"accessMode": "rw"
},
"4": {
"code": "direction_control",
"custom_name": "",
"dp_id": 4,
"time": 1674962403451,
"value": "foward",
"type": "Enum",
"values": "{"range": ["foward", "backward", "turn_left", "turn_right", "stop"], "type": "enum", "typeDefaultValue": "foward"}",
"id": 4,
"accessMode": "rw"
},
"5": {
"code": "status",
"custom_name": "",
"dp_id": 5,
"time": 1709290678901,
"value": "charge_done",
"id": 5,
"accessMode": "ro",
"values": "{"range": ["standby", "smart_clean", "zone_clean", "part_clean", "paused", "goto_pos", "pos_arrived", "pos_unarrive", "to_charge", "charging", "charge_done", "sleep", "fault", "wall_follow", "direction_control", "selectroom"], "type": "enum", "typeDefaultValue": "standby"}"
},
"6": {
"code": "electricity_left",
"custom_name": "",
"dp_id": 6,
"time": 1708823979301,
"value": 100,
"id": 6,
"accessMode": "ro",
"values": "{"max": 100, "min": 0, "scale": 0, "step": 1, "type": "value", "typeDefaultValue": 0, "unit": "%"}"
},
"13": {
"code": "seek",
"custom_name": "",
"dp_id": 13,
"time": 1674962403451,
"value": true,
"type": "Boolean",
"values": "{"type": "bool", "typeDefaultValue": False}",
"id": 13,
"accessMode": "rw"
},
"14": {
"code": "suction",
"custom_name": "",
"dp_id": 14,
"time": 1707532756597,
"value": "normal",
"type": "Enum",
"values": "{"range": ["strong", "normal", "quiet"], "type": "enum", "typeDefaultValue": "strong"}",
"id": 14,
"accessMode": "rw"
},
"16": {
"code": "clean_area",
"custom_name": "",
"dp_id": 16,
"time": 1708814269745,
"value": 46,
"id": 16,
"accessMode": "ro",
"values": "{"max": 9999, "min": 0, "scale": 0, "step": 1, "type": "value", "typeDefaultValue": 0, "unit": "\u33a1"}"
},
"17": {
"code": "clean_time",
"custom_name": "",
"dp_id": 17,
"time": 1708814462071,
"value": 51,
"id": 17,
"accessMode": "ro",
"values": "{"max": 9999, "min": 0, "scale": 0, "step": 1, "type": "value", "typeDefaultValue": 0, "unit": "\u5206"}"
},
"18": {
"code": "fault",
"custom_name": "",
"dp_id": 18,
"time": 1707532756881,
"value": 0,
"id": 18,
"accessMode": "ro",
"values": "{"label": ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24"], "maxlen": 25, "type": "bitmap", "typeDefaultValue": 0}"
},
"101": {
"code": "pause",
"custom_name": "",
"dp_id": 101,
"time": 1708814549048,
"value": false,
"type": "Boolean",
"values": "{"type": "bool", "typeDefaultValue": False}",
"id": 101,
"accessMode": "rw"
},
"102": {
"code": "water_mode",
"custom_name": "",
"dp_id": 102,
"time": 1707532756597,
"value": "3",
"type": "Enum",
"values": "{"range": ["0", "1", "2", "3"], "type": "enum", "typeDefaultValue": "0"}",
"id": 102,
"accessMode": "rw"
},
"103": {
"code": "reset_map",
"custom_name": "",
"dp_id": 103,
"time": 1698702580763,
"value": true,
"type": "Boolean",
"values": "{"type": "bool", "typeDefaultValue": False}",
"id": 103,
"accessMode": "rw"
},
"104": {
"code": "request",
"custom_name": "",
"dp_id": 104,
"time": 1674962403451,
"value": "get_map",
"type": "Enum",
"values": "{"range": ["get_map", "get_path", "in_map"], "type": "enum", "typeDefaultValue": "get_map"}",
"id": 104,
"accessMode": "rw"
},
"105": {
"code": "command",
"custom_name": "",
"dp_id": 105,
"time": 1708814494065,
"value": "q3AAAAAM",
"type": "Raw",
"values": "{"maxlen": 128, "type": "raw"}",
"id": 105,
"accessMode": "rw"
},
"106": {
"code": "path_data",
"custom_name": "",
"dp_id": 106,
"time": 1674962403451,
"value": "",
"type": "Raw",
"values": "{"maxlen": 128, "type": "raw"}",
"id": 106,
"accessMode": "rw"
},
"107": {
"code": "switch_disturb",
"custom_name": "",
"dp_id": 107,
"time": 1707532894523,
"value": false,
"type": "Boolean",
"values": "{"type": "bool", "typeDefaultValue": False}",
"id": 107,
"accessMode": "rw"
},
"108": {
"code": "smart_rooms",
"custom_name": "",
"dp_id": 108,
"time": 1674962403451,
"value": "cur_rooms",
"type": "Enum",
"values": "{"range": ["cur_rooms", "edit_rooms", "segment", "clear_rooms", "save_rooms"], "type": "enum", "typeDefaultValue": "cur_rooms"}",
"id": 108,
"accessMode": "rw"
},
"109": {
"code": "rooms_msg",
"custom_name": "",
"dp_id": 109,
"time": 1699576140896,
"value": 0,
"id": 109,
"accessMode": "ro",
"values": "{"label": ["split", "merger", "map", "robot_cleaning", "active_split", "not_by_human", "save_fail", "split_success", "merger_success", "choice_no_found", "count_error", "choice_set_ok"], "maxlen": 12, "type": "bitmap", "typeDefaultValue": 0}"
},
"110": {
"code": "break_clean",
"custom_name": "",
"dp_id": 110,
"time": 1707532894523,
"value": false,
"type": "Boolean",
"values": "{"type": "bool", "typeDefaultValue": False}",
"id": 110,
"accessMode": "rw"
},
"111": {
"code": "voice_language",
"custom_name": "",
"dp_id": 111,
"time": 1707586435059,
"value": "en",
"type": "Enum",
"values": "{"range": ["cn", "en"], "type": "enum", "typeDefaultValue": "cn"}",
"id": 111,
"accessMode": "rw"
},
"112": {
"code": "volume_set",
"custom_name": "",
"dp_id": 112,
"time": 1707532757253,
"value": 100,
"type": "Integer",
"values": "{"max": 100, "min": 0, "scale": 0, "step": 1, "type": "value", "typeDefaultValue": 0, "unit": "%1"}",
"id": 112,
"accessMode": "rw"
},
"113": {
"code": "y_mop",
"custom_name": "",
"dp_id": 113,
"time": 1707532894523,
"value": false,
"type": "Boolean",
"values": "{"type": "bool", "typeDefaultValue": False}",
"id": 113,
"accessMode": "rw"
}
}
}
}
}

2nd robot
robot2

{
"home_assistant": {
"installation_type": "Home Assistant OS",
"version": "2024.3.0b3",
"dev": false,
"hassio": true,
"virtualenv": false,
"python_version": "3.12.2",
"docker": true,
"arch": "x86_64",
"timezone": "America/New_York",
"os_name": "Linux",
"os_version": "6.6.16-haos",
"supervisor": "2024.02.1",
"host_os": "Home Assistant OS 12.0",
"docker_version": "24.0.7",
"chassis": "vm",
"run_as_root": true
},
"custom_components": {
"cielo_home": {
"version": "1.6.8",
"requirements": []
},
"weatherdotcom": {
"version": "1.1.6",
"requirements": []
},
"smartlife": {
"version": "0.1.0",
"requirements": [
"tuya-device-sharing-sdk==0.1.9"
]
},
"ttlock": {
"version": "v0.6.1",
"requirements": [
"pydantic"
]
},
"alarmo": {
"version": "v1.9.14",
"requirements": []
},
"blueiris": {
"version": "1.0.16",
"requirements": []
},
"localtuya": {
"version": "3.2.4.3",
"requirements": []
},
"alexa_media": {
"version": "4.9.2",
"requirements": [
"alexapy==1.27.10",
"packaging>=20.3",
"wrapt>=1.14.0"
]
},
"dreo": {
"version": "0.1.3",
"requirements": [
"websockets"
]
},
"meross_cloud": {
"version": "1.2.13",
"requirements": [
"meross_iot==0.4.6.1"
]
},
"hacs": {
"version": "1.34.0",
"requirements": [
"aiogithubapi>=22.10.1"
]
}
},
"integration_manifest": {
"domain": "localtuya",
"name": "Local Tuya",
"codeowners": [],
"config_flow": true,
"dependencies": [],
"documentation": "https://github.com/xZetsubou/hass-localtuya/",
"integration_type": "hub",
"iot_class": "local_push",
"issue_tracker": "https://github.com/xZetsubou/hass-localtuya/issues",
"requirements": [],
"version": "3.2.4.3",
"is_built_in": false
},
"data": {
"device_config": {
"friendly_name": "redneb",
"device_id": "...",
"host": "192.168.1.37",
"local_key": "...",
"protocol_version": "3.3",
"enable_debug": false,
"node_id": null,
"model": "02.1.0003",
"product_key": "...",
"dps_strings": [
"1 ( code: power , value: True )",
"11 ( code: fault , value: 0 )",
"14 ( code: electricity_left , value: 100 )",
"25 ( code: power_go , value: False )",
"26 ( code: direction_control , value: foward )",
"27 ( code: mode , value: standby )",
"28 ( code: status , value: chargecompleted )",
"29 ( code: seek , value: False, cloud pull )",
"30 ( code: suction , value: normal )",
"31 ( code: voice_switch , value: False )",
"32 ( code: clean_area , value: 46 )",
"33 ( code: clean_time , value: 53 )",
"34 ( code: clean_record , value: 05304600700 )"
],
"entities": [
{
"id": "1",
"powergo_dp": "25",
"battery_dp": "14",
"mode_dp": "27",
"clean_area_dp": "32",
"clean_record_dp": "34",
"friendly_name": "",
"icon": "mdi:robot-vacuum",
"entity_category": "None",
"platform": "vacuum"
},
{
"id": "27",
"select_options": "standby,random,smart,wall_follow,mop,spiral,left_spiral,right_spiral,right_bow,left_bow,partial_bow,chargego",
"friendly_name": "Mode",
"icon": "mdi:layers-outline",
"entity_category": "config",
"platform": "select"
},
{
"id": "31",
"friendly_name": "Mute Voice",
"icon": "mdi:account-voice",
"entity_category": "config",
"platform": "switch"
},
{
"id": "32",
"friendly_name": "",
"icon": "mdi:texture-box",
"entity_category": "None",
"state_class": "measurement",
"platform": "sensor"
},
{
"id": "33",
"friendly_name": "",
"icon": "mdi:progress-clock",
"entity_category": "None",
"state_class": "measurement",
"platform": "sensor"
}
]
},
"device_cloud_info": {
"active_time": 1646798272,
"biz_type": 18,
"category": "sd",
"create_time": 1616956472,
"icon": "smart/icon/ay1534681176370JSCKe/9fbbc3792b66956f8cf50df4444f3427.png",
"id": "...",
"ip": "2...7",
"lat": "33.7600",
"local_key": "...",
"lon": "-79.1900",
"model": "02.1.0003",
"name": "redneb",
"online": true,
"owner_id": "38040947",
"product_id": "...",
"product_name": "Robotic Vacuum Cleaner",
"status": [
{
"code": "power",
"value": true
},
{
"code": "power_go",
"value": false
},
{
"code": "direction_control",
"value": "foward"
},
{
"code": "mode",
"value": "chargego"
},
{
"code": "status",
"value": "chargecompleted"
}
],
"sub": false,
"time_zone": "-05:00",
"uid": "az1616955819532Lesth",
"update_time": 1709252280,
"uuid": "36f5c0ca605c5ce2",
"dps_data": {
"1": {
"code": "power",
"custom_name": "",
"dp_id": 1,
"time": 1708901339428,
"value": true,
"type": "Boolean",
"values": "{"type": "bool", "typeDefaultValue": False}",
"id": 1,
"accessMode": "rw"
},
"11": {
"code": "fault",
"custom_name": "",
"dp_id": 11,
"time": 1708901337622,
"value": 0,
"id": 11,
"accessMode": "ro",
"values": "{"label": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16"], "maxlen": 16, "type": "bitmap", "typeDefaultValue": 0}"
},
"14": {
"code": "electricity_left",
"custom_name": "",
"dp_id": 14,
"time": 1708909906444,
"value": 100,
"id": 14,
"accessMode": "ro",
"values": "{"max": 100, "min": 0, "scale": 0, "step": 1, "type": "value", "typeDefaultValue": 0, "unit": "\uff05"}"
},
"25": {
"code": "power_go",
"custom_name": "",
"dp_id": 25,
"time": 1708901388585,
"value": false,
"type": "Boolean",
"values": "{"type": "bool", "typeDefaultValue": False}",
"id": 25,
"accessMode": "rw"
},
"26": {
"code": "direction_control",
"custom_name": "",
"dp_id": 26,
"time": 1708885434644,
"value": "foward",
"type": "Enum",
"values": "{"range": ["foward", "backward", "turn_left", "turn_right", "stop"], "type": "enum", "typeDefaultValue": "foward"}",
"id": 26,
"accessMode": "rw"
},
"27": {
"code": "mode",
"custom_name": "",
"dp_id": 27,
"time": 1708901388579,
"value": "standby",
"type": "Enum",
"values": "{"range": ["standby", "smart", "spiral", "single", "wall_follow", "chargego"], "type": "enum", "typeDefaultValue": "standby"}",
"id": 27,
"accessMode": "rw"
},
"28": {
"code": "status",
"custom_name": "",
"dp_id": 28,
"time": 1708910564853,
"value": "chargecompleted",
"id": 28,
"accessMode": "ro",
"values": "{"range": ["standby", "working", "fault", "sleep", "workcompleted", "charging", "chargecompleted", "pause", "cleanning", "mopping", "docking"], "type": "enum", "typeDefaultValue": "standby"}"
},
"29": {
"code": "seek",
"custom_name": "",
"dp_id": 29,
"time": 1646798272877,
"value": false,
"id": 29,
"accessMode": "wr",
"values": "{"type": "bool", "typeDefaultValue": False}"
},
"30": {
"code": "suction",
"custom_name": "",
"dp_id": 30,
"time": 1708885434650,
"value": "normal",
"id": 30,
"accessMode": "rw",
"values": "{"range": ["low", "normal", "high"], "type": "enum", "typeDefaultValue": "low"}"
},
"31": {
"code": "voice_switch",
"custom_name": "",
"dp_id": 31,
"time": 1708885434783,
"value": false,
"id": 31,
"accessMode": "rw",
"values": "{"type": "bool", "typeDefaultValue": False}"
},
"32": {
"code": "clean_area",
"custom_name": "",
"dp_id": 32,
"time": 1708888635365,
"value": 46,
"id": 32,
"accessMode": "ro",
"values": "{"max": 1000, "min": 0, "scale": 0, "step": 1, "type": "value", "typeDefaultValue": 0, "unit": ""}"
},
"33": {
"code": "clean_time",
"custom_name": "",
"dp_id": 33,
"time": 1708888630983,
"value": 53,
"id": 33,
"accessMode": "ro",
"values": "{"max": 300, "min": 0, "scale": 0, "step": 1, "type": "value", "typeDefaultValue": 0, "unit": ""}"
},
"34": {
"code": "clean_record",
"custom_name": "",
"dp_id": 34,
"time": 1708888657027,
"value": "05304600700",
"id": 34,
"accessMode": "ro",
"values": "{"maxlen": 255, "type": "string", "typeDefaultValue": ""}"
},
"102": {
"code": "log_unseen",
"custom_name": "",
"dp_id": 102,
"time": 1646798272877,
"value": "",
"id": 102,
"accessMode": "ro",
"values": "{"maxlen": 255, "type": "string", "typeDefaultValue": ""}"
}
}
}
}
}

Thanks for this integration and all your help.

@chris4824 chris4824 added the bug Something isn't working label Mar 1, 2024
@xZetsubou xZetsubou added auto configure Related to auto configure entities feature. and removed bug Something isn't working labels Mar 2, 2024
@xZetsubou
Copy link
Owner

Hello, I made changes for this, you will have to re-download the master and try to auto configure it again.

@xZetsubou xZetsubou added the master/next-release Fixed in master branch, Will be ready in the next release label Mar 2, 2024
xZetsubou added a commit that referenced this issue Mar 2, 2024
@chris4824

This comment was marked as off-topic.

@chris4824

This comment was marked as outdated.

@chris4824
Copy link
Author

chris4824 commented Mar 2, 2024

also tried to just start the vacuums with HA and none of the controls seem to work. Not sure if its cause its stuck on cleaning or something else. Also I'm not able to choose a cleaning mode. Thanks

@chris4824
Copy link
Author

When hitting the return home button this is the error it gives

This error originated from a custom integration.

Logger: homeassistant
Source: custom_components/localtuya/core/pytuya/init.py:1204
integration: LocalTuya (documentation, issues)
First occurred: 6:46:44 PM (1 occurrences)
Last logged: 6:46:44 PM

Error doing job: Fatal error: protocol.data_received() call failed.
Traceback (most recent call last):
File "/config/custom_components/localtuya/core/pytuya/init.py", line 1199, in _decode_payload
json_payload = json.loads(payload)
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/json/init.py", line 346, in loads
return _default_decoder.decode(s)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 32 (char 31)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/local/lib/python3.12/asyncio/selector_events.py", line 1017, in _read_ready__data_received
self._protocol.data_received(data)
File "/config/custom_components/localtuya/core/pytuya/init.py", line 897, in data_received
self.dispatcher.add_data(data)
File "/config/custom_components/localtuya/core/pytuya/init.py", line 652, in add_data
self._dispatch(msg)
File "/config/custom_components/localtuya/core/pytuya/init.py", line 707, in _dispatch
self.callback_status_update(msg)
File "/config/custom_components/localtuya/core/pytuya/init.py", line 832, in _status_update
decoded_message: dict = self._decode_payload(msg.payload)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/localtuya/core/pytuya/init.py", line 1204, in _decode_payload
raise DecodeError(
custom_components.localtuya.core.pytuya.DecodeError: could not decrypt data: wrong local_key? (exception: Expecting value: line 1 column 32 (char 31), payload: {"dps":{"3":"chargego"},"type":query,"t":1709423203})

not sure if it is related.

@xZetsubou
Copy link
Owner

xZetsubou commented Mar 3, 2024

I know what caused your issue, but rather, there is another issue, the modes and fan speed. For some reason, it didn't retrieve values from the cloud.

@chris4824
Copy link
Author

Thats weird. I have them working some what in the smart life integration.

@chris4824

This comment was marked as outdated.

@chris4824
Copy link
Author

robot

its also showing cleaning mode as chargego but that is a docked state, not a cleaning state. and I can't select a cleaning mode from a list of

{
"range": [
"smart",
"zone",
"pose",
"part",
"chargego",
"wallfollow",
"selectroom"
]
}

xZetsubou added a commit that referenced this issue Mar 3, 2024
@xZetsubou
Copy link
Owner

xZetsubou commented Mar 3, 2024

Hello, so I did simulated your device into auto configure entities and return the correct values however yesterday I made some changes after my last comment #158 (comment) and I thought you will re-download master version later but I guess I may be wrong 😓 ? I think you downloaded the version right after my comment.

So to ensure can you re-download the latest master and delete the devices then auto configure the entities for them.

@chris4824
Copy link
Author

I saw your changes and did redownloaded it and readded and restarted HA. To be sure I just did it all again and there is no change. The picture above is still how it looks a well.

@chris4824
Copy link
Author

One of the robots is now saying docked but the other still says cleaning. The controls for both doesn't work though.

@xZetsubou
Copy link
Owner

xZetsubou commented Mar 3, 2024

Can you re-post the device diagnostics once more after last changes, I'm kinda confused I haven't made much changes in vacuum since I forked this so not sure if it upstream bug.

@chris4824

This comment was marked as outdated.

@chris4824

This comment was marked as outdated.

@xZetsubou
Copy link
Owner

Do you configure the device each on it own and select auto configure entities or you use configure all devices checkbox?

@chris4824
Copy link
Author

Configure all checkbox

@chris4824
Copy link
Author

Just did only one. The 1st robot and it is the same

@xZetsubou
Copy link
Owner

xZetsubou commented Mar 3, 2024

Oh I just double checked the configure all feature and found out it doesn't retrieve data from cloud. 😞
It should be fixed on the latest master.

edit to be clear the main issue of the device it wasn't that you can't control the device, it was the auto configure feature didn't pull the correct data from cloud data for the device.

@chris4824
Copy link
Author

Unfortunately it's still the same after restarting and readded

@xZetsubou
Copy link
Owner

xZetsubou commented Mar 3, 2024

one device is enough can you share the diagnostics after last changes, now that the data pulled correctly we can look for the other issue. and explain the issue with it.

@chris4824
Copy link
Author

chris4824 commented Mar 3, 2024

 {
  "home_assistant": {
    "installation_type": "Home Assistant OS",
    "version": "2024.3.0b4",
    "dev": false,
    "hassio": true,
    "virtualenv": false,
    "python_version": "3.12.2",
    "docker": true,
    "arch": "x86_64",
    "timezone": "America/New_York",
    "os_name": "Linux",
    "os_version": "6.6.16-haos",
    "supervisor": "2024.02.1",
    "host_os": "Home Assistant OS 12.0",
    "docker_version": "24.0.7",
    "chassis": "vm",
    "run_as_root": true
  },
  "custom_components": {
    "cielo_home": {
      "version": "1.6.8",
      "requirements": []
    },
    "weatherdotcom": {
      "version": "1.1.6",
      "requirements": []
    },
    "smartlife": {
      "version": "0.1.0",
      "requirements": [
        "tuya-device-sharing-sdk==0.1.9"
      ]
    },
    "ttlock": {
      "version": "v0.6.1",
      "requirements": [
        "pydantic"
      ]
    },
    "alarmo": {
      "version": "v1.9.14",
      "requirements": []
    },
    "blueiris": {
      "version": "1.0.17",
      "requirements": []
    },
    "localtuya": {
      "version": "3.2.4.3",
      "requirements": []
    },
    "alexa_media": {
      "version": "4.9.2",
      "requirements": [
        "alexapy==1.27.10",
        "packaging>=20.3",
        "wrapt>=1.14.0"
      ]
    },
    "browser_mod": {
      "version": "2.3.0",
      "requirements": []
    },
    "dreo": {
      "version": "0.1.3",
      "requirements": [
        "websockets"
      ]
    },
    "meross_cloud": {
      "version": "1.2.13",
      "requirements": [
        "meross_iot==0.4.6.1"
      ]
    },
    "hacs": {
      "version": "1.34.0",
      "requirements": [
        "aiogithubapi>=22.10.1"
      ]
    }
  },
  "integration_manifest": {
    "domain": "localtuya",
    "name": "Local Tuya",
    "codeowners": [],
    "config_flow": true,
    "dependencies": [],
    "documentation": "https://github.com/xZetsubou/hass-localtuya/",
    "integration_type": "hub",
    "iot_class": "local_push",
    "issue_tracker": "https://github.com/xZetsubou/hass-localtuya/issues",
    "requirements": [],
    "version": "3.2.4.3",
    "is_built_in": false
  },
  "data": {
    "device_config": {
      "friendly_name": "Wall-E",
      "host": "192.168.1.16",
      "device_id": "",
      "local_key": "",
      "protocol_version": "3.3",
      "enable_debug": false,
      "node_id": null,
      "model": "Lds Robot",
      "product_key": "",
      "dps_strings": [
        "2 ( code: power_go , value: False )",
        "3 ( code: mode , value: chargego )",
        "4 ( code: direction_control , value: foward, cloud pull )",
        "5 ( code: status , value: charge_done )",
        "6 ( code: electricity_left , value: 100 )",
        "13 ( code: seek , value: True, cloud pull )",
        "14 ( code: suction , value: normal )",
        "16 ( code: clean_area , value: 46 )",
        "17 ( code: clean_time , value: 51 )",
        "18 ( code: fault , value: 0 )",
        "101 ( code: pause , value: False )",
        "102 ( code: water_mode , value: 3 )",
        "103 ( code: reset_map , value: True, cloud pull )",
        "104 ( code: request , value: get_map, cloud pull )",
        "105 ( code: command , value: q3AAAAAM, cloud pull )",
        "107 ( code: switch_disturb , value: False )",
        "108 ( code: smart_rooms , value: cur_rooms, cloud pull )",
        "109 ( code: rooms_msg , value: 0, cloud pull )",
        "110 ( code: break_clean , value: False )",
        "111 ( code: voice_language , value: en )",
        "112 ( code: volume_set , value: 100 )",
        "113 ( code: y_mop , value: False )"
      ],
      "entities": [
        {
          "id": "4",
          "select_options": {
            "foward": "Forward",
            "backward": "Backward",
            "turn_left": "Left",
            "turn_right": "Right",
            "stop": "Stop"
          },
          "friendly_name": "Direction",
          "icon": "mdi:arrow-all",
          "entity_category": "config",
          "platform": "select"
        },
        {
          "id": "5",
          "powergo_dp": "2",
          "battery_dp": "6",
          "mode_dp": "3",
          "fan_speed_dp": "14",
          "pause_dp": "101",
          "clean_time_dp": "17",
          "clean_area_dp": "16",
          "fault_dp": "18",
          "modes": "smart,zone,pose,part,chargego,wallfollow,selectroom",
          "idle_status_value": "standby,sleep",
          "stop_status": "standby",
          "paused_state": "paused",
          "fan_speeds": "strong,normal,quiet",
          "return_mode": "chargego",
          "returning_status_value": "docking,to_charge",
          "docked_status_value": "charging,chargecompleted",
          "friendly_name": "",
          "icon": "mdi:robot-vacuum",
          "entity_category": "None",
          "platform": "vacuum"
        },
        {
          "id": "13",
          "friendly_name": "Device locating",
          "icon": "mdi:select-marker",
          "entity_category": "config",
          "platform": "switch"
        },
        {
          "id": "16",
          "friendly_name": "",
          "icon": "mdi:texture-box",
          "entity_category": "None",
          "state_class": "measurement",
          "platform": "sensor"
        },
        {
          "id": "17",
          "friendly_name": "",
          "icon": "mdi:progress-clock",
          "entity_category": "None",
          "state_class": "measurement",
          "platform": "sensor"
        },
        {
          "id": "18",
          "state_on": "1",
          "friendly_name": "Fault",
          "icon": "",
          "entity_category": "diagnostic",
          "device_class": "problem",
          "platform": "binary_sensor"
        },
        {
          "id": "103",
          "friendly_name": "Reset Map",
          "icon": "mdi:map-marker-remove",
          "entity_category": "config",
          "platform": "button"
        },
        {
          "id": "107",
          "friendly_name": "Do Not Disturb",
          "icon": "mdi:minus-circle",
          "entity_category": "config",
          "platform": "switch"
        },
        {
          "id": "110",
          "friendly_name": "Resumable Cleaning",
          "icon": "mdi:cog-play-outline",
          "entity_category": "config",
          "platform": "switch"
        },
        {
          "id": "111",
          "select_options": {
            "cn": "Chinese",
            "en": "English"
          },
          "friendly_name": "Dust Collection Mode",
          "icon": "mdi:air-filter",
          "entity_category": "config",
          "platform": "select"
        },
        {
          "id": "112",
          "min_value": 0,
          "max_value": 100,
          "step_size": 1,
          "scaling": 1.0,
          "friendly_name": "volume",
          "icon": "mdi:volume-high",
          "entity_category": "config",
          "platform": "number"
        },
        {
          "id": "113",
          "friendly_name": "Mop Y",
          "icon": "mdi:dots-vertical",
          "entity_category": "config",
          "platform": "switch"
        }
      ]
    },
    "device_cloud_info": {
      "active_time": 1692144776,
      "biz_type": 18,
      "category": "sd",
      "create_time": 1612367330,
      "icon": "smart/icon/bay15948075783455pQT/425d742c39bb7ddaf06b217cf7cc60dc.jpg",
      "id": "",
      "ip": "6...8",
      "lat": "33.7600",
      "local_key": "",
      "lon": "-79.1900",
      "model": "R3",
      "name": "Wall-E",
      "online": true,
      "owner_id": "38040947",
      "product_id": "",
      "product_name": "Lds Robot",
      "status": [
        {
          "code": "power_go",
          "value": false
        },
        {
          "code": "mode",
          "value": "chargego"
        },
        {
          "code": "direction_control",
          "value": "foward"
        },
        {
          "code": "status",
          "value": "charge_done"
        },
        {
          "code": "electricity_left",
          "value": 100
        },
        {
          "code": "seek",
          "value": true
        },
        {
          "code": "suction",
          "value": "normal"
        },
        {
          "code": "clean_area",
          "value": 46
        },
        {
          "code": "clean_time",
          "value": 51
        },
        {
          "code": "fault",
          "value": 0
        },
        {
          "code": "pause",
          "value": false
        },
        {
          "code": "water_mode",
          "value": "3"
        },
        {
          "code": "reset_map",
          "value": true
        },
        {
          "code": "request",
          "value": "get_map"
        },
        {
          "code": "command",
          "value": "q3AAAAAM"
        },
        {
          "code": "path_data",
          "value": ""
        },
        {
          "code": "switch_disturb",
          "value": false
        },
        {
          "code": "smart_rooms",
          "value": "cur_rooms"
        },
        {
          "code": "rooms_msg",
          "value": 0
        },
        {
          "code": "break_clean",
          "value": false
        },
        {
          "code": "voice_language",
          "value": "en"
        },
        {
          "code": "volume_set",
          "value": 100
        },
        {
          "code": "y_mop",
          "value": false
        }
      ],
      "sub": false,
      "time_zone": "-04:00",
      "uid": "",
      "update_time": 1709252277,
      "uuid": "",
      "dps_data": {
        "2": {
          "code": "power_go",
          "custom_name": "",
          "dp_id": 2,
          "time": 1708814549048,
          "value": false,
          "type": "Boolean",
          "values": "{\"type\": \"bool\", \"typeDefaultValue\": False}",
          "id": 2,
          "accessMode": "rw"
        },
        "3": {
          "code": "mode",
          "custom_name": "",
          "dp_id": 3,
          "time": 1708814493031,
          "value": "chargego",
          "type": "Enum",
          "values": "{\"range\": [\"smart\", \"zone\", \"pose\", \"part\", \"chargego\", \"wallfollow\", \"selectroom\"], \"type\": \"enum\", \"typeDefaultValue\": \"smart\"}",
          "id": 3,
          "accessMode": "rw"
        },
        "4": {
          "code": "direction_control",
          "custom_name": "",
          "dp_id": 4,
          "time": 1674962403451,
          "value": "foward",
          "type": "Enum",
          "values": "{\"range\": [\"foward\", \"backward\", \"turn_left\", \"turn_right\", \"stop\"], \"type\": \"enum\", \"typeDefaultValue\": \"foward\"}",
          "id": 4,
          "accessMode": "rw"
        },
        "5": {
          "code": "status",
          "custom_name": "",
          "dp_id": 5,
          "time": 1709290678901,
          "value": "charge_done",
          "id": 5,
          "accessMode": "ro",
          "values": "{\"range\": [\"standby\", \"smart_clean\", \"zone_clean\", \"part_clean\", \"paused\", \"goto_pos\", \"pos_arrived\", \"pos_unarrive\", \"to_charge\", \"charging\", \"charge_done\", \"sleep\", \"fault\", \"wall_follow\", \"direction_control\", \"selectroom\"], \"type\": \"enum\", \"typeDefaultValue\": \"standby\"}"
        },
        "6": {
          "code": "electricity_left",
          "custom_name": "",
          "dp_id": 6,
          "time": 1708823979301,
          "value": 100,
          "id": 6,
          "accessMode": "ro",
          "values": "{\"max\": 100, \"min\": 0, \"scale\": 0, \"step\": 1, \"type\": \"value\", \"typeDefaultValue\": 0, \"unit\": \"%\"}"
        },
        "13": {
          "code": "seek",
          "custom_name": "",
          "dp_id": 13,
          "time": 1674962403451,
          "value": true,
          "type": "Boolean",
          "values": "{\"type\": \"bool\", \"typeDefaultValue\": False}",
          "id": 13,
          "accessMode": "rw"
        },
        "14": {
          "code": "suction",
          "custom_name": "",
          "dp_id": 14,
          "time": 1709443489508,
          "value": "normal",
          "type": "Enum",
          "values": "{\"range\": [\"strong\", \"normal\", \"quiet\"], \"type\": \"enum\", \"typeDefaultValue\": \"strong\"}",
          "id": 14,
          "accessMode": "rw"
        },
        "16": {
          "code": "clean_area",
          "custom_name": "",
          "dp_id": 16,
          "time": 1708814269745,
          "value": 46,
          "id": 16,
          "accessMode": "ro",
          "values": "{\"max\": 9999, \"min\": 0, \"scale\": 0, \"step\": 1, \"type\": \"value\", \"typeDefaultValue\": 0, \"unit\": \"\u33a1\"}"
        },
        "17": {
          "code": "clean_time",
          "custom_name": "",
          "dp_id": 17,
          "time": 1708814462071,
          "value": 51,
          "id": 17,
          "accessMode": "ro",
          "values": "{\"max\": 9999, \"min\": 0, \"scale\": 0, \"step\": 1, \"type\": \"value\", \"typeDefaultValue\": 0, \"unit\": \"\u5206\"}"
        },
        "18": {
          "code": "fault",
          "custom_name": "",
          "dp_id": 18,
          "time": 1707532756881,
          "value": 0,
          "id": 18,
          "accessMode": "ro",
          "values": "{\"label\": [\"0\", \"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\", \"9\", \"10\", \"11\", \"12\", \"13\", \"14\", \"15\", \"16\", \"17\", \"18\", \"19\", \"20\", \"21\", \"22\", \"23\", \"24\"], \"maxlen\": 25, \"type\": \"bitmap\", \"typeDefaultValue\": 0}"
        },
        "101": {
          "code": "pause",
          "custom_name": "",
          "dp_id": 101,
          "time": 1708814549048,
          "value": false,
          "type": "Boolean",
          "values": "{\"type\": \"bool\", \"typeDefaultValue\": False}",
          "id": 101,
          "accessMode": "rw"
        },
        "102": {
          "code": "water_mode",
          "custom_name": "",
          "dp_id": 102,
          "time": 1707532756597,
          "value": "3",
          "type": "Enum",
          "values": "{\"range\": [\"0\", \"1\", \"2\", \"3\"], \"type\": \"enum\", \"typeDefaultValue\": \"0\"}",
          "id": 102,
          "accessMode": "rw"
        },
        "103": {
          "code": "reset_map",
          "custom_name": "",
          "dp_id": 103,
          "time": 1698702580763,
          "value": true,
          "type": "Boolean",
          "values": "{\"type\": \"bool\", \"typeDefaultValue\": False}",
          "id": 103,
          "accessMode": "rw"
        },
        "104": {
          "code": "request",
          "custom_name": "",
          "dp_id": 104,
          "time": 1674962403451,
          "value": "get_map",
          "type": "Enum",
          "values": "{\"range\": [\"get_map\", \"get_path\", \"in_map\"], \"type\": \"enum\", \"typeDefaultValue\": \"get_map\"}",
          "id": 104,
          "accessMode": "rw"
        },
        "105": {
          "code": "command",
          "custom_name": "",
          "dp_id": 105,
          "time": 1708814494065,
          "value": "q3AAAAAM",
          "type": "Raw",
          "values": "{\"maxlen\": 128, \"type\": \"raw\"}",
          "id": 105,
          "accessMode": "rw"
        },
        "106": {
          "code": "path_data",
          "custom_name": "",
          "dp_id": 106,
          "time": 1674962403451,
          "value": "",
          "type": "Raw",
          "values": "{\"maxlen\": 128, \"type\": \"raw\"}",
          "id": 106,
          "accessMode": "rw"
        },
        "107": {
          "code": "switch_disturb",
          "custom_name": "",
          "dp_id": 107,
          "time": 1707532894523,
          "value": false,
          "type": "Boolean",
          "values": "{\"type\": \"bool\", \"typeDefaultValue\": False}",
          "id": 107,
          "accessMode": "rw"
        },
        "108": {
          "code": "smart_rooms",
          "custom_name": "",
          "dp_id": 108,
          "time": 1674962403451,
          "value": "cur_rooms",
          "type": "Enum",
          "values": "{\"range\": [\"cur_rooms\", \"edit_rooms\", \"segment\", \"clear_rooms\", \"save_rooms\"], \"type\": \"enum\", \"typeDefaultValue\": \"cur_rooms\"}",
          "id": 108,
          "accessMode": "rw"
        },
        "109": {
          "code": "rooms_msg",
          "custom_name": "",
          "dp_id": 109,
          "time": 1699576140896,
          "value": 0,
          "id": 109,
          "accessMode": "ro",
          "values": "{\"label\": [\"split\", \"merger\", \"map\", \"robot_cleaning\", \"active_split\", \"not_by_human\", \"save_fail\", \"split_success\", \"merger_success\", \"choice_no_found\", \"count_error\", \"choice_set_ok\"], \"maxlen\": 12, \"type\": \"bitmap\", \"typeDefaultValue\": 0}"
        },
        "110": {
          "code": "break_clean",
          "custom_name": "",
          "dp_id": 110,
          "time": 1707532894523,
          "value": false,
          "type": "Boolean",
          "values": "{\"type\": \"bool\", \"typeDefaultValue\": False}",
          "id": 110,
          "accessMode": "rw"
        },
        "111": {
          "code": "voice_language",
          "custom_name": "",
          "dp_id": 111,
          "time": 1707586435059,
          "value": "en",
          "type": "Enum",
          "values": "{\"range\": [\"cn\", \"en\"], \"type\": \"enum\", \"typeDefaultValue\": \"cn\"}",
          "id": 111,
          "accessMode": "rw"
        },
        "112": {
          "code": "volume_set",
          "custom_name": "",
          "dp_id": 112,
          "time": 1707532757253,
          "value": 100,
          "type": "Integer",
          "values": "{\"max\": 100, \"min\": 0, \"scale\": 0, \"step\": 1, \"type\": \"value\", \"typeDefaultValue\": 0, \"unit\": \"%1\"}",
          "id": 112,
          "accessMode": "rw"
        },
        "113": {
          "code": "y_mop",
          "custom_name": "",
          "dp_id": 113,
          "time": 1707532894523,
          "value": false,
          "type": "Boolean",
          "values": "{\"type\": \"bool\", \"typeDefaultValue\": False}",
          "id": 113,
          "accessMode": "rw"
        }
      }
    }
  }
}

@xZetsubou
Copy link
Owner

Can you explain what the issues with it? and if the issue is related to control is there an errors in logs?

@chris4824
Copy link
Author

The robot shows cleaning when it's really docked and the only control that works is the suction strength. The only error I see in the log is

This error originated from a custom integration.

Logger: homeassistant
Source: custom_components/localtuya/core/pytuya/init.py:1204
integration: LocalTuya (documentation, issues)
First occurred: 12:21:33 AM (9 occurrences)
Last logged: 12:43:40 AM

Error doing job: Fatal error: protocol.data_received() call failed.
Traceback (most recent call last):
File "/config/custom_components/localtuya/core/pytuya/init.py", line 1199, in _decode_payload
json_payload = json.loads(payload)
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/json/init.py", line 346, in loads
return _default_decoder.decode(s)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 32 (char 31)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/local/lib/python3.12/asyncio/selector_events.py", line 1017, in _read_ready__data_received
self._protocol.data_received(data)
File "/config/custom_components/localtuya/core/pytuya/init.py", line 897, in data_received
self.dispatcher.add_data(data)
File "/config/custom_components/localtuya/core/pytuya/init.py", line 652, in add_data
self._dispatch(msg)
File "/config/custom_components/localtuya/core/pytuya/init.py", line 707, in _dispatch
self.callback_status_update(msg)
File "/config/custom_components/localtuya/core/pytuya/init.py", line 832, in _status_update
decoded_message: dict = self._decode_payload(msg.payload)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/localtuya/core/pytuya/init.py", line 1204, in _decode_payload
raise DecodeError(
custom_components.localtuya.core.pytuya.DecodeError: could not decrypt data: wrong local_key? (exception: Expecting value: line 1 column 32 (char 31), payload: {"dps":{"3":"chargego"},"type":query,"t":1709443292})

@chris4824
Copy link
Author

Also there is no way of choosing a mode.

@chris4824
Copy link
Author

This is what smart life integration looks like. Able to choose a mode
Screenshot_20240303-005047

@xZetsubou
Copy link
Owner

master updated.

@chris4824
Copy link
Author

I can make it work now with the mode select selecting smart cleaning. And can make it go back to dock. But when it's cleaning it now says paused. And no big deal but the buttons "play, pause, stop, location, home" and the start cleaning doesn't work. But it's not a big deal.

@xZetsubou
Copy link
Owner

xZetsubou commented Mar 3, 2024

That's weird I think everything should works as it should does the button doesn't behave correctly or the doesn't works at all. is this happen in both devices?

edit: you can debug the device when it goes on or off

There most be a weird behavior that happened to the device in-order to debug that you will need to enable the debug for the device it self.
Go to HA -> Devices -> LocalTuya -> Enable the debug.
Click on the same LocalTuya page click "Configure" from main options choose "reconfigure existing device" choose the climate and check on enable the debug
Use the device till the issue shows up.
either you disable the debug from step "1" this will download log file, or go to HA -> Settings -> system -> logs -> search for "localtuya" click on show full logs and copy everything inside.

xZetsubou added a commit that referenced this issue Mar 3, 2024
@chris4824
Copy link
Author

the only button that works is home but robot says invalid button when you press it. the others do nothing that i can tell. I will get a debug log.

@chris4824
Copy link
Author

ok.. so I tested both vacuums and on 1 everything is fixed and working correctly with all buttons working.. your awesome. the other robot the start cleaning text button says invalid button when pressed, the stop button works, the play button works, return to dock works. also the start cleaning text still changes to paused when it actually should say cleaning. think that might be why the start cleaning text doesn't work.

robot

@chris4824
Copy link
Author

forgot to mention that the test above was done with the latest master branch with last commit "prefer power_go over power".

@chris4824
Copy link
Author

here is the log

2024-03-03 09:32:00.111 ERROR (MainThread) [homeassistant] Error doing job: Fatal error: protocol.data_received() call failed.
Traceback (most recent call last):
File "/config/custom_components/localtuya/core/pytuya/init.py", line 1199, in _decode_payload
json_payload = json.loads(payload)
^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/json/init.py", line 346, in loads
return _default_decoder.decode(s)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/json/decoder.py", line 337, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.12/json/decoder.py", line 355, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 28 (char 27)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "/usr/local/lib/python3.12/asyncio/selector_events.py", line 1017, in _read_ready__data_received
self._protocol.data_received(data)
File "/config/custom_components/localtuya/core/pytuya/init.py", line 897, in data_received
self.dispatcher.add_data(data)
File "/config/custom_components/localtuya/core/pytuya/init.py", line 652, in add_data
self._dispatch(msg)
File "/config/custom_components/localtuya/core/pytuya/init.py", line 707, in _dispatch
self.callback_status_update(msg)
File "/config/custom_components/localtuya/core/pytuya/init.py", line 832, in _status_update
decoded_message: dict = self._decode_payload(msg.payload)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/config/custom_components/localtuya/core/pytuya/init.py", line 1204, in _decode_payload
raise DecodeError(
custom_components.localtuya.core.pytuya.DecodeError: could not decrypt data: wrong local_key? (exception: Expecting value: line 1 column 28 (char 27), payload: {"dps":{"101":true},"type":query,"t":1709476319})
2024-03-03 10:03:49.995 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending command 9 (device type: type_0a)
2024-03-03 10:03:49.995 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending payload: b'{"gwId":"REDACTED","devId":"REDACTED"}'
2024-03-03 10:03:49.996 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Command 9 waiting for seq. number -100
2024-03-03 10:03:50.025 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 9 TuyaMessage(seqno=0, cmd=9, retcode=0, payload=b'', crc=2958142211, crc_good=True, prefix=21930, iv=None)
2024-03-03 10:03:50.025 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got heartbeat response
2024-03-03 10:03:50.025 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] ACK received for command 9: ignoring it
2024-03-03 10:03:51.822 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending command 7 (device type: type_0a)
2024-03-03 10:03:51.822 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending payload: b'{"devId":"REDACTED","uid":"REDACTED","t":"1709478231","dps":{"2":true}}'
2024-03-03 10:03:51.824 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Command 7 waiting for seq. number 5
2024-03-03 10:03:51.867 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 7 TuyaMessage(seqno=5, cmd=7, retcode=0, payload=b'', crc=1706869634, crc_good=True, prefix=21930, iv=None)
2024-03-03 10:03:51.868 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] ACK received for command 7: ignoring it
2024-03-03 10:03:52.669 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 8 TuyaMessage(seqno=0, cmd=8, retcode=0, payload=b"3.3\x00\x00\x00\x00\x00\x00\x1e\xce\x00\x00\x00\x01\xc9\xef\x19\x0fE\x1b8V\xca\xa0\xaa\x83P\x9aM\xd8\x8e\xf4\xe5\xbf\xbf\x89\xca\xcc\xb3\x91\xc5\x9ac'\xb7\xc6\xe3\xe7?W\xca\xa3\x117>\x81\x16\xa7\xd5%V", crc=15470762, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:03:52.669 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got status update 2024-03-03 10:03:52.670 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Deciphered data = '{"dps":{"5":"charge_done"},"t":1709478232}' 2024-03-03 10:04:00.027 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending command 9 (device type: type_0a) 2024-03-03 10:04:00.027 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending payload: b'{"gwId":"REDACTED","devId":"REDACTED"}' 2024-03-03 10:04:00.028 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Command 9 waiting for seq. number -100 2024-03-03 10:04:00.060 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 9 TuyaMessage(seqno=0, cmd=9, retcode=0, payload=b'', crc=2958142211, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:00.060 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got heartbeat response 2024-03-03 10:04:00.060 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] ACK received for command 9: ignoring it 2024-03-03 10:04:01.824 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending command 7 (device type: type_0a) 2024-03-03 10:04:01.825 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending payload: b'{"devId":"REDACTED","uid":"REDACTED","t":"1709478241","dps":{"2":true}}' 2024-03-03 10:04:01.826 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Command 7 waiting for seq. number 7 2024-03-03 10:04:01.901 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 7 TuyaMessage(seqno=7, cmd=7, retcode=0, payload=b'', crc=98596553, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:01.901 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] ACK received for command 7: ignoring it 2024-03-03 10:04:10.062 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending command 9 (device type: type_0a) 2024-03-03 10:04:10.062 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending payload: b'{"gwId":"REDACTED","devId":"REDACTED"}' 2024-03-03 10:04:10.063 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Command 9 waiting for seq. number -100 2024-03-03 10:04:10.207 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 9 TuyaMessage(seqno=0, cmd=9, retcode=0, payload=b'', crc=2958142211, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:10.207 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got heartbeat response 2024-03-03 10:04:10.208 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] ACK received for command 9: ignoring it 2024-03-03 10:04:13.479 DEBUG (MainThread) [custom_components.localtuya.select] Sending Option: SMART -> smart 2024-03-03 10:04:13.479 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending command 7 (device type: type_0a) 2024-03-03 10:04:13.479 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending payload: b'{"devId":"REDACTED","uid":"REDACTED","t":"1709478253","dps":{"3":"smart"}}' 2024-03-03 10:04:13.481 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Command 7 waiting for seq. number 9 2024-03-03 10:04:13.578 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 7 TuyaMessage(seqno=9, cmd=7, retcode=0, payload=b'', crc=4278614649, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:13.578 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] ACK received for command 7: ignoring it 2024-03-03 10:04:13.599 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 8 TuyaMessage(seqno=0, cmd=8, retcode=0, payload=b"3.3\x00\x00\x00\x00\x00\x00\x1e\xcf\x00\x00\x00\x01\xa3\xc8-t7\x04[\xa2\x926\x9d\x06\xdc\xbc\xa2\xf9\x91@\xeeNo'\xa5 \x1e\x07B\x1a\xdfn\x1d\xee\xc2>/3\xd2\x0c\x86\xec\x11RB\xe9'\xaf{\x8c", crc=2802034401, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:13.599 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got status update 2024-03-03 10:04:13.600 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Deciphered data = '{"dps":{"3":"smart"},"t":1709478253}' 2024-03-03 10:04:14.271 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 8 TuyaMessage(seqno=0, cmd=8, retcode=0, payload=b"3.3\x00\x00\x00\x00\x00\x00\x1e\xd0\x00\x00\x00\x01\x84\x85\x7f_\r\x17<\xfc\x08\x17J\xc6\xca\xf1%\xf7\x19\x05\xb9\xc8\xc2\xde\x08@\x9b\xf6\x03\x99g\r'\xa7\xb7\xdbR\xa5\xfd\xe3>\x13$\xaeV\xd4\x0f\xa2ZE@\xf2\xb0\xdcW\xe3\xf7a[\xfac\xa7Fs\x8c~", crc=344734532, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:14.271 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got status update 2024-03-03 10:04:14.272 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Deciphered data = '{"dps":{"2":true,"101":true,"5":"smart_clean"},"t":1709478254}' 2024-03-03 10:04:14.362 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 8 TuyaMessage(seqno=0, cmd=8, retcode=0, payload=b'3.3\x00\x00\x00\x00\x00\x00\x1e\xd1\x00\x00\x00\x01\xcfy@!\xa4"f\xb5\xef\x01\xdeB4\x7f\xf8\x8b\xcf\x84\x80\x861\x9b+\x15\xe49\x949g\xe0\xba\x82', crc=3115269426, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:14.362 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got status update 2024-03-03 10:04:14.362 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Deciphered data = '{"dps":{"16":2},"t":1709478254}' 2024-03-03 10:04:20.013 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 8 TuyaMessage(seqno=0, cmd=8, retcode=0, payload=b'3.3\x00\x00\x00\x00\x00\x00\x1e\xd2\x00\x00\x00\x01\xda\xb6317\x89nusF\xe5\xfd\xa2\xe0t,{\x84\xbe\xc5\xfa?9\xf1\xcc\xe9\xbe\xc6l\x14\xb8\xa2', crc=784179530, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:20.014 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got status update 2024-03-03 10:04:20.014 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Deciphered data = '{"dps":{"16":0},"t":1709478259}' 2024-03-03 10:04:20.209 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending command 9 (device type: type_0a) 2024-03-03 10:04:20.210 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending payload: b'{"gwId":"REDACTED","devId":"REDACTED"}' 2024-03-03 10:04:20.210 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Command 9 waiting for seq. number -100 2024-03-03 10:04:20.241 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 9 TuyaMessage(seqno=0, cmd=9, retcode=0, payload=b'', crc=2958142211, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:20.241 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got heartbeat response 2024-03-03 10:04:20.242 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] ACK received for command 9: ignoring it 2024-03-03 10:04:22.926 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 8 TuyaMessage(seqno=0, cmd=8, retcode=0, payload=b'3.3\x00\x00\x00\x00\x00\x00\x1e\xd3\x00\x00\x00\x01P8\xa2v\xa0g\xf9\xd5~\x88v\x1b\xf2q;\xc5\x04\x02\x05\xb1\r\xc8\xbb4\x0biW\x9e\x18\xcf\x83\x9c', crc=411591227, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:22.927 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got status update 2024-03-03 10:04:22.927 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Deciphered data = '{"dps":{"6":99},"t":1709478262}' 2024-03-03 10:04:27.950 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 8 TuyaMessage(seqno=0, cmd=8, retcode=0, payload=b'3.3\x00\x00\x00\x00\x00\x00\x1e\xd4\x00\x00\x00\x01,\x0b"o8\xe3\x96\x1eA\x95\xdeb\x08p]\xd5\t\xc6\xd7\x7fXW\xbf \x9f\xdf<Xi\x17\xec\x87', crc=1067122003, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:27.950 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got status update 2024-03-03 10:04:27.951 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Deciphered data = '{"dps":{"6":98},"t":1709478267}' 2024-03-03 10:04:30.248 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending command 9 (device type: type_0a) 2024-03-03 10:04:30.248 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending payload: b'{"gwId":"REDACTED","devId":"REDACTED"}' 2024-03-03 10:04:30.249 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Command 9 waiting for seq. number -100 2024-03-03 10:04:30.290 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 9 TuyaMessage(seqno=0, cmd=9, retcode=0, payload=b'', crc=2958142211, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:30.290 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got heartbeat response 2024-03-03 10:04:30.290 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] ACK received for command 9: ignoring it 2024-03-03 10:04:33.340 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending command 7 (device type: type_0a) 2024-03-03 10:04:33.341 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending payload: b'{"devId":"REDACTED","uid":"REDACTED","t":"1709478273","dps":{"3":"chargego"}}' 2024-03-03 10:04:33.342 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Command 7 waiting for seq. number 12 2024-03-03 10:04:33.445 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 7 TuyaMessage(seqno=12, cmd=7, retcode=0, payload=b'', crc=3794389354, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:33.446 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] ACK received for command 7: ignoring it 2024-03-03 10:04:33.476 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 8 TuyaMessage(seqno=0, cmd=8, retcode=0, payload=b'3.3\x00\x00\x00\x00\x00\x00\x1e\xd5\x00\x00\x00\x01\xc6b\x041\xcf!\xcck\x001\xd0\xf0\xe3\xbf\xc5\xbb\x7f\xefyz\xdd\xd8{\xb92\x91\x16\xa1\x03c\x04IL\x11\xcc\x11\x97:,\xd0\xa9\xaf#E!\xa7\xc7\xd1', crc=985516485, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:33.477 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got status update 2024-03-03 10:04:33.478 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Deciphered data = '{"dps":{"3":"chargego"},"t":1709478273}' 2024-03-03 10:04:33.934 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 8 TuyaMessage(seqno=0, cmd=8, retcode=0, payload=b'3.3\x00\x00\x00\x00\x00\x00\x1e\xd6\x00\x00\x00\x01\xa9\xf6\xb0\x1a\xb5\xfb\xe7\x8f\x1f\xbc\x96\x9a\x14\xdd\xfb\xb7\xfbh\xfe\x901\xe0N\x96\xccq\xf671F\x8a\x8d\xb7\x12X\xdch\xde\x93\xcaP-b\x10\xe0c\xcf@', crc=2402337811, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:33.934 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got status update 2024-03-03 10:04:33.935 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Deciphered data = '{"dps":{"5":"to_charge"},"t":1709478273}' 2024-03-03 10:04:40.291 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending command 9 (device type: type_0a) 2024-03-03 10:04:40.291 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending payload: b'{"gwId":"REDACTED","devId":"REDACTED"}' 2024-03-03 10:04:40.292 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Command 9 waiting for seq. number -100 2024-03-03 10:04:40.403 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 9 TuyaMessage(seqno=0, cmd=9, retcode=0, payload=b'', crc=2958142211, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:40.404 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got heartbeat response 2024-03-03 10:04:40.404 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] ACK received for command 9: ignoring it 2024-03-03 10:04:50.405 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending command 9 (device type: type_0a) 2024-03-03 10:04:50.405 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending payload: b'{"gwId":"REDACTED","devId":"REDACTED"}' 2024-03-03 10:04:50.406 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Command 9 waiting for seq. number -100 2024-03-03 10:04:50.439 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 9 TuyaMessage(seqno=0, cmd=9, retcode=0, payload=b'', crc=2958142211, crc_good=True, prefix=21930, iv=None) 2024-03-03 10:04:50.439 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got heartbeat response 2024-03-03 10:04:50.439 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] ACK received for command 9: ignoring it 2024-03-03 10:04:58.225 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 8 TuyaMessage(seqno=0, cmd=8, retcode=0, payload=b"3.3\x00\x00\x00\x00\x00\x00\x1e\xd7\x00\x00\x00\x01k\xa3,=\xd1\xde\xed\xfd-?\xc4\xa1\xc5\xf2g\xa8\xa5\x10\xa2\xbcr\x17*\x12\xc1#\xb6'\xe7\xfcQO^C\xac\xa0t\xe9\xb4\xcdL\xd2\xbd\xef\xf60+xa;\xb2:\xf3\x0b\x99I\xdd\x9f\xe0`\x95\xc3\x1d", crc=1498364644, crc_good=True, prefix=21930, iv=None)
2024-03-03 10:04:58.225 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got status update
2024-03-03 10:04:58.226 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Deciphered data = '{"dps":{"2":false,"101":false,"5":"charging"},"t":1709478298}'
2024-03-03 10:05:00.440 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending command 9 (device type: type_0a)
2024-03-03 10:05:00.441 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending payload: b'{"gwId":"REDACTED","devId":"REDACTED"}'
2024-03-03 10:05:00.442 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Command 9 waiting for seq. number -100
2024-03-03 10:05:00.582 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 9 TuyaMessage(seqno=0, cmd=9, retcode=0, payload=b'', crc=2958142211, crc_good=True, prefix=21930, iv=None)
2024-03-03 10:05:00.582 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got heartbeat response
2024-03-03 10:05:00.582 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] ACK received for command 9: ignoring it
2024-03-03 10:05:10.583 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending command 9 (device type: type_0a)
2024-03-03 10:05:10.583 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Sending payload: b'{"gwId":"REDACTED","devId":"REDACTED"}'
2024-03-03 10:05:10.584 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Command 9 waiting for seq. number -100
2024-03-03 10:05:10.610 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Dispatching message CMD 9 TuyaMessage(seqno=0, cmd=9, retcode=0, payload=b'', crc=2958142211, crc_good=True, prefix=21930, iv=None)
2024-03-03 10:05:10.610 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] Got heartbeat response
2024-03-03 10:05:10.611 DEBUG (MainThread) [custom_components.localtuya.core.pytuya] [eb8...zlt] ACK received for command 9: ignoring it

xZetsubou added a commit that referenced this issue Mar 4, 2024
@chris4824
Copy link
Author

Just wanted to say thank you so much for all the work you have put into this. the only issue really left is the start cleaning text does not start the cleaning on this robot. it does change to the correct status now. the other robot is still working great. but this robot I can only start it cleaning by selecting the mode. i've always used smart mode. let me know if you need anything. Thanks again.

@xZetsubou
Copy link
Owner

Can you re-post the device diagnostics of the robot that has an issue? I'm confused which one is the working and not :).
and by saying can only start it cleaning by selecting the mode Does that means start, stop button doesn't works?

@chris4824
Copy link
Author

chris4824 commented Mar 5, 2024

weirdly the start button only restarts it when paused which is fine if it would just start by the "start cleaning" text. the stop button works. I have to choose a mode to get it start cleaning. I use smart mode. below is a picture of what I mean. I posted another picture earlier showing the "start cleaning" text. once it starts cleaning though its working fine.

robot

here is the diag log

...

@xZetsubou
Copy link
Owner

xZetsubou commented Mar 5, 2024

Does your device behave the same using official Tuya integration?

@chris4824
Copy link
Author

No. It could only be started by the mode select and that was it. No buttons works. I have already removed the official tuya since yours is already WAY better for my devices.

Copy link

github-actions bot commented Mar 8, 2024

This issue was closed because it was resolved on the release: 3.2.5

@github-actions github-actions bot added stale and removed master/next-release Fixed in master branch, Will be ready in the next release stale labels Mar 8, 2024
@github-actions github-actions bot closed this as completed Mar 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
auto configure Related to auto configure entities feature.
Projects
None yet
Development

No branches or pull requests

2 participants