Tuya Smart Home
Control any Tuya/Smart Life device via cloud API or local network.
Dependencies
CODEBLOCK0
Configuration
Two control modes available:
Cloud Mode
Requires Tuya IoT Platform credentials from https://iot.tuya.com:
- -
ACCESS_ID — from Cloud Project - INLINECODE1 — from Cloud Project
- INLINECODE2 — cn (China), us (Americas/SEA), eu (Europe), in (India)
Local Mode (Recommended)
Requires device info (obtain via cloud API first):
- -
DEVICE_ID — device identifier - INLINECODE4 — device encryption key
- INLINECODE5 — device local IP address
- INLINECODE6 — protocol version (usually 3.4)
Quick Start
Scan for devices on local network
CODEBLOCK1
Get device info (cloud)
CODEBLOCK2
Query device status
CODEBLOCK3
Send command
CODEBLOCK4
Common Device Commands
| Device | Code | Values | Description |
|---|
| Pet Feeder | manualfeed | 1-12 | Feed N portions |
| Pet Feeder |
quickfeed | true | Quick feed |
| Pet Feeder | light | true/false | Night light |
| Light | switch_led | true/false | On/off |
| Light | bright_value | 10-1000 | Brightness |
| Light | temp_value | 0-1000 | Color temperature |
| Plug | switch_1 | true/false | On/off |
| Curtain | control | open/stop/close | Movement |
| Curtain | percent_control | 0-100 | Position % |
China Region Note
China data center (openapi.tuyacn.com) blocks non-China IPs by default.
Solutions:
- 1. Add your IP to whitelist in Tuya IoT Platform → Project → IP Whitelist
- Use local mode (bypasses cloud entirely, recommended)
API Reference
For detailed API documentation, DP code tables, and setup guide, see references/tuya_api.md.
Tuya Smart Home
通过云API或本地网络控制任何涂鸦/智能生活设备。
依赖项
bash
pip3 install tinytuya tuya-connector-python
配置
提供两种控制模式:
云模式
需要从 https://iot.tuya.com 获取涂鸦IoT平台凭证:
- - ACCESSID — 来自云项目
- ACCESSSECRET — 来自云项目
- REGION — cn(中国)、us(美洲/东南亚)、eu(欧洲)、in(印度)
本地模式(推荐)
需要设备信息(先通过云API获取):
- - DEVICEID — 设备标识符
- LOCALKEY — 设备加密密钥
- IP — 设备本地IP地址
- VERSION — 协议版本(通常为3.4)
快速开始
扫描本地网络中的设备
bash
python3 scripts/tuya_scan.py
获取设备信息(云)
bash
python3 scripts/tuya_control.py --mode cloud --action info \
--device-id DEVICE_ID \
--access-id ACCESSID --access-secret ACCESSSECRET --region cn
查询设备状态
bash
云模式
python3 scripts/tuya_control.py --mode cloud --action status \
--device-id DEVICE_ID \
--access-id ACCESS
ID --access-secret ACCESSSECRET --region cn
本地模式
python3 scripts/tuya_control.py --mode local --action status \
--device-id DEVICE_ID --ip IP --local-key KEY
发送命令
bash
云模式 — 喂宠物1份
python3 scripts/tuya_control.py --mode cloud --action send \
--device-id DEVICE
ID --code manualfeed --value 1 \
--access-id ACCESS
ID --access-secret ACCESSSECRET --region cn
本地模式 — 喂宠物1份
python3 scripts/tuya_control.py --mode local --action send \
--device-id DEVICE_ID --ip IP --local-key KEY \
--dp-id 3 --value 1
打开灯
python3 scripts/tuya_control.py --mode cloud --action send \
--device-id DEVICE
ID --code switchled --value true \
--access-id ACCESS
ID --access-secret ACCESSSECRET --region cn
打开窗帘
python3 scripts/tuya_control.py --mode cloud --action send \
--device-id DEVICE_ID --code control --value open \
--access-id ACCESS
ID --access-secret ACCESSSECRET --region cn
常见设备命令
| 设备 | 代码 | 值 | 描述 |
|---|
| 宠物喂食器 | manualfeed | 1-12 | 喂食N份 |
| 宠物喂食器 |
quickfeed | true | 快速喂食 |
| 宠物喂食器 | light | true/false | 夜灯 |
| 灯 | switch_led | true/false | 开/关 |
| 灯 | bright_value | 10-1000 | 亮度 |
| 灯 | temp_value | 0-1000 | 色温 |
| 插座 | switch_1 | true/false | 开/关 |
| 窗帘 | control | open/stop/close | 移动 |
| 窗帘 | percent_control | 0-100 | 位置百分比 |
中国区域说明
中国数据中心(openapi.tuyacn.com)默认屏蔽非中国IP。
解决方案:
- 1. 在涂鸦IoT平台 → 项目 → IP白名单中添加您的IP
- 使用本地模式(完全绕过云,推荐)
API参考
有关详细的API文档、DP代码表和设置指南,请参阅 references/tuya_api.md。