1、配置流程
2、WiFi(SSID和密码)信息传输方式
- APP通过以下协议传输WiFi的SSID和密码:SmartConfig技术(广播包配网)
协议:APP发送包含加密WiFi信息的UDP广播帧(目标端口6666/6667)。
设备端行为:插座WiFi模块切换至嗅探模式(Monitor Mode),监听802.11帧的MAC地址字段解析网络配置数据。
加密机制:数据采用AES-128加密,防止密码被截获。
- AP热点模式(备选方案):
若广播包配网失败,插座启动AP模式(如热点名"Xxxx_SmartPlug_XXXX"),用户手机连接此热点后,通过HTTP页面或APP内输入家庭WiFi信息。
- 声波配网(少数型号):
APP将WiFi信息编码为音频信号,插座麦克风接收解码(依赖硬件支持)。
3、 触发配网模式
物理按键操作:长按插座重置键5秒(部分型号需持续至指示灯进入快闪状态),触发GPIO中断信号,主控MCU通过UART串口发送AT指令,通知WiFi模块进入配网模式(SMART_CONFIG或AP_CONFIG)。
指示灯状态:快闪(2-3Hz)表示待配网,由MCU控制LED引脚输出PWM信号实现。
4、联网与云端注册
4.1 插座关联路由器(WiFi):
插座通过802.11协议完成与路由器的关联(Association)和WPA2/WPA3认证。
- Probe Request、Probe Response;
- Association Request、Association Response;
- Authentication Request、Authentication Response。
4.2 插座获取IP地址:
路由器通过DHCP协议分配局域网IP:
- DHCP discover;
- DHCP offer;
- DHCP Request;
- DHCP ack;
从连接的WiFi的路由器上获取IP地址 ,此时可以连接外网,连接到涂鸦云;
4.3 建立TCP连接(端口8883),通过MQTT协议发送设备ID及密钥完成认证,订阅控制主题(如tylink/device/{ID}/control)。
- syn = 1,seq = x;
- ack = x + 1,ACK;syn = 1,seq = y;
- ack = y + 1,ACK;
4.4 插座状态上报
插座设备通过MQTT的PUBLISH报文上报联网成功状态(代码0x04);
4.5 APP通过HTTPS/HTTP2同步状态
- 加密传输:所有指令(如开关指令、状态查询)均通过HTTPS协议加密传输,采用TLS 1.2/1.3加密层,防止数据被截获或篡改。
- 认证机制:APP需携带设备ID、用户令牌(Token)和API密钥(AccessKey)发起请求,涂鸦云验证合法性后执行操作。
- 数据格式:请求与响应数据使用JSON格式封装,例如开关指令格式为:
JSON{"device_id":"xxx","command":"switch_on","value":1}
4.6 控制流程
-
指令下发:用户点击APP开关按钮 → APP生成HTTPS POST请求 → 发送至涂鸦云API接口(如https://openapi.tuyaxxx.com/v1.0/devices/{device_id}/commands)。
-
云端处理:涂鸦云验证请求 → 转发指令至设备绑定的MQTT主题(如tylink/device/{ID}/control) → 设备通过WiFi接收并执行。
-
状态同步:设备执行后通过MQTT上报状态 → 涂鸦云更新数据库 → 通过HTTP/2长连接推送至APP界面。
5、配网失败处理
- 检查路由器是否禁止新设备接入;
- 尝试用手机热点测试硬件功能;
- 复位插座后重试(长按10秒彻底清除缓存);
- 检查IP地址是否耗尽;
- 检查WiFi的黑白名单是否限制设备连接等。