{
"home_assistant": {
"installation_type": "Home Assistant OS",
"version": "2024.7.3",
"dev": false,
"hassio": true,
"virtualenv": false,
"python_version": "3.12.4",
"docker": true,
"arch": "aarch64",
"timezone": "Europe/Stockholm",
"os_name": "Linux",
"os_version": "6.6.31-haos-raspi",
"supervisor": "2024.06.2",
"host_os": "Home Assistant OS 12.4",
"docker_version": "26.1.4",
"chassis": "embedded",
"run_as_root": true
},
"custom_components": {
"localtuya": {
"documentation": "https://github.com/rospogrigio/localtuya/",
"version": "5.2.1",
"requirements": []
},
"tuya_local": {
"documentation": "https://github.com/make-all/tuya-local",
"version": "2024.7.0",
"requirements": [
"tinytuya==1.15.0",
"tuya-device-sharing-sdk>=0.1.9,<=0.2.99"
]
},
"hacs": {
"documentation": "https://hacs.xyz/docs/configuration/start",
"version": "1.34.0",
"requirements": [
"aiogithubapi>=22.10.1"
]
}
},
"integration_manifest": {
"domain": "tuya_local",
"name": "Tuya Local",
"codeowners": [
"make-all"
],
"config_flow": true,
"dependencies": [],
"documentation": "https://github.com/make-all/tuya-local",
"integration_type": "device",
"iot_class": "local_push",
"issue_tracker": "https://github.com/make-all/tuya-local/issues",
"requirements": [
"tinytuya==1.15.0",
"tuya-device-sharing-sdk>=0.1.9,<=0.2.99"
],
"version": "2024.7.0",
"is_built_in": false
},
"setup_times": {},
"data": {
"name": "Pet feeder",
"type": "catit_pixi_smart_feeder",
"device_id": "**REDACTED**",
"device_cid": "",
"local_key": "**REDACTED**",
"host": "**REDACTED**",
"protocol_version": 3.3,
"tinytuya_version": "1.15.0",
"api_version_set": 3.3,
"api_version_used": 3.3,
"api_working": true,
"status": {},
"cached_state": {
"updated_at": 1722009465.5674887,
"3": 1,
"11": 70,
"12": false,
"14": 0,
"15": 1,
"19": true,
"101": "ac_power_on",
"103": "real_time_mode",
"112": 3,
"116": "94%"
},
"pending_state": {},
"connected": true,
"force_dps": [],
"home_assistant": {
"name": "Pet feeder",
"name_by_user": null,
"disabled": false,
"disabled_by": null,
"entities": [
{
"disabled": false,
"disabled_by": null,
"entity_category": "diagnostic",
"device_class": null,
"original_device_class": "problem",
"icon": null,
"unit_of_measurement": null,
"state": {
"entity_id": "binary_sensor.pet_feeder_food_shortage",
"state": "off",
"attributes": {
"device_class": "problem",
"friendly_name": "Pet feeder Food shortage"
},
"last_changed": "2024-07-26T15:54:09.575553+00:00",
"last_reported": "2024-07-26T15:57:45.569567+00:00",
"last_updated": "2024-07-26T15:54:09.575553+00:00"
}
},
{
"disabled": false,
"disabled_by": null,
"entity_category": "diagnostic",
"device_class": null,
"original_device_class": "problem",
"icon": null,
"unit_of_measurement": null,
"state": {
"entity_id": "binary_sensor.pet_feeder_food_blockage",
"state": "off",
"attributes": {
"device_class": "problem",
"friendly_name": "Pet feeder Food blockage"
},
"last_changed": "2024-07-26T15:54:09.576396+00:00",
"last_reported": "2024-07-26T15:57:45.570534+00:00",
"last_updated": "2024-07-26T15:54:09.576396+00:00"
}
},
{
"disabled": false,
"disabled_by": null,
"entity_category": "diagnostic",
"device_class": null,
"original_device_class": "running",
"icon": null,
"unit_of_measurement": null,
"state": {
"entity_id": "binary_sensor.pet_feeder_feeding",
"state": "unknown",
"attributes": {
"device_class": "running",
"icon": "mdi:paw",
"friendly_name": "Pet feeder Feeding"
},
"last_changed": "2024-07-26T15:54:09.576994+00:00",
"last_reported": "2024-07-26T15:57:45.571403+00:00",
"last_updated": "2024-07-26T15:54:09.576994+00:00"
}
},
{
"disabled": false,
"disabled_by": null,
"entity_category": null,
"device_class": null,
"original_device_class": null,
"icon": null,
"unit_of_measurement": null,
"state": {
"entity_id": "button.pet_feeder_quick_feed",
"state": "unknown",
"attributes": {
"icon": "mdi:food-drumstick",
"friendly_name": "Pet feeder Quick Feed"
},
"last_changed": "2024-07-26T15:54:09.577699+00:00",
"last_reported": "2024-07-26T15:56:43.872576+00:00",
"last_updated": "2024-07-26T15:54:09.577699+00:00"
}
},
{
"disabled": false,
"disabled_by": null,
"entity_category": "config",
"device_class": null,
"original_device_class": "restart",
"icon": null,
"unit_of_measurement": null,
"state": {
"entity_id": "button.pet_feeder_factory_reset",
"state": "unknown",
"attributes": {
"device_class": "restart",
"friendly_name": "Pet feeder Factory reset"
},
"last_changed": "2024-07-26T15:54:09.578047+00:00",
"last_reported": "2024-07-26T15:56:43.872945+00:00",
"last_updated": "2024-07-26T15:54:09.578047+00:00"
}
},
{
"disabled": false,
"disabled_by": null,
"entity_category": "diagnostic",
"device_class": null,
"original_device_class": null,
"icon": null,
"unit_of_measurement": null,
"state": {
"entity_id": "sensor.pet_feeder_feed_report",
"state": "1",
"attributes": {
"icon": "mdi:paw",
"friendly_name": "Pet feeder Feed report"
},
"last_changed": "2024-07-26T15:54:09.578779+00:00",
"last_reported": "2024-07-26T15:57:45.573376+00:00",
"last_updated": "2024-07-26T15:54:09.578779+00:00"
}
},
{
"disabled": false,
"disabled_by": null,
"entity_category": "config",
"device_class": null,
"original_device_class": null,
"icon": null,
"unit_of_measurement": null,
"state": {
"entity_id": "number.pet_feeder_manual_feed",
"state": "1",
"attributes": {
"min": 1.0,
"max": 12.0,
"step": 1.0,
"mode": "auto",
"icon": "mdi:paw",
"friendly_name": "Pet feeder Manual feed"
},
"last_changed": "2024-07-26T15:54:09.579538+00:00",
"last_reported": "2024-07-26T15:57:45.574462+00:00",
"last_updated": "2024-07-26T15:54:09.579538+00:00"
}
}
]
}
}
}
2024-07-26 18:41:15.695 WARNING (MainThread) [custom_components.localtuya.common] [bfd...vrx] Disconnected - waiting for discovery broadcast
2024-07-26 18:41:37.036 DEBUG (MainThread) [custom_components.tuya_local.device] Cleverio PF100 received {"3": 1, "11": 70, "12": false, "14": 0, "15": 6, "19": true, "101": "ac_power_on", "103": "real_time_mode", "112": 3, "116": "94%", "full_poll": true}
2024-07-26 18:41:37.041 DEBUG (MainThread) [custom_components.tuya_local.helpers.device_config] No mapping for dpid 15 (sensor), unable to determine valid values
2024-07-26 18:41:37.042 DEBUG (MainThread) [custom_components.tuya_local.helpers.device_config] No mapping for dpid 15 (sensor), unable to determine valid values
2024-07-26 18:41:37.043 DEBUG (MainThread) [custom_components.tuya_local.helpers.device_config] Pet feeder: Mapped dps 14 value from 0 to False
2024-07-26 18:41:37.044 DEBUG (MainThread) [custom_components.tuya_local.helpers.device_config] Pet feeder: Mapped dps 14 value from 0 to False
2024-07-26 18:41:37.044 DEBUG (MainThread) [custom_components.tuya_local.helpers.device_config] Pet feeder: Mapped dps 14 value from 0 to False
2024-07-26 18:41:37.045 DEBUG (MainThread) [custom_components.tuya_local.helpers.device_config] Pet feeder: Mapped dps 14 value from 0 to False
2024-07-26 18:41:37.045 DEBUG (MainThread) [custom_components.tuya_local.helpers.device_config] Pet feeder: Mapped dps 4 value from None to None
2024-07-26 18:41:37.046 DEBUG (MainThread) [custom_components.tuya_local.helpers.device_config] Pet feeder: Mapped dps 4 value from None to None
2024-07-26 18:41:40.685 ERROR (MainThread) [homeassistant] Error doing job: Fatal error: protocol.data_received() call failed. (None)
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/pytuya/__init__.py", line 668, in data_received
self.dispatcher.add_data(data)
File "/config/custom_components/localtuya/pytuya/__init__.py", line 472, in add_data
msg = unpack_message(
^^^^^^^^^^^^^^^
File "/config/custom_components/localtuya/pytuya/__init__.py", line 304, in unpack_message
raise DecodeError("Not enough data to unpack header")
custom_components.localtuya.pytuya.DecodeError: Not enough data to unpack header
{
"result": {
"model": "{\"modelId\":\"000004d15o\",\"services\":[{\"actions\":[],\"code\":\"\",\"description\":\"\",\"events\":[],\"name\":\"默认服务\",\"properties\":[{\"abilityId\":1,\"accessMode\":\"rw\",\"code\":\"meal_plan\",\"description\":\"同步到设备端本地,即使设备离线,仍能正常喂食出粮,喂食计划最多支持10个\\nraw格式约定:按照“周期+时间+喂食份数+开关”来实现本地定时,具体如下\\n1,前7个比特位代表周一到周日,二进制转十六进制,占用一个字节,0代表未设置,1代表设置,如0000001,表示周日生效,转换为16进制就是01\\n2,时间按照小时分钟格式,占用2个字节,分钟和小时,十进制转16进制,如18:50,转为16进制为1232\\n3,喂食份数,占用1个字节,十进制转16进制,如12,转为16进制为0c\\n4,开关,占用1个字节,00表示关闭,01表示开启\\n上述举例,对于APP端时间下发的结果为0112320c01,表示周日,18:50,喂食12份,开启。\",\"extensions\":{\"iconName\":\"icon-dp_time3\",\"attribute\":\"1120\"},\"name\":\"喂食计划\",\"typeSpec\":{\"type\":\"raw\",\"maxlen\":128}},{\"abilityId\":3,\"accessMode\":\"rw\",\"code\":\"manual_feed\",\"description\":\"\",\"extensions\":{\"iconName\":\"icon-icon-test13\",\"attribute\":\"1028\"},\"name\":\"手动喂食\",\"typeSpec\":{\"type\":\"value\",\"max\":20,\"min\":1,\"scale\":0,\"step\":1,\"unit\":\"\"}},{\"abilityId\":9,\"accessMode\":\"rw\",\"code\":\"factory_reset\",\"description\":\"\",\"extensions\":{\"iconName\":\"icon-a_nav_mode\",\"attribute\":\"1120\"},\"name\":\"恢复出厂\",\"typeSpec\":{\"type\":\"bool\"}},{\"abilityId\":11,\"accessMode\":\"ro\",\"code\":\"battery_percentage\",\"description\":\"\",\"extensions\":{\"iconName\":\"icon-dp_battery\",\"attribute\":\"1152\"},\"name\":\"电池电量\",\"typeSpec\":{\"type\":\"value\",\"max\":100,\"min\":0,\"scale\":0,\"step\":1,\"unit\":\"%\"}},{\"abilityId\":12,\"accessMode\":\"ro\",\"code\":\"charge_state\",\"description\":\"\",\"extensions\":{\"iconName\":\"icon-battery\",\"attribute\":\"1024\"},\"name\":\"充电状态\",\"typeSpec\":{\"type\":\"bool\"}},{\"abilityId\":14,\"accessMode\":\"ro\",\"code\":\"fault\",\"description\":\"\",\"extensions\":{\"iconName\":\"icon-dp_notice\",\"scope\":\"fault\",\"attribute\":\"1024\"},\"name\":\"故障告警\",\"typeSpec\":{\"type\":\"bitmap\",\"label\":[\"food_shortages\",\"food_jam\",\"battery_low\",\"ac_power_off\"],\"maxlen\":4}},{\"abilityId\":15,\"accessMode\":\"ro\",\"code\":\"feed_report\",\"description\":\"\",\"extensions\":{\"iconName\":\"icon-dp_upload\",\"attribute\":\"1152\",\"id\":15,\"trigger\":\"direct\"},\"name\":\"喂食结果上报\",\"typeSpec\":{\"type\":\"value\",\"max\":20,\"min\":0,\"scale\":0,\"step\":1,\"unit\":\"\"}},{\"abilityId\":19,\"accessMode\":\"rw\",\"code\":\"light\",\"description\":\"\",\"extensions\":{\"iconName\":\"icon-dp_light2\",\"attribute\":\"1153\"},\"name\":\"指示灯开关\",\"typeSpec\":{\"type\":\"bool\"}},{\"abilityId\":101,\"accessMode\":\"ro\",\"code\":\"power_state\",\"description\":\"\",\"name\":\"适配器状态\",\"typeSpec\":{\"type\":\"enum\",\"range\":[\"no_adapter\",\"ac_power_off\",\"ac_power_on\"]}},{\"abilityId\":103,\"accessMode\":\"ro\",\"code\":\"mode\",\"description\":\"\",\"name\":\"工作模式\",\"typeSpec\":{\"type\":\"enum\",\"range\":[\"real_time_mode\",\"eco_mode\"]}},{\"abilityId\":112,\"accessMode\":\"rw\",\"code\":\"mfeed_speech_volume\",\"description\":\"\",\"extensions\":{\"attribute\":\"4\"},\"name\":\"音量\",\"typeSpec\":{\"type\":\"value\",\"max\":3,\"min\":0,\"scale\":0,\"step\":1,\"unit\":\"\"}},{\"abilityId\":116,\"accessMode\":\"ro\",\"code\":\"battery_capacity\",\"description\":\"\",\"name\":\"电量\",\"typeSpec\":{\"type\":\"string\",\"maxlen\":255}}]}]}"
},
"success": true,
"t": 1722009723583,
"tid": "662d97774b6811ef8c0d0631c72af00f"
}
Cat feeder. The tuya-local misslabeled the Cleverio to be a Catit cat feeder.
Log message
DPS information
Product ID
bfd0273e59494eb34esvrx
Product Name
Cleverio PF100
Information about how the device functions
Cat feeder. The tuya-local misslabeled the Cleverio to be a Catit cat feeder.