Open doli11 opened 5 months ago
Cool, I have a jtmspro with another deviceID, it says bfb4bcebctlqoztj
but that can't be correct as it is 16 characters long, and all I see is 8
Will try to see if I can modify and use your code
Cool, I have a jtmspro with another deviceID, it says
bfb4bcebctlqoztj
but that can't be correct as it is 16 characters long, and all I see is 8 Will try to see if I can modify and use your code
device ID != product ID ;-) you've looked up the wrong ID
i have also the lock i love to see the support on the integration soon
{
"home_assistant": {
"installation_type": "Home Assistant OS",
"version": "2024.1.0",
"dev": false,
"hassio": true,
"virtualenv": false,
"python_version": "3.11.6",
"docker": true,
"arch": "aarch64",
"timezone": "Europe/Amsterdam",
"os_name": "Linux",
"os_version": "6.1.63-haos-raspi",
"supervisor": "2023.12.0",
"host_os": "Home Assistant OS 11.3",
"docker_version": "24.0.7",
"chassis": "embedded",
"run_as_root": true
},
"custom_components": {
"browser_mod": {
"version": "2.3.0",
"requirements": []
},
"hass_agent_mediaplayer": {
"version": "2022.5.6",
"requirements": []
},
"mass": {
"version": "2023.12.0",
"requirements": [
"music-assistant==2.0.0b79"
]
},
"watchman": {
"version": "0.5.1",
"requirements": [
"prettytable==3.0.0"
]
},
"battery_notes": {
"version": "1.3.5",
"requirements": []
},
"hass_agent_notifier": {
"version": "2022.10.25.1",
"requirements": []
},
"zoom": {
"version": "v0.8.5",
"requirements": []
},
"google_home": {
"version": "1.11.0",
"requirements": [
"glocaltokens==0.7.0"
]
},
"dash_cast": {
"version": "1.0.0",
"requirements": []
},
"tuya_ble": {
"version": "0.1.8",
"requirements": [
"tuya-iot-py-sdk==0.6.6",
"pycountry==22.3.5"
]
},
"sonoff": {
"version": "3.5.4",
"requirements": [
"pycryptodome>=3.6.6"
]
},
"trakt_tv": {
"version": "0.8.6",
"requirements": []
},
"uptime_kuma": {
"version": "2.1.0",
"requirements": [
"pyuptimekuma-hass"
]
},
"dwains_dashboard": {
"version": "3.6.0",
"requirements": []
},
"thermal_comfort": {
"version": "2.2.1",
"requirements": []
},
"webrtc": {
"version": "v3.5.0",
"requirements": []
},
"youtube": {
"version": "0.9.1",
"requirements": []
},
"afvalwijzer": {
"version": "2023.12.02",
"requirements": []
},
"samsungtv_smart": {
"version": "0.13.1",
"requirements": [
"websocket-client!=1.4.0,>=0.58.0",
"wakeonlan>=2.0.0",
"aiofiles>=0.8.0",
"casttube>=0.2.1"
]
},
"smartlife": {
"version": "0.1.0",
"requirements": [
"tuya-device-sharing-sdk==0.1.9"
]
},
"authenticated": {
"version": "21.9.0",
"requirements": []
},
"wyzeapi": {
"version": "0.1.23",
"requirements": [
"wyzeapy==0.5.20"
]
},
"hacs": {
"version": "1.33.0",
"requirements": [
"aiogithubapi>=22.10.1"
]
},
"spotcast": {
"version": "v3.6.30",
"requirements": []
},
"entity_controller": {
"version": "9.6.1",
"requirements": [
"transitions==0.8.8"
]
},
"proxmoxve": {
"version": "3.2.2",
"requirements": [
"proxmoxer==2.0.1"
]
},
"multiscrape": {
"version": "6.5.0",
"requirements": [
"lxml>=4.9.1",
"beautifulsoup4>=4.12.2"
]
},
"fontawesome": {
"version": "2.2.1",
"requirements": []
}
},
"integration_manifest": {
"domain": "smartlife",
"name": "smartlife",
"codeowners": [
"@smartlife"
],
"config_flow": true,
"dependencies": [
"ffmpeg"
],
"dhcp": [
{
"macaddress": "105A17*"
},
{
"macaddress": "10D561*"
},
{
"macaddress": "1869D8*"
},
{
"macaddress": "381F8D*"
},
{
"macaddress": "508A06*"
},
{
"macaddress": "68572D*"
},
{
"macaddress": "708976*"
},
{
"macaddress": "7CF666*"
},
{
"macaddress": "84E342*"
},
{
"macaddress": "D4A651*"
},
{
"macaddress": "D81F12*"
}
],
"documentation": "https://www.home-assistant.io/integrations/smartlife",
"integration_type": "hub",
"iot_class": "cloud_push",
"version": "0.1.0",
"requirements": [
"tuya-device-sharing-sdk==0.1.9"
],
"is_built_in": false
},
"data": {
"endpoint": "https://apigw.tuyaeu.com",
"terminal_id": "1702857532161Aaj0Es",
"mqtt_connected": true,
"disabled_by": null,
"disabled_polling": false,
"id": "bf9ac3xcno2cglua",
"name": "S1-TY-BLE-PRO",
"category": "jtmspro",
"product_id": "xqeob8h6",
"product_name": "S1-TY-BLE-PRO",
"online": false,
"sub": false,
"time_zone": "+01:00",
"active_time": "2024-01-04T18:01:44+00:00",
"create_time": "2024-01-04T18:01:44+00:00",
"update_time": "2024-01-04T18:01:44+00:00",
"function": {
"unlock_method_create": {
"type": "Raw",
"value": {}
},
"unlock_method_delete": {
"type": "Raw",
"value": {}
},
"unlock_method_modify": {
"type": "Raw",
"value": {}
},
"lock_record": {
"type": "Raw",
"value": {}
},
"message": {
"type": "Boolean",
"value": {}
},
"automatic_lock": {
"type": "Boolean",
"value": {}
},
"unlock_switch": {
"type": "Enum",
"value": {
"range": [
"single_unlock",
"finger_card"
]
}
},
"auto_lock_time": {
"type": "Integer",
"value": {
"min": 1,
"max": 1800,
"scale": 0,
"step": 1
}
},
"rtc_lock": {
"type": "Boolean",
"value": {}
},
"manual_lock": {
"type": "Boolean",
"value": {}
},
"synch_method": {
"type": "Raw",
"value": {}
},
"remote_no_dp_key": {
"type": "Raw",
"value": {}
},
"record": {
"type": "Raw",
"value": {}
},
"check_code_set": {
"type": "Raw",
"value": {}
},
"ble_unlock_check": {
"type": "Raw",
"value": {}
},
"remote_pd_setkey_check": {
"type": "Raw",
"value": {}
},
"unlock_ble_ibeacon": {
"type": "Integer",
"value": {
"min": 0,
"max": 999,
"scale": 0,
"step": 1
}
},
"ibeacon_scan_mode": {
"type": "Enum",
"value": {
"range": [
"always",
"5min",
"10min",
"20min",
"40min",
"60min",
"90min",
"120min"
]
}
},
"rssi_sensitivity_level": {
"type": "Enum",
"value": {
"range": [
"inactive",
"90db",
"80db",
"70db",
"60db",
"50db",
"40db",
"30db",
"20db"
]
}
},
"ibeacon_switch": {
"type": "Boolean",
"value": {}
}
},
"status_range": {
"unlock_method_create": {
"type": "Raw",
"value": {}
},
"unlock_method_delete": {
"type": "Raw",
"value": {}
},
"unlock_method_modify": {
"type": "Raw",
"value": {}
},
"residual_electricity": {
"type": "Integer",
"value": {
"min": 0,
"max": 100,
"scale": 0,
"step": 1
}
},
"unlock_fingerprint": {
"type": "Integer",
"value": {
"min": 0,
"max": 999,
"scale": 0,
"step": 1
}
},
"unlock_card": {
"type": "Integer",
"value": {
"min": 0,
"max": 999,
"scale": 0,
"step": 1
}
},
"unlock_key": {
"type": "Integer",
"value": {
"min": 0,
"max": 999,
"scale": 0,
"step": 1
}
},
"unlock_ble": {
"type": "Integer",
"value": {
"min": 0,
"max": 999,
"scale": 0,
"step": 1
}
},
"lock_record": {
"type": "Raw",
"value": {}
},
"alarm_lock": {
"type": "Enum",
"value": {
"range": [
"wrong_finger",
"wrong_password",
"wrong_card",
"wrong_face",
"tongue_bad",
"too_hot",
"unclosed_time",
"tongue_not_out",
"pry",
"key_in",
"low_battery",
"power_off",
"shock",
"defense"
]
}
},
"hijack": {
"type": "Boolean",
"value": {}
},
"doorbell": {
"type": "Boolean",
"value": {}
},
"message": {
"type": "Boolean",
"value": {}
},
"automatic_lock": {
"type": "Boolean",
"value": {}
},
"unlock_switch": {
"type": "Enum",
"value": {
"range": [
"single_unlock",
"finger_card"
]
}
},
"auto_lock_time": {
"type": "Integer",
"value": {
"min": 1,
"max": 1800,
"scale": 0,
"step": 1
}
},
"closed_opened": {
"type": "Enum",
"value": {
"range": [
"unknown",
"open",
"closed"
]
}
},
"rtc_lock": {
"type": "Boolean",
"value": {}
},
"manual_lock": {
"type": "Boolean",
"value": {}
},
"lock_motor_state": {
"type": "Boolean",
"value": {}
},
"synch_method": {
"type": "Raw",
"value": {}
},
"remote_no_dp_key": {
"type": "Raw",
"value": {}
},
"unlock_phone_remote": {
"type": "Integer",
"value": {
"min": 0,
"max": 999,
"scale": 0,
"step": 1
}
},
"unlock_voice_remote": {
"type": "Integer",
"value": {
"min": 0,
"max": 999,
"scale": 0,
"step": 1
}
},
"record": {
"type": "Raw",
"value": {}
},
"check_code_set": {
"type": "Raw",
"value": {}
},
"ble_unlock_check": {
"type": "Raw",
"value": {}
},
"unlock_record_check": {
"type": "Raw",
"value": {}
},
"remote_pd_setkey_check": {
"type": "Raw",
"value": {}
},
"unlock_double_kit": {
"type": "Raw",
"value": {}
},
"unlock_ble_ibeacon": {
"type": "Integer",
"value": {
"min": 0,
"max": 999,
"scale": 0,
"step": 1
}
},
"ibeacon_scan_mode": {
"type": "Enum",
"value": {
"range": [
"always",
"5min",
"10min",
"20min",
"40min",
"60min",
"90min",
"120min"
]
}
},
"rssi_sensitivity_level": {
"type": "Enum",
"value": {
"range": [
"inactive",
"90db",
"80db",
"70db",
"60db",
"50db",
"40db",
"30db",
"20db"
]
}
},
"ibeacon_switch": {
"type": "Boolean",
"value": {}
}
},
"status": {
"unlock_method_create": "Av8AAgUAAA==",
"unlock_method_delete": "",
"unlock_method_modify": "",
"residual_electricity": 100,
"unlock_fingerprint": 1,
"unlock_card": 5,
"unlock_key": 0,
"unlock_ble": 1,
"lock_record": "",
"alarm_lock": "wrong_finger",
"hijack": false,
"doorbell": false,
"message": false,
"automatic_lock": true,
"unlock_switch": "single_unlock",
"auto_lock_time": 10,
"closed_opened": "unknown",
"rtc_lock": false,
"manual_lock": true,
"lock_motor_state": false,
"synch_method": "AQE=",
"remote_no_dp_key": "",
"unlock_phone_remote": 0,
"unlock_voice_remote": 0,
"record": "AAEB",
"check_code_set": "AAH//wAAAAAAAAAAAP//AA==",
"ble_unlock_check": "AAH//zI3NTQyMDM5AWWXO0cAAA==",
"unlock_record_check": "",
"remote_pd_setkey_check": "",
"unlock_double_kit": "",
"unlock_ble_ibeacon": 0,
"ibeacon_scan_mode": "always",
"rssi_sensitivity_level": "inactive",
"ibeacon_switch": false
},
"home_assistant": {
"name": "S1-TY-BLE-PRO",
"name_by_user": null,
"disabled": false,
"disabled_by": null,
"entities": []
},
"set_up": false,
"support_local": true
}
}
Hello,
I also have this device (Smart Lock S1-TY-BLE-PRO from tuya) and I hope it will be soon compatible with home assistant.
Thanks.
i like that too, nice to have the lock on HA soon :)
I also bought this lock and it would be fantastic if we could also add it to Home Assistant via the Tuya BLE integration. I would like to help realize this if desired, I don't know to what extent there is room for this with the developer? Here is also the logging from my side.
Device details:
{ "active_time": 1706127697, "biz_type": 0, "category": "jtmspro", "create_time": 1706046372, "icon": "smart/icon/ay15637661355438qua2/f63a35cd47c91c90c5369b8bd0afacbc.png", "id": "bfcd55dkubmlf6qy", "ip": "", "lat": "", "local_key": "", "lon": "", "model": "S1", "name": "S1-TY-BLE-PRO", "online": false, "owner_id": "24130268", "product_id": "xqeob8h6", "product_name": "S1-TY-BLE-PRO", "status": [ { "code": "unlock_method_create", "value": "" }, { "code": "unlock_method_delete", "value": "" }, { "code": "unlock_method_modify", "value": "" }, { "code": "residual_electricity", "value": 100 }, { "code": "unlock_fingerprint", "value": 0 }, { "code": "unlock_card", "value": 0 }, { "code": "unlock_key", "value": 0 }, { "code": "unlock_ble", "value": 1 }, { "code": "lock_record", "value": "" }, { "code": "alarm_lock", "value": "wrong_finger" }, { "code": "hijack", "value": false }, { "code": "doorbell", "value": false }, { "code": "message", "value": false }, { "code": "automatic_lock", "value": true }, { "code": "unlock_switch", "value": "single_unlock" }, { "code": "auto_lock_time", "value": 5 }, { "code": "closed_opened", "value": "unknown" }, { "code": "rtc_lock", "value": false }, { "code": "manual_lock", "value": true }, { "code": "lock_motor_state", "value": false }, { "code": "synch_method", "value": "" }, { "code": "remote_no_dp_key", "value": "" }, { "code": "unlock_phone_remote", "value": 0 }, { "code": "unlock_voice_remote", "value": 0 }, { "code": "record", "value": "" }, { "code": "check_code_set", "value": "AAH//wAAAAAAAAAAAP//AA==" }, { "code": "ble_unlock_check", "value": "AAH//zM5MzQ2MDUwAWWxcVgAAA==" }, { "code": "unlock_record_check", "value": "" }, { "code": "remote_pd_setkey_check", "value": "" }, { "code": "unlock_double_kit", "value": "" }, { "code": "unlock_ble_ibeacon", "value": 0 }, { "code": "ibeacon_scan_mode", "value": "always" }, { "code": "rssi_sensitivity_level", "value": "inactive" }, { "code": "ibeacon_switch", "value": false } ], "sub": false, "time_zone": "+01:00", "uid": "***", "update_time": 1706127697, "uuid": "uuid10ca70954282" },
EXTRA INFORMATION FROM LOGGING:
[["tuya","bfcd55dkubmlf6qy"]],"manufacturer":"Tuya","model":"S1-TY-BLE-PRO (unsupported)","name_by_user":null,"name":"S1-TY-BLE-PRO","serial_number":null,"sw_version":null,"via_device_id":null},{"area_id":null,"configuration_url":null,"config_entries":["f96c4ba92a366865721ee17a181bcb32"],"connections":[["bluetooth","DC:23:4F:80:B1:97"]],"disabled_by":null,"entry_type":null,"hw_version":"","id":"99c55e6c230d0d59a894035469432121","identifiers":[["tuya_ble","DC:23:4F:80:B1:97"]],"manufacturer":"Tuya","model":"S1 (xqeob8h6)","name_by_user":null,"name":"S1-TY-BLE-PRO 80B197","serial_number":null,"sw_version":" (protocol )","via_device_id":null},{"area_id":null,"configuration_url":"homeassistant://hacs","config_entries":["32ea0678147fea30cb788c001d6b2911"],"connections":[],"disabled_by":null,"entry_type":"service","hw_version":null,"id":"4136ab4c9916c11e197cf6560e99c5b1","identifiers":
Here is some additional log information from Home Assistant:
Logger: homeassistant.config_entries Source: config_entries.py:561 First occurred: 08:42:51 (24 occurrences) Last logged: 11:11:38
Error unloading entry S1-TY-BLE-PRO 80B197 for sensor Error unloading entry S1-TY-BLE-PRO 80B197 for binary_sensor Error unloading entry S1-TY-BLE-PRO 80B197 for select Error unloading entry S1-TY-BLE-PRO 80B197 for switch Error unloading entry S1-TY-BLE-PRO 80B197 for text Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/config_entries.py", line 561, in async_unload result = await component.async_unload_entry(hass, self) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/components/button/init.py", line 77, in async_unload_entry return await component.async_unload_entry(entry) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/src/homeassistant/homeassistant/helpers/entity_component.py", line 203, in async_unload_entry raise ValueError("Config entry was never loaded!") ValueError: Config entry was never loaded!
Hey, thanks for your efforts. I've tried to modify some files to make the smart lock working in HA based on the pull request #55 with little success (sensor entities working but no unlock function). Maybe you can add support for the lock or guide me in the right direction :)
With DP71 the lock seems to do something (I hear the motor spinning) but it won't unlock.
I've extracted some data from the cloud:
Device details:
Here I've unlocked the device two times with fingerprint:
I don't know if it's helpful but here is also the instruction set: