#### 前言
一直都想知道ESPNOW的最远传输距离是多少,今天趁着陪老婆和孩子去五彩田园玩,就顺便测试一下。
#### 准备工作
图片上就是本次使用的测试设备,其中左边的esp32 C6接上锂电池,固定安装在测试位置,然后我手持右边的ESP32 S3触摸屏设备,走到水塘的另一边测试点进行测试。
测试指标为以下内容:
1、双向吞吐量,单位kbps
2、丢包率
3、响应时间
4、信号强度
其中丢包率计算方式如下,S3作为主机,C6作为从机。主机发送一个包含随机数的120字节长度数据包给从机,然后从机接收到数据包立刻回复相同的数据包给主机。主机接收到数据包后与缓存的随机数对比,正确则记录已发送数量+1,失败则丢包数量+1。
在一定时间内,统计已发送的数据数量和丢包率。
#### 第一个测试点(最远目视无障碍距离150米)
如导航测试距离所示,大约150米
从测试点拍照可以看到,C6设备的安装点位很小很小
此时的性能指标基本上和两个设备间隔10cm放在一起的数据指标一致(除了信号强度外),可以看到双向响应仅仅是3ms,丢包率低于0.02%
#### 第二个测试点(最远距离300米左右,无法找到目视无障碍地点,只好找个信号好的地点)
由于附近不是很好找空旷的测试点,时间也接近晚上,就只能就地找个更大的水塘测试
这次C6设备安装在水塘边的灯柱上,简单用透明胶缠一下
由于这个水塘周边并没有建设步行走道和景观,我找不到目视无障碍的地方,只能找个信号相对比较好的位置测试。测试性能和距离看图片,丢包率比无障碍要高一些,实际上也是可以用的。
#### 结论
我原以为,espnow顶多能在宽阔范围,100米左右有比较好的信号和性能表现,没想到真正测试的时候,它的表现远超预期。