Skip to content

Tuya / Smart Life

cloud-then-localProven against a real device on 2026-09-03by ALYT

Smart Life switches, plugs and bulbs, taken local: Tuya’s cloud is used once, to fetch the keys, and never again.

adds switches and lights.

Method: form. From a free Tuya IoT Platform project (iot.tuya.com) that the Smart Life account is linked to: its data centre, Access ID and Access Secret. ALYT fetches each device’s local key once and keeps only those. No password is asked.

FieldKindRequired
Data centre (region)selectyes
Access ID (accessId)textyes
Access Secret (accessSecret)password, secretyes

Yes: “Look for Tuya devices”.

What stops working when it is disconnected

Section titled “What stops working when it is disconnected”

The things it brought stop answering until it is connected again.

The same object the console and the phone render from, served for a program at /connectors/tuya.json.

{
"source": "built-in",
"visibility": "public",
"listed": true,
"version": "1.0.0",
"docsUrl": "https://developers.alyt.com/connectors/tuya",
"kind": "TUYA",
"name": "Tuya / Smart Life",
"icon": "plug",
"promise": "Smart Life switches, plugs and bulbs, taken local: Tuya's cloud is used once, to fetch the keys, and never again.",
"connectivity": "cloud-then-local",
"brings": [
"switch",
"light"
],
"connect": {
"method": "form",
"help": "From a free Tuya IoT Platform project (iot.tuya.com) that the Smart Life account is linked to: its data centre, Access ID and Access Secret. ALYT fetches each device's local key once and keeps only those. No password is asked.",
"fields": [
{
"key": "region",
"label": "Data centre",
"kind": "select",
"secret": false,
"required": true,
"options": [
{
"value": "us",
"label": "Western America"
},
{
"value": "us-e",
"label": "Eastern America"
},
{
"value": "eu",
"label": "Central Europe"
},
{
"value": "eu-w",
"label": "Western Europe"
},
{
"value": "in",
"label": "India"
},
{
"value": "cn",
"label": "China"
}
]
},
{
"key": "accessId",
"label": "Access ID",
"kind": "text",
"secret": false,
"required": true,
"help": "On the project's Overview page."
},
{
"key": "accessSecret",
"label": "Access Secret",
"kind": "password",
"secret": true,
"required": true
}
]
},
"discovery": {
"verb": "Look for Tuya devices"
},
"disconnect": {
"consequence": "{count} {things} stop answering until it is connected again."
},
"author": {
"kind": "alyt",
"name": "ALYT",
"url": "https://alyt.com"
},
"verification": {
"level": "proven",
"at": "2026-09-03T22:20:00.000Z"
}
}

Tuya / Smart Life connects Smart Life switches, plugs, and bulbs, using Tuya’s cloud once to fetch each device’s local key and then staying local on the home network. A household keeps working when the cloud is down. The connector uses a form with the Smart Life account’s Tuya IoT Platform project details, and no password is asked. After it is connected, ALYT discovers devices on the LAN, reads state, sends controls, and listens for device changes.

Create a Tuya IoT Platform project of type Smart Home that matches the Smart Life account’s data centre, then link the Smart Life app account to that project. In the connect form, enter:

  • region for the data centre
  • accessId
  • accessSecret

The form asks for the project details, not the Smart Life password. ALYT uses those values once to fetch each device’s local key, then keeps the device keys and identifiers for local use only. If the credentials are wrong, the connection is rejected. If the project has no linked devices, it is rejected with a message that says what still needs to be linked.

This connector brings switch and light.

For lights, the exposed controls depend on what the bulb reports. A bulb can expose dimming, warmth, and colour where supported. Switches expose on and off only. State comes from the device itself over the local connection, and control writes go back to the device over the same local path.

Changes also flow from the device to ALYT. If the Smart Life app, a wall switch, or the device itself changes state, the update is pushed into the platform so the household sees it at once.

Use the discovery action that says “Look for Tuya devices”. It sweeps the subnet for Tuya devices and tries known local keys against hosts that answer on the local Tuya port. Devices on another VLAN are not found. If a device changes address, it is found again on the next discovery run; between discoveries, a refresh can report it unreachable.

This connector keeps one local session per device open. That matters for Tuya devices, because they accept one local session at a time. The platform holds that session so the house keeps working locally even if the cloud is unavailable, and the Smart Life app can still fall back to Tuya’s cloud when needed.

  • It does not use the Smart Life password.
  • It does not keep relying on Tuya’s cloud after setup.
  • It does not find devices on another subnet or VLAN.
  • It does not expose extra gangs on multi-gang switches as separate switches yet; the other gangs remain visible only in the endpoint’s capabilities data.
  • It does not open more than one local session per device.

Check these first:

  • The region matches the Tuya IoT project’s data centre.
  • The Smart Life app account is linked to the Tuya IoT project.
  • The project has at least one linked device.
  • The Access ID and Access Secret are copied from the project’s Overview page.
  • The device is on the same subnet as ALYT.
  • The device is not being held exclusively by another local client.

If discovery finds fewer devices than expected, run it again after checking the network and the Tuya project link. If a device shows as reachable in the Smart Life app but not in ALYT, the most common causes are a subnet mismatch, a missing project link, or a device that has moved to a new address and needs rediscovery.

Last updated