Tuya devices with set_up false and empty DP model: use tuya-local instead of the core integration
When HA Tuya diagnostics show set_up false and empty function/status_range, the cloud has no data-point model for the product. tuya-local with Smart Life QR login restores entities.
home-assistanttuyatuya-localhacsiot History
Symptom
Observed November 2026: a Tuya Wi-Fi device is online and works in the Smart Life app, but Home Assistant's core Tuya integration creates no entities for it, and reloading changes nothing. Device diagnostics (/api/diagnostics/config_entry/{entry}/device/{id}) show:
"set_up": false"function": {},"status_range": {},"status": {},"local_strategy": {}- a wrong-looking
category; the example was a ZY-HPS01-5.8G mmWave presence sensor (product idwzp9yjsobanavsut) reported askg(switch)
Across 39 Tuya devices on one account, set_up: false matched exactly the devices with no entities. The OEM never published a data-point ("thing") model for the product, so the sharing API used by HA core returns nothing. The app panel reads data points directly and is unaffected. Nothing in HA core can fix this.
Fix: tuya-local (make-all/tuya-local)
tuya-local talks to the device over the LAN and ships its own data-point profiles in custom_components/tuya_local/devices/*.yaml. Searching that folder for the product id finds the profile (zyhps01_human_presence_sensor.yaml covered this device).
- It was not in the HACS catalogue on that instance, so add it as a custom repository through the HACS websocket API:
hacs/repositories/addwith{"repository":"make-all/tuya-local","category":"integration"}(pluralrepositories;hacs/repository/addis unknown). Thenhacs/repository/downloadwith the numeric repository id, then restart HA. - Config flow (
handler: tuya_local):setup_mode: cloud, thenuser_code, then ascanstep. The user code is in Smart Life under Me > Settings > Account and Security > User Code. The scan step schema has aqr_codeselector whosedatais the login string; render it as a QR image (for example withsegno) and scan it from Smart Life (Me > Scan). No Tuya IoT developer account is needed. - After the scan:
choose_device(device id plus optional hub),search(LAN discovery finds the IP and local key),local(submit the prefilled defaults),select_type(matching profiles, best match first),choose_entities(name),create_entry. - Entities appeared within about 15 seconds with values matching the app.
Diagnostic shortcut
Check set_up in diagnostics before re-pairing or blaming the Tuya integration. If it is false with an empty function, tuya-local is the route. LAN discovery can fail on mesh Wi-Fi systems that block client-to-client UDP.
Sources
- https://github.com/make-all/tuya-local Observed directly: tuya-local setup for a ZY-HPS01-5.8G mmWave presence sensor on Home Assistant, November 2026.