IoT Wi-Fi芯片 RTL8710BX 应用笔记以及常见技术问题答疑
Ver 2.0
本文介绍了Realtek的IoT Wi-Fi芯片RTL8710BX的基本性能以及参数,文中以九九物联AFW121TI为例,从模组应用描述芯片性能。
1硬件
1.1资源
a.模组基本外设:
b.Wi-Fi模块上电初始化最大工作电流
Wi-Fi模块在上电初始化时候,RF校准和配置片内寄存器需要大电流,需要500mA,在连接AP时候也需要一定的电流支持,建议电源设计最大电流超过500mA
c.同一路由(AP)下,可支持模组设备在线数量:
常用路由连接数量经验值为20-30个,低端路由器通常支持15个,工业级别路由器数量增加数量可以到300个。WIFI 2.4G的13个信道里面可以重复使用
d.配网模式支持以及原理:
1、一键直连Fast-link 2、微信Airkiss 3、SoftAP热点配网
前两者操作简单,wifi模块空中抓包方式,模块通过手机app配置信号(或者其它人机界面),提取无线网络中路由器信息并配置入网,入网同手机兼容性和路由器加密协议相关,目前配网成功率大约85%-90%
SoftAP是wifi产生AP热点,手机(或者其它人机界面)主动搜寻模块AP热点,将网络配置写入路由器用户名密码,配网成功率接近100%
推荐用户APP端两者结合使用,提高产品配网体验(九九物联提供app配网界面,自动切换源代码)。通常有AP+STA模式来解决现场配网问题
e.模块设置成AP热点模式,支持几个连接?
目前的WLAN Driver支持3个Station连接,如有需求可调整连接上限。
f.模块是否支持Soft-AP和Station模式共存?
支持。Wi-Fi模块建立Soft-AP后,可同时做为Station模式并入其他AP(路由)
g.二次焊接:
模块可接受二次回流焊,回流焊最高温度在260摄氏度左右,注意焊接温度曲线,焊接温区最好是上层温度低于下层温度,以避免屏蔽罩过热。
h.连接距离:
模块可分为:板载天线和外接天线(不包括穿透带钢筋混凝土楼板)
板载天线空旷距离 60米左右,外接PCB天线空旷距离可在160米左右,办公室环境非承重墙通常连接距离为25米(同苹果手机wifi信号距离相近)
i.丢包现象:
由于网络速率快于串口速率,通常需要设备端,wifi模组,服务器端的三方协议进行数据包调整。本wifi模块默认串口接收缓冲buff为1.5KB,每个socket缓冲为2KB,能满足IOT数据的传输的需求。
1.2功耗
a、功率模式小结和典型功耗参数
1)continuous TX峰值功耗 320mA(配网时功耗最高)
2)模块保持连接时平均功耗 70mA
3)模块保持路由连接状态,Tickless睡眠模式功耗平均值5mA
模组深度休眠功耗:小于10Ua(Wifi以及ARM内核休眠,需要外部I/O唤醒)(电流太小无图例)
详细的功耗参数,可参考文档“功率测试九九物联”
1.3Flash和RAM架构
RTL8710BX内部Flash1MB(可支持到4MB),SRAM256KB (Flash可以执行代码)
1.4 Wi-Fi模块发射功率性能指标
备注: 模块射频的TX性能主要体现在三个参数:Power(功率)、EVM(误差向量幅度)、FreqErr(频偏)
1.5 Wi-Fi模块接收功率性能指标
2 软件
2.1 初始化、连接时间
a、Wi-Fi模块初始化时间: 500ms以内
b、一键快连,Fast-link配网:轮询信道过程保持 40s, 配网成功时间5s内
c、AT+指令操作写入配网信息,进行配网: 2秒
d、TCP连接的时间: AT+指令模式2s内
e、Deep sleep模式时钟细节: Deep sleep mode下面使用的wake up timer是一个外部低精度timer(1Khz),最多能够设置到140分钟,实测设置140分钟,会约有10分钟左右的误差。
f、deep sleep mode wake up system reboot time: system reboot time = 98~100ms;
2.2 AT+指令集实现功能
a、无线通信协议:支持IEEE802.11b/g/n,默认n频段连接
b、MAC地址: 支持MAC地址获取(AT+指令操作)
c、扫描AP的全部信息: 单指令操作实现
1. 支持SSID的获取(允许最大长度128字节,支持中文和特殊字符,单引号除外)。
2. 支持获取AP的MAC地址。
3. 支持获取AP的安全模式。
4. 支持获取AP的频率。
5. 支持获取AP的信号(RSSI)。
6. 支持获取AP的个数。
7. 支持扫描AP时结果按信号强弱由强至弱排序
8. 支持支持连接广播与非广播的SSID
9. 支持IP的设置和获取
d、数据安全:
支持的安全模式以及加密算法,支持如下五种安全模式:无安全(无密码)、WEP_OPEN(开放认证)、WEP_SHARED(共享密钥认证)、WPA、WPA2。
e.动态IP获取: 使用DHCP 设置静态IP: 非使用DHCP
对于非使用DHCP的情况,AT+指令设置网络掩码地址、网络网关地址和DNS地址;
f.重连AP机制:支持开机自动重连,异常断开时自动重连。
g.HTTP服务端:支持AT+指令操作打开HTTP服务端
h.系统稳定性:为了提供系统的稳定性,以应对多冲突的操作环境,模块集成了看门狗机制,断线重连机制
i.烧录程序不成功:检查Jtag接线是否正确,检查LOG_Uart是否接反
j.二次开发:提供Ameba系列C_SDK以及设计参考
k.Wifi模块通讯时间
RTL8710BX系列,由于原生态AT+指令集包含了Log调试信息,Wifi模块软件调试时间通常为200ms有返回值。经过去除Log输出后,大约为40ms左右反馈时间
2.3 WIFI模块应用软件问答:
1. 固件重启后自动完成AP的自动重连,重连规则:
两种情况:
A. 断电重启时候,模块会读取上次成功连接上AP后保存的信息,搜索周围AP信息,如果有相符合的,就去连接AP,如果周围存在这个AP热点,模块会连接上,如果不存在这个AP,模块会尝试发起8次的重连机制(可设置),每次的间隔为5s(可设置)
B. 模块在正常工作时候,当它连接的AP断开了,模块在18s(这个时间后期要改为5s内)后告诉MCU已经断开AP的连接,接下来会发起8次的重连机制,每次间隔为5s
2. 针对AP热点加密类型WEP/WPA/WPA2/WAP ENT的支持覆盖情况怎么样:
支持如下五种安全模式:无安全(无密码)、WEP_OPEN(开放认证)、WEP_SHARED(共享密钥认证)、WPA、WPA2。对于WPA/WPA2,要支持加密算法为AES以及TKIP的AP。ENT不支持
3. SCAN出来的热点信息,不能识别中文字符以及乱码?
中文字符的AP,模块会把会把中文字符进行UTF-8编码,如果路由器不支持Utf-8,需要单片机驱动端对编码进行调整,否则会出现乱字符或者空ap名称。
4. SCAN多久可以返回结果[包含扫描不到热点]?
2秒,没有任何AP,超时是2秒,可设置
5. 扫描到的热点信号值[dbm]最低是多少?或者说扫描可以返回热点数目最多有几个?
热点信号值应用层看不到,目前我们测试的经验看到的范围-15~-100dbm,扫描返回的热点数目最多支持64个
6. Wifi工作模式为AP+STA工作模式解释,从性能上对比单一的AP/STA模式有什么差异?该模式的具体应用场景?
AP+STA模式的原理是模块先建立热点(AP),然后再连接其它AP(路由),相当于AP和STA两种模式同时生效。对比单一的AP和STA模式,它是采用轮询的方式在两者之间的模式切换,如果用同时存在的两个模式去收发数据,可能会丢失数据
目前客户使用情况为:开始AP+STA模式,有以下用法:
A、LED控制卡行业,客户用这个模式作为单机和联网灵活切换使用
B、打印机行业,客户用在联网情况下,开启自身的热点手机状态反馈信息。
C、pos机行业,通常设备端有人机界面,可以直接输入路由器信息,不需要ap热点方式连接
7. AP的SSID名称最大长度支持多少?
SSID最大长度为32字节,
8. 快速发送两条AT指令会有什么反应?[第一条未响应返回值就立刻发送第二条AT命令]?
模块接收做了循环队列,第一条未响应也不会丢掉第二条指令的接收
9. 连接上热点后,长时间放置,是否会被路由器踢掉【WIFI链路】?
设备不会被路由踢掉,因为模块会有beacan发出
10. 网络连接最多支持有几个句柄?长时间不操作是否会被主动释放?
能建立8个Socket连接,超过8个会建立不成功
长时间不操作不会被主动释放
11. TCP连接的时效机制是什么?[是否会维持长时间的TCP连接不断开]?
作为CLIENT端,服务器不主动断开,会保持连接,作为SERVER,会一直保持等待设备接入
12. TCP断开的机制是什么?是否可以快速断开?
主动断开:需要发送指令
被动断开:服务器会发连接断开报文
两者都可以快速断开,断开都能释放端口,ID等资源
13. TCP最长发送和接收字节数是多少?[文档标记,最长发送不超过1500字节,边界测试]
TCP最长发送字节数为1400Byte(不包括指令头,纯数据)
TCP最长接收字节数为:1460Byte(不包括指令头,纯数据)
14. wifi通讯性能是否已经做过内测?提供数据【ECHO环境】
模块有做过大数据并发压力测试,和数据下载时,同时串口发送上行数据,保持数据不丢。ECHO环境数据未测试
15. AT命令的响应时间数据,内测数据?【本地配置查询类命令,网络查询类命令】
本地配置查询类命令:10ms之内,能收到回复数据,例如查询模块MAC地址、查询模块IP等
网络查询类命令:根据查询指令的功能执行时间
16. 如果wifi关断,多久模块可以检测到连接丢失?
最少要4-5s钟时间,收不到beacon,会通知上层
17. 连接内测成功一般时间?[不同加密模式下]
内测连接成功的时间为2-3s,与网络环境有关
18. UDP数据传输方式,一次可以发送多少数据?
参照上面TCP通讯13条答复,与TCP的标准一致
19. TCP SERVER模式下,收到远端client连接请求没有上报通知?关闭的时候倒是有通知;
目前的机制是当连接被动断开,会上报通知告诉MCU
20. Wifi默认配置参数配置?
软件默认的是STA工作模式,DHCP默认是开启,默认波特率是115200。
21. IPV6环境下,功能使用范例?
支持IPV6,不过国内目前无IPV6环境,测试环境需要客户自行搭建
22. 模块开机流程说明?引脚操作时序要求?
模块开机只需要供电满足即可,如果设备端开启比较慢,建议分开电源控制,可以控制模块的CHIP_EN管脚,保证设备在启动过程中不被模块的管脚电平影响
23. 设置波特率命令,设置后要求的后置动作?
波特率设置完成后会被写到flash里面保存,设置完成后不需要重启
24. 不用选择WLMODE就可以设置STATICPARAM【操作问题】?
这个是上电默认的状态
25. 同名、同密码的AP间切换是否支持?如果支持需要多长时间相应?[设备漫游]
可以支持,但是自动切换AP时机需要主MCU根据信号强度设置命令切换。
26. 是否支持连接企业WPA ENT加密类型热点?
不支持
27. 不同路由连接及长时间工作的兼容性,是否有保证?
需要不同路由器方案下的结论,配置不同信道连接和长时间工作的稳定性;
28 不同信道下,数据传输能力是否有差异?
信道、负载相同情况下,数据传输能力无差异
29. 当前支持的所有可能的固件升级方案有几种?
SWD接口, 局域网OTA , UART_Log
30. 后续开发调试、出货售后问题的整机调试手段?
Debug信息,log信息,UART接口监控
31. 提供SSL,TLS等加密的实现,输出AT+SSL类功能接口:
九九物联根据应用提供Config_rsa.h文件配置文件提供客户选择。
32. 提供设置对WPA/WPA2之外的热点类型连接限制的接口。
POS行业可以根据路由器的型号进行筛选认证
33. 提供对OTAx下载失败时,下载导致损坏的OTAx分区“自愈”需求的支持;
通过分区升级解决。flash有两个区域defult和update区域。原则上断电,断线等不会影响使用。
35. 提供当模块处于升级过程中时,获取升级进度的接口;
通过回显字符确认
36. 软件是否支持语音协议
目前软件支持亚马逊,天猫精灵等标准语音控制端协议,但是wifi没有支持到语音输入。
37. 软件支持云协议种类
模组提供标准协议以及定制协议支持,提供mqtt demo以及app demo源代码。支持双云端支持
3 产品一致性控制
A. 生产材料控制内容:
1.PCB板材工艺控制(要求沉金工艺)
2.板子阻抗匹配控制
3.晶振频偏测试(一致性保证)
4.射频容性感性器件测试(一致性保证)
B.射频校准测试流程
1.烧录产测固件,写入map表
2.配合射频测试仪器和屏蔽箱测试,测试TX、RX性能参数,写入K值(功率、EVM、频偏),写入mac地址。
3.检查每一模块测试射频性能的参数
4.复检模块MAC地址
5.上电连接路由,确认连接性能和射频效果
C.产品稳定性
1. 连接、断开频率:模块在网络一般的环境内工作,都能保持常连接,如果网络环境的问题导致模块断开连接,短时间内模块就会进入重连机制,反复去连接AP。
2.数据收发完整性:模块无论在STA、AP、STA+AP模式下,建立TCP\UDP 网络连接时,保证大数据量稳定传输
3. 批量产品,提供产品log参数
4 天线
天线主要的标准,可以根据三个图分析:场型图、S11、SWR
RTL8710BX Wifi模块频段 2400~2500MHz
天线增益 ≥3dBi:3dBi的天线可以在5米内信号非常好,它是以池塘形
状向外发送信号,类似两个括号这种形状()
阻抗 50 ohm: 实际应用中50欧姆的匹配兼顾了耐压,功率传输和损耗等
优势
驻波比 ≤2: 表示天线和电波发射台是否匹配,等于1,表示给天线
的电波没有任何反射,大于1,表示有部分电波被反射回来
要求模块输出端匹配阻抗一致性稳定,按照标准为50欧姆。
附录:99物联wifi模块路由器兼容列表:
|