You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
To Reproduce
Adding device YINMIK Water Quality Tester fails to find use the correct config. Attempting to add the device results in showing as novadigital_sl06_lock when adding.
DPS Mapping
{"1":"TDS",
"2":"Temperature",
"7":"Battery percentage",
"10":"pH",
"11":"Conductivity Value",
"12":"ORP","101":"pH Buffer",
"102":"Hold Reading",
"103":"Back Light",
"104":"EC temp. Comp.Enabled",
"105":"EC Temp.Comp.Factor",
"106":"Buzzer Warning",
"107":"pH Max Limit",
"108":"pH Min Limit",
"109":"EC Max Limit",
"110":"EC Min Limit",
"111":"ORP Max Limit",
"112":"ORP Min Limit",
"113":"CF","114":"Humidity",
"115":"RH Max Limit",
"116":"RH Min Limit",
"117":"温度最大值",
"118":"温度最小值",
"119":"复位",
"120":"NewProg",
"121":"TDS倍率"}
Log Message
2024-08-18 14:33:16.446 DEBUG (MainThread) [custom_components.tuya_local.config_flow] Found: {'ip': '192.168.86.50', 'version': '3.3', 'id': 'ebd5eb06d4456cc061esou', 'product_id': 'u5xgcpcngk3pfxb4', 'data': {'ip': '192.168.86.50', 'gwId': 'ebd5eb06d4456cc061esou', 'active': 2, 'encrypt': True, 'productKey': 'u5xgcpcngk3pfxb4', 'version': '3.3', 'name': '', 'key': '', 'mac': '', 'id': 'ebd5eb06d4456cc061esou', 'ability': 0, 'token': '', 'wf_cfg': '', 'dev_type': 'default', 'origin': 'broadcast'}}
2024-08-18 14:33:17.427 DEBUG (MainThread) [custom_components.tuya_local.device] Refreshing device state for Test
2024-08-18 14:33:17.427 INFO (MainThread) [custom_components.tuya_local.device] Setting protocol version for Test to 3.3
2024-08-18 14:33:17.690 DEBUG (SyncWorker_3) [custom_components.tuya_local.device] Test refreshed device state: {"dps": {"1": 1320, "2": 246, "7": 1, "10": 590, "11": 2436, "12": 0, "101": "EUStandard", "103": true, "104": true, "107": 650, "108": 550, "109": 200000, "110": 0, "111": -1, "112": -1, "113": 243, "114": 51, "115": 100, "116": 0, "117": 800, "118": 0, "120": true}}
2024-08-18 14:33:17.690 DEBUG (SyncWorker_3) [custom_components.tuya_local.device] new state (incl pending): {"updated_at": 1724009597.6905396, "1": 1320, "2": 246, "7": 1, "10": 590, "11": 2436, "12": 0, "101": "EUStandard", "103": true, "104": true, "107": 650, "108": 550, "109": 200000, "110": 0, "111": -1, "112": -1, "113": 243, "114": 51, "115": 100, "116": 0, "117": 800, "118": 0, "120": true}
2024-08-18 14:33:17.699 WARNING (MainThread) [homeassistant.util.loop] Detected blocking call to walk with args ('/config/custom_components/tuya_local/devices',) inside the event loop by custom integration 'tuya_local' at custom_components/tuya_local/helpers/device_config.py, line 978: for path, dirs, files in walk(_CONFIG_DIR): (offender: /config/custom_components/tuya_local/helpers/device_config.py, line 978: for path, dirs, files in walk(_CONFIG_DIR):), please create a bug report at https://github.com/make-all/tuya-local/issues
For developers, please see https://developers.home-assistant.io/docs/asyncio_blocking_operations/#walk
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "/usr/src/homeassistant/homeassistant/__main__.py", line 223, in <module>
sys.exit(main())
File "/usr/src/homeassistant/homeassistant/__main__.py", line 209, in main
exit_code = runner.run(runtime_conf)
File "/usr/src/homeassistant/homeassistant/runner.py", line 190, in run
return loop.run_until_complete(setup_and_run_hass(runtime_config))
File "/usr/local/lib/python3.12/asyncio/base_events.py", line 674, in run_until_complete
self.run_forever()
File "/usr/local/lib/python3.12/asyncio/base_events.py", line 641, in run_forever
self._run_once()
File "/usr/local/lib/python3.12/asyncio/base_events.py", line 1990, in _run_once
handle._run()
File "/usr/local/lib/python3.12/asyncio/events.py", line 88, in _run
self._context.run(self._callback, *self._args)
File "/usr/local/lib/python3.12/site-packages/aiohttp/web_protocol.py", line 456, in _handle_request
resp = await request_handler(request)
File "/usr/local/lib/python3.12/site-packages/aiohttp/web_app.py", line 537, in _handle
resp = await handler(request)
File "/usr/local/lib/python3.12/site-packages/aiohttp/web_middlewares.py", line 114, in impl
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 92, in security_filter_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 77, in forwarded_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 26, in request_context_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 85, in ban_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 242, in auth_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/headers.py", line 32, in headers_middleware
response = await handler(request)
File "/usr/src/homeassistant/homeassistant/helpers/http.py", line 73, in handle
result = await handler(request, **request.match_info)
File "/usr/src/homeassistant/homeassistant/components/http/decorators.py", line 81, in with_admin
return await func(self, request, *args, **kwargs)
File "/usr/src/homeassistant/homeassistant/components/config/config_entries.py", line 222, in post
return await super().post(request, flow_id)
File "/usr/src/homeassistant/homeassistant/components/http/data_validator.py", line 74, in wrapper
return await method(view, request, data, *args, **kwargs)
File "/usr/src/homeassistant/homeassistant/helpers/data_entry_flow.py", line 122, in post
result = await self._flow_mgr.async_configure(flow_id, data)
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 366, in async_configure
result = await self._async_configure(flow_id, user_input)
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 413, in _async_configure
result = await self._async_handle_step(
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 516, in _async_handle_step
result: _FlowResultT = await getattr(flow, method)(user_input)
File "/config/custom_components/tuya_local/config_flow.py", line 436, in async_step_local
return await self.async_step_select_type()
File "/config/custom_components/tuya_local/config_flow.py", line 474, in async_step_select_type
async for type in self.device.async_possible_types():
File "/config/custom_components/tuya_local/device.py", line 364, in async_possible_types
for match in possible:
File "/config/custom_components/tuya_local/helpers/device_config.py", line 986, in possible_matches
for cfg in available_configs():
File "/config/custom_components/tuya_local/helpers/device_config.py", line 978, in available_configs
for path, dirs, files in walk(_CONFIG_DIR):
2024-08-18 14:33:17.703 WARNING (MainThread) [homeassistant.util.loop] Detected blocking call to scandir with args ('/config/custom_components/tuya_local/devices',) inside the event loop by custom integration 'tuya_local' at custom_components/tuya_local/helpers/device_config.py, line 978: for path, dirs, files in walk(_CONFIG_DIR): (offender: <frozen os>, line 366: ?), please create a bug report at https://github.com/make-all/tuya-local/issues
For developers, please see https://developers.home-assistant.io/docs/asyncio_blocking_operations/#scandir
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "/usr/src/homeassistant/homeassistant/__main__.py", line 223, in <module>
sys.exit(main())
File "/usr/src/homeassistant/homeassistant/__main__.py", line 209, in main
exit_code = runner.run(runtime_conf)
File "/usr/src/homeassistant/homeassistant/runner.py", line 190, in run
return loop.run_until_complete(setup_and_run_hass(runtime_config))
File "/usr/local/lib/python3.12/asyncio/base_events.py", line 674, in run_until_complete
self.run_forever()
File "/usr/local/lib/python3.12/asyncio/base_events.py", line 641, in run_forever
self._run_once()
File "/usr/local/lib/python3.12/asyncio/base_events.py", line 1990, in _run_once
handle._run()
File "/usr/local/lib/python3.12/asyncio/events.py", line 88, in _run
self._context.run(self._callback, *self._args)
File "/usr/local/lib/python3.12/site-packages/aiohttp/web_protocol.py", line 456, in _handle_request
resp = await request_handler(request)
File "/usr/local/lib/python3.12/site-packages/aiohttp/web_app.py", line 537, in _handle
resp = await handler(request)
File "/usr/local/lib/python3.12/site-packages/aiohttp/web_middlewares.py", line 114, in impl
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 92, in security_filter_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 77, in forwarded_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 26, in request_context_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 85, in ban_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 242, in auth_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/headers.py", line 32, in headers_middleware
response = await handler(request)
File "/usr/src/homeassistant/homeassistant/helpers/http.py", line 73, in handle
result = await handler(request, **request.match_info)
File "/usr/src/homeassistant/homeassistant/components/http/decorators.py", line 81, in with_admin
return await func(self, request, *args, **kwargs)
File "/usr/src/homeassistant/homeassistant/components/config/config_entries.py", line 222, in post
return await super().post(request, flow_id)
File "/usr/src/homeassistant/homeassistant/components/http/data_validator.py", line 74, in wrapper
return await method(view, request, data, *args, **kwargs)
File "/usr/src/homeassistant/homeassistant/helpers/data_entry_flow.py", line 122, in post
result = await self._flow_mgr.async_configure(flow_id, data)
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 366, in async_configure
result = await self._async_configure(flow_id, user_input)
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 413, in _async_configure
result = await self._async_handle_step(
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 516, in _async_handle_step
result: _FlowResultT = await getattr(flow, method)(user_input)
File "/config/custom_components/tuya_local/config_flow.py", line 436, in async_step_local
return await self.async_step_select_type()
File "/config/custom_components/tuya_local/config_flow.py", line 474, in async_step_select_type
async for type in self.device.async_possible_types():
File "/config/custom_components/tuya_local/device.py", line 364, in async_possible_types
for match in possible:
File "/config/custom_components/tuya_local/helpers/device_config.py", line 986, in possible_matches
for cfg in available_configs():
File "/config/custom_components/tuya_local/helpers/device_config.py", line 978, in available_configs
for path, dirs, files in walk(_CONFIG_DIR):
2024-08-18 14:33:17.710 WARNING (MainThread) [homeassistant.util.loop] Detected blocking call to open with args ('/config/custom_components/tuya_local/devices/9in1_airquality_monitor.yaml',) inside the event loop by custom integration 'tuya_local' at custom_components/tuya_local/helpers/device_config.py, line 101: self._config = load_yaml(filename) (offender: /usr/src/homeassistant/homeassistant/util/yaml/loader.py, line 226: with open(fname, encoding="utf-8") as conf_file:), please create a bug report at https://github.com/make-all/tuya-local/issues
For developers, please see https://developers.home-assistant.io/docs/asyncio_blocking_operations/#open
Traceback (most recent call last):
File "<frozen runpy>", line 198, in _run_module_as_main
File "<frozen runpy>", line 88, in _run_code
File "/usr/src/homeassistant/homeassistant/__main__.py", line 223, in <module>
sys.exit(main())
File "/usr/src/homeassistant/homeassistant/__main__.py", line 209, in main
exit_code = runner.run(runtime_conf)
File "/usr/src/homeassistant/homeassistant/runner.py", line 190, in run
return loop.run_until_complete(setup_and_run_hass(runtime_config))
File "/usr/local/lib/python3.12/asyncio/base_events.py", line 674, in run_until_complete
self.run_forever()
File "/usr/local/lib/python3.12/asyncio/base_events.py", line 641, in run_forever
self._run_once()
File "/usr/local/lib/python3.12/asyncio/base_events.py", line 1990, in _run_once
handle._run()
File "/usr/local/lib/python3.12/asyncio/events.py", line 88, in _run
self._context.run(self._callback, *self._args)
File "/usr/local/lib/python3.12/site-packages/aiohttp/web_protocol.py", line 456, in _handle_request
resp = await request_handler(request)
File "/usr/local/lib/python3.12/site-packages/aiohttp/web_app.py", line 537, in _handle
resp = await handler(request)
File "/usr/local/lib/python3.12/site-packages/aiohttp/web_middlewares.py", line 114, in impl
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/security_filter.py", line 92, in security_filter_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/forwarded.py", line 77, in forwarded_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/request_context.py", line 26, in request_context_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/ban.py", line 85, in ban_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/auth.py", line 242, in auth_middleware
return await handler(request)
File "/usr/src/homeassistant/homeassistant/components/http/headers.py", line 32, in headers_middleware
response = await handler(request)
File "/usr/src/homeassistant/homeassistant/helpers/http.py", line 73, in handle
result = await handler(request, **request.match_info)
File "/usr/src/homeassistant/homeassistant/components/http/decorators.py", line 81, in with_admin
return await func(self, request, *args, **kwargs)
File "/usr/src/homeassistant/homeassistant/components/config/config_entries.py", line 222, in post
return await super().post(request, flow_id)
File "/usr/src/homeassistant/homeassistant/components/http/data_validator.py", line 74, in wrapper
return await method(view, request, data, *args, **kwargs)
File "/usr/src/homeassistant/homeassistant/helpers/data_entry_flow.py", line 122, in post
result = await self._flow_mgr.async_configure(flow_id, data)
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 366, in async_configure
result = await self._async_configure(flow_id, user_input)
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 413, in _async_configure
result = await self._async_handle_step(
File "/usr/src/homeassistant/homeassistant/data_entry_flow.py", line 516, in _async_handle_step
result: _FlowResultT = await getattr(flow, method)(user_input)
File "/config/custom_components/tuya_local/config_flow.py", line 436, in async_step_local
return await self.async_step_select_type()
File "/config/custom_components/tuya_local/config_flow.py", line 474, in async_step_select_type
async for type in self.device.async_possible_types():
File "/config/custom_components/tuya_local/device.py", line 364, in async_possible_types
for match in possible:
File "/config/custom_components/tuya_local/helpers/device_config.py", line 987, in possible_matches
parsed = TuyaDeviceConfig(cfg)
File "/config/custom_components/tuya_local/helpers/device_config.py", line 101, in __init__
self._config = load_yaml(filename)
2024-08-18 14:33:22.130 DEBUG (MainThread) [custom_components.tuya_local.helpers.device_config] Loaded device config yinmik_waterquality_tester.yaml
2024-08-18 14:33:22.131 DEBUG (MainThread) [custom_components.tuya_local.helpers.device_config] Not match for Water quality monitor, missing required DPs: [{'102': 'bool'}, {'106': 'bool'}]
2024-08-18 14:33:22.285 WARNING (MainThread) [custom_components.tuya_local.config_flow] Device matches novadigital_sl06_lock with quality of 14%. DPS: {"updated_at": 1724009597.6905396, "1": 1320, "2": 246, "7": 1, "10": 590, "11": 2436, "12": 0, "101": "EUStandard", "103": true, "104": true, "107": 650, "108": 550, "109": 200000, "110": 0, "111": -1, "112": -1, "113": 243, "114": 51, "115": 100, "116": 0, "117": 800, "118": 0, "120": true}
2024-08-18 14:33:22.286 WARNING (MainThread) [custom_components.tuya_local.config_flow] Include the previous log message with any new device request to https://github.com/make-all/tuya-local/issues/
User Interface
Choose the type of device
Choose the type that matches your device
Device type:
co2_box
novadigital_sl06_lock
th16_temp_humidity_sensor
zigbee_zn373186_temphumid_sensor
zigbee_zth08ztu_temphumid_sensor
The text was updated successfully, but these errors were encountered:
To Reproduce
Adding device YINMIK Water Quality Tester fails to find use the correct config. Attempting to add the device results in showing as novadigital_sl06_lock when adding.
Expected behavior
To be able to select and use YINMIK Water Quality Tester. Previously opened issue here:
#880 (comment)
home-assistant_tuya_local_2024-08-18T19-33-26.827Z.log
DPS Mapping
{"1":"TDS",
"2":"Temperature",
"7":"Battery percentage",
"10":"pH",
"11":"Conductivity Value",
"12":"ORP","101":"pH Buffer",
"102":"Hold Reading",
"103":"Back Light",
"104":"EC temp. Comp.Enabled",
"105":"EC Temp.Comp.Factor",
"106":"Buzzer Warning",
"107":"pH Max Limit",
"108":"pH Min Limit",
"109":"EC Max Limit",
"110":"EC Min Limit",
"111":"ORP Max Limit",
"112":"ORP Min Limit",
"113":"CF","114":"Humidity",
"115":"RH Max Limit",
"116":"RH Min Limit",
"117":"温度最大值",
"118":"温度最小值",
"119":"复位",
"120":"NewProg",
"121":"TDS倍率"}
Log Message
User Interface
The text was updated successfully, but these errors were encountered: