TuyaOS
|
配网是 Wi-Fi
产品特有的一个能力,他的主要目的,是通过具有配网能力的设备,对未配网的 Wi-Fi
设备进行网络连接配置。在配网过程中,具有配网能力的设备,会通过交互,把指定的Wi-Fi路由器的 SSID
、Password
以及在涂鸦 IoT
平台上申请创建出来的 Token
信息,发送给未配网设备;未配网设备拿到这些信息之后,连接Wi-Fi路由器,并通过涂鸦 IoT
平台提供的 IoT-DNS
服务获取对应区域的服务器地址,然后通过 Atop
服务进行激活,并连接到涂鸦 IoT
平台进行正常的业务交互。
目前按照交互方式,涂鸦 TuyaOS
主要支持以下配网能力。
smartcfg
配网
根据涂鸦 smartcfg
规则,将 SSID
、Password
和 Token
进行编码到 udp
广播、组播报文中,并在Wi-Fi路由器局域网内部发送,未配网设备在接收到报文,识别特征之后,进行解码,提取出 SSID
、Password
和 Token
,并进行后续的连接 Wi-Fi
路由器,并连接涂鸦 IoT
平台,进行激活绑定。
smartcfg
配网模式在TuyaOS
3.4.0版本之后因为安全性和兼容性问题,已经移除,不再支持,为了保持对老产品的兼容支持,配网模式依然保留,只是不再起作用。双模设备我们推荐使用蓝牙配网,单Wi-Fi
设备推荐使用AP
配网。
AP
配网
未配网设备根据用户配置或者是默认的涂鸦 AP
配网规则,创建一个 Wi-Fi AP
热点,并启动涂鸦 AP
配网协议服务。具备配网能力的设备会连接到这个热点,并连接到该服务端口,根据涂鸦 AP
配网协议进行交互,将 SSID
、Password
和 Token
发送给待配网设备。待配网设备拿到 SSID
、Password
和 Token
之后,连接 Wi-Fi
路由器,并连接涂鸦 IoT
平台,进行激活绑定。
蓝牙配网
未配网设备发送蓝牙广播,具备配网能力的设备在接收到蓝牙广播数据之后,会对未配网设备发起配对,配对完成之后,根据涂鸦蓝牙配网协议进行交互,将 SSID
、Password
和 Token
发送给待配网设备。待配网设备拿到 SSID
、Password
和 Token
之后,连接 Wi-Fi
路由器,并连接涂鸦 IoT
平台,进行激活绑定。
闪电配网
闪电配网是一种伙伴免密配网技术,即一台支持闪电配网的已联网设备,对支持闪电配网的的设备进行配网。支持闪电配网的已联网设备通过Wi-Fi管理帧,按照涂鸦闪电配网协议的定义,发现在设备周边新出现的支持闪电配网的未配网设备,并跟涂鸦 APP
进行交互,当客户进入涂鸦 APP
主界面的时候,进行弹窗显示,只需要用户在APP上进行简单的发现、添加操作,即可将设备配网,减少了人为的输入密码操作,优化了配网体验,使得新设备可以做到上电添加之后即可使用。
FFS
配网
FFS配网是 Alexa Frustration-Free Setup的缩写,也是一种伙伴免密配网技术,在amazon Alexa智能音箱的支持下,按照amazon定义的 Frustration-Free Setup流程,对支持FFS配网的设备进行配网,过程不需要人工介入,设备只要插电即可配网,优化了配网的流程和客户的使用体验。
用户配网
为了支持其他类型的配网,如屏幕输入、声波、扫二维码、局域网等任意开发者自行开发出来的获取 SSID
、Password
和 Token
的方式,通过这些机制拿到了 SSID
、Password
和 Token
并调用API设置到涂鸦 TuyaOS
,待配网设备拿到 SSID
、Password
和 Token
之后,连接 Wi-Fi
路由器,并连接涂鸦 IoT
平台,进行激活绑定。
配网模式是指涂鸦 TuyaOS
根据客户需求,抽象出来的配网方案,满足不同产品、不同场景的需求。配网模式子在设备初始化的时候,调用tuya_iot_wf_mcu_dev_init
或者 tuya_iot_wf_soc_dev_init
的时候提供,包括以下几种。
配网模式 | 描述 |
---|---|
WF_START_AP_ONLY | 仅支持 AP 配网模式。 |
WF_START_SMART_ONLY | 仅支持smartcfg 配网模式。 |
WF_START_AP_FIRST | 支持AP 配网或者smartcfg 配网模式,默认AP 配网模式,但是经过重置,可以切换成smartcfg 配网模式。 |
WF_START_SMART_FIRST | 支持AP 配网或者smartcfg 配网模式,默认smartcfg 配网模式,但是经过重置,可以切换成AP 配网模式。 |
WF_START_SMART_AP_CONCURRENT | 涂鸦万能配网模式,支持AP 、smartcfg 配网共存,同时根据产品的形态和客户的需求,自定义支持蓝牙配网、闪电配网和FFS 配网。 |
注意,在以上几个配网模式下,用户配网方式是默认支持的,即在任意模式之下,都是可以通过接口直接设置SSID
、Password
和Token
进行配网操作的。
注意,在以上几个配网模式下,蓝牙配网在开启蓝牙功能的时候,是默认支持的,即在任意模式下,只要有蓝牙能力,都是可以直接使用蓝牙进行配网。
Wi-Fi
工作模式是Wi-Fi
产品特有的模式,在设备初始化的时候,调用tuya_iot_wf_mcu_dev_init
或者 tuya_iot_wf_soc_dev_init
的时候提供,其目的是为了规范设备工作时候的具体行为,提高使用体验。
Wi-Fi 工作模式 | 描述 |
---|---|
GWCM_OLD | 主要使用在通用对接类固件上。 设备只有在 mcu 发起产测的时候,才会扫描产测路由器,任意时刻都可以进入产测。 |
GWCM_LOW_POWER | 主要使用在soc 插座上。配网前上电低功耗常亮,需要手工切换才能进入配网状态; 配网状态下,10秒内没配网成功,手工重启保持上次配网状态,10s后未配网,手工重启进入低功耗常亮状态;15分钟未配网,自动进入低功耗常亮状态,其中15分钟可以设置; 配网成功后,app移除设备自动重启,进入配网状态,默认 smartcfg 配网模式,擦除保存的ssid 和password ;手工移除,设备自动进入配网状态,擦除保存的ssid 和password ;设备只有在低功耗状态下,重启设备才会扫描产测路由,进入产测模式。 |
GWCM_SPCL_MODE | 主要使用在soc 照明上。配网前上电低功耗常亮,需要手工切换才能进入配网状态; 配网状态下,10秒内没配网成功,手工重启保持上次配网状态,10s后未配网,手工重启进入低功耗常亮状态,15分钟未配网,自动进入低功耗常亮状态,其中15分钟可以设置; 配网成功后,app移除设备自动重启,进入配网状态,默认 smartcfg 配网模式,擦除保存的ssid 和password ;手工移除,设备自动进入配网状态,进入防误触模式,不擦除保存的ssid 和password ;设备只有在低功耗状态下,重启设备才会扫描产测路由,进入产测模式。 |
GWCM_OLD_PROD | 主要使用在soc 照明上。上电即可进入配网状态,并且一直处于配网状态; 设备在配网状态下,重启设备都会主动扫描产测路由,进入产测模式。 |
GWCM_LOW_POWER_AUTOCFG | 配网前上电进入smartcfg 配网模式,smartcfg 和ap 模式来回切换;配网状态下,15分钟内重启,保持,保持上次配网状态,15分钟未配网自动进入低功耗常亮状态,其中15分钟可以设置; 配网成功后,app移除设备自动重启,进入配网状态,默认 smartcfg 配网模式;手工移除,设备自动进入配网状态,默认smartcfg 配网模式;设备在配网状态下,重启设备都会主动扫描产测路由,进入产测模式。 |
GWCM_SPCL_AUTOCFG | 配网前上电进入smartcfg 配网模式,smartcfg 和ap 模式来回切换;配网状态下,15分钟内重启,保持上次配网状态,15分钟未配网自动进入低功耗常亮状态,其中15分钟可以设置; 配网成功后,app移除设备自动重启,进入配网状态,默认 smartcfg 配网模式,擦除保存的ssid 和password ,15分钟内重启,保持上次配网状态,15分钟未配网自动进入低功耗常亮状态,其中15分钟可以设置;手工移除,设备自动进入配网状态,进入防误触模式,不擦除保存的ssid 和password ,10秒内重启,保持上次配网状态,10秒后重启,立即连接已经配网路由器,15分钟内重启,保持,保持上次配网状态,15分钟未配网自动进入低功耗常亮状态,其中15分钟可以设置;;设备在配网状态下,重启设备都会主动扫描产测路由,进入产测模式。 |
此接口用于设置用户自定义的AP配网的SSID
和Password
。如果用户设置自定义的AP的SSID
和Password
之后,AP
配网将显示该SSID
,并在连接的时候使用该Password
进行验证。因此,此接口必须在调用tuya_iot_wf_mcu_dev_init
或者 tuya_iot_wf_soc_dev_init
之前调用。
此接口用于查询用户设置的AP配网的SSID
和Password
。如果用户没有设置返回设备烧录授权时写入的默认的SSID
和Password
。
此接口用于配置设备Wi-Fi
网络配置,除了通过涂鸦提供的配网能力去获取Wi-Fi
网络配置之外,还可以通过用户自己的方式去获取SSID
、Password
和Token
,然后通过此接口设置,进行连接路由器、绑定激活等工作。
Wi-Fi
配网超时是指设备进入配网状态之后,一段时间没有完成配网,则退出配网模式的行为。设备配网的过程是一个设备和涂鸦智能APP、路由器频繁交互的一个阶段,功耗很高,长时间处于配网状态会造成设备消耗较多的电力,提高设备的使用成本,也可能会导致设备不稳定。因此涂鸦TuyaOS默认进入配网状态15分钟之后,配网超时退出配网,这个时间是可设置的,通过tuya_iot_wf_timeout_set
可以修改超时时间。
Wi-Fi配网主要是在初始化的时候指定了配网模式,其主要的工作是初始化的时候进行的,以下是一端示例代码,在初始化的时候设置了ap_ssid
和ap_passwd
,并以GWCM_SPCL_AUTOCFG
工作模式和WF_START_AP_FIRST
配网模式启动设备。