OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 594|回复: 0

Airlink配网问题排查与解决指南-机智云

[复制链接]

308

主题

317

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
1211
金钱
1211
注册时间
2020-2-25
在线时间
115 小时
发表于 2024-4-19 17:29:32 | 显示全部楼层 |阅读模式
1. 前言

帮助机智云的客户和开发者更好地理解Airlink方式给WiFi模组配网的原理,并解决配网过程中可能遇到的各种问题。我们将详细介绍Airlink配网的原理,以及常见的配网失败原因和排查基本步骤。通过本文的指导,客户可以自行排查配网问题,快速定位并解决可能出现的困难,从而更高效地完成配网任务。

2 AirLink配网基本原理




1、Airlink利用了UDP的广播或者组播技术,由于数据包会被网络协议加密,能获取到明文信息很少,所以只能把信息用数据包长度这样的信息来传递(不同算法还有其他方式),模组在Airlink(混杂)模式下可以获取到包,虽然解不开包的内容,但是可以知道包长度和一起其他的明文信息。

2、比如某个路由器的SSID为: MyHome,这几个字母的ascii分别是(10进制):77,121,72,111,109,101;那么手机在发送信息的时候就会发送数据长度分别是77,121,72,111,109,101的数据包,不断的循环发送(当然还包含一些算法上需要的数据特征值);

3、模组在Airlink模式下,是会在所有信道上不断的扫抓取所有的数据包的,一旦在某个信道上抓到了特征包(比如10个以上的长度为131的UDP数据包),表示这个信道上有配置信息要接受,接着就会收到长度为77,121,72,111,109,101的数据包,模组把这6个包的信息(长度)翻译成MyHome。

4、至于长度为77字节的数据包的内容,模组和APP都不用关心,只用了长度信息而已,也就是发送了77个字节,只为了让模组得到一个数值(ascii)为77的字符。再加上模组要在所有信道上轮询抓取,就导致了Airlink的UDP数据量很大。

5、上述是概括某一平台的Airlink原理,模组的不同的模组平台Airlink的原理会有所不同.

3. AirLink配网失败排查步骤

1、 乐鑫8266模组仅支持连接2.4G频段路由器,确认要配网连接的路由器不是5G或者2.4G/5G混合双频
2、 通过模组日志判断,模组使用的是否最新版模组固件
3、 通过模组日志判断,模组确实进入Airlink配网模式
4、 确认客户的APP没有选错模组平台和Airlink配网模式

3.1 确认路由器是2.4G频段

我们通过手机的搜索WiFi功能就可以确认我们周围的路由器是否2.4G频段;如果要连接的路由器不是2.4G,请设置成2.4G频段




3.2 模组使用的是否最新版模组固件

客户需要确保乐鑫8266(12F、12S、07S等)使用的是最新版固件,目前最新的固件版本号是04020034。可以在乐鑫8266模组在日志中确认固件版本号。






3.3 模组确实进入Airlink配网模式


3.4 请客户确认App使用的配网方式及模组平台

请app开发确认app的配网方式为AirLink,并且对应的模组型号与板卡的模组型号一致。

4. 使用最新版机智云demo APP进行配网


如果客户使用自己的设备和自己的APP如上述步骤3.1、3.2、3.3、3.4进行Airlink配网都失败,可以使用机智云demo APP进行Airlink的配网对比测试,以快速初步对比出配网失败的原因。

4.1 路由器设置2.4G、模组使用最新版固件和进入Airlink配置模式,参考3.1——3.3

4.2 机智云demoAPP下载链接https://download.gizwits.com/zh-cn/p/98/99

4.3 机智云demo APP配网流程,等待配网成功









若机智云demo APP配网成功,而开发者APP配网失败,则有以下几点原因:

1、可能是开发者app调用配网接口填写的模组平台与板卡模组型号不一致。
2、开发者app调用配网接口的配网方法参数非AirLink配网。


5. 使用手机热点作为路由器进行测试

若是使用机智云demo App如上述步骤4.1——4.3配网后仍然失败了,这时候极有可能是路由器的问题了,可以尝试使用手机热点作为路由器进行测试,以对比出是否真实路由器的某些原因导致配网失败。
1、打开手机A热点
2、使用手机B连接A的热点
3、手机B打开机智云demo APP,一键配置,等待配网成功。




手机A热点设置

5.1 使用手机热点进行Airlink配网失败


如果通过手机热点和机智云demo APP进行配网还是失败,需要抓取模组日志和APP的sdk日志给机智云FAE,才能进一步确认问题的分析。除了日志,客户还应该提供手机型号,手机操作系统版本号,路由器型号,模组版本号,product key信息,企业信息,appid信息给FAE。

APP端sdk日志获取流程:查看教程

5.2 使用手机热点进行Airlink配网成功


如果通过手机热点和机智云demo APP进行配网成功,通过真实路由器和机智云demo APP进行配网失败,需要测试网络环境能否收发UDP广播包,具体方法如下:

5.2.1 手机安装机智云Demo APP

5.2.2 将手机WiFi网络链接到测试网络环境中,并且查看手机在该网络环境中的IP地址。如下图:






5.2.3 安装wireshark抓包工具,下载链接

5.2.4 打开wireshark工具,按照下图指引设置。






5.2.7 参考上图中设置,等待数分钟(等待期间,可以点击机智云Demo APP的设备列表刷新功能),如果可以看到Destination:255.255.255.255的数据包,则说明该测试网络环境具备UDP广播包的传输条件。如果没有,则说明该环境不具备UDP广播包的传输条件,客户应当想办法使路由器具备UDP广播包的传输条件。



6. 其他配网失败排查方法

有时候配网失败可能的原因既不是设备端原因,也不是APP端原因,也不是路由器原因,可能是手机的原因,这时候我们可以尝试更换手机来配网,以此排查是否手机的原因。例如客户原先用的IOS手机,安装了机智云demo APP后airlink配网仍然失败,换了Android手机就能成功,这样就可以初步判断是IOS手机的原因;例如客户用Android8.0甚至Android9.0的手机,机智云demo APP后Airlink配网仍然失败,换了Android7.0及以下就能成功,这样就可以初步判断是Android8.0及以上手机的原因。
注:目前乐鑫的配置库使用IOS手机和Android8.0及以上手机Airlink配网均正常,这里只是提供一个排查的思路打的比方。

7. FAQ
1.Q:客户使用自己开发的APP给模组Airlink配网失败,用机智云demo APP给模组Airlink配网成功,怎么知道客户APP是否选错平台和选错配网模式?
A:发送SDK日志给FAE

2.Q:乐鑫模组会跟2.4G路由器的存在兼容问题导致无法连接路由器吗?
A:目前未发现兼容性问题的案例。

3.Q:配网时APP输入路由器的密码错误,模组会如何表现


A:APP输入错误的密码后配网,模组会正常退出配网模式并进入STA模式,开始一直搜索APP给出ssid和密码都符合的热点,有就连接上,没有就打印disconnect from ssid xxx,reason2…





除了密码错误,路由器不兼容,APP连接5G路由器后配网,模组解析配置包出错,模组日志都会如上打印





4.Q:路由器端口号的限制会不会影响Airlink配网和影响模组连接路由器
A:有影响,特别是一些高级写字楼,对应路由器设置有一定的限制,要确认一下端口是否禁止:
APP与设备服务端口的定义
设备监听UDP广播端口号为:12414
设备TCP服务器端口号为:12416
APP监听UDP广播端口号为:2415

设备与云端服务端口的定义
设备与GService服务器端口号为:80
设备与M2M服务器端口号为:1883或8883




正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-24 13:36

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表