收藏官网首页
查看: 851|回复: 0

[分享] 机智云Airlink配网超时、数据上传延迟及更新不及时问题分析

114

主题

123

帖子

5181

积分

论坛元老

Rank: 8Rank: 8

积分
5181
跳转到指定楼层
楼主
 楼主| 发表于 2025-5-15 17:56:34 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
汉枫LPB120模块
本帖最后由 阿信 于 2025-5-15 17:57 编辑

机智云Airlink配网超时、数据上传延迟及更新不及时问题分析

前言:使用32单片机esp8266-01S接入机智云,将传感器采集的数据上传到机智云APP,同时实现远程控制LED灯等执行器。
一.Airlink配网超时

可能原因一:
首先一定要确保ESP8266烧录有机智云的固件,我一开始就误认为ESP8266已经有固件了,但后续才发现是安信可的固件,判断ESP8266里是什么固件有个很好的区分办法,如果ESP8266闪烁频率很慢,就是安信可的,如果闪烁频率很快,就是机智云的。关于如何烧录固件网上有很多的办法,作者就不再赘述,只是提醒一下大家一定要检查一下固件。


可能原因二:
连接的WIFI一定要是2.4G频段的,5G是一定会失败的。大家可以在电脑的设置——网络和Internet——属性,查看WIFI的频段。


可能原因三:
使用单片机配网时最好用按键启动ESP8266的配网,一开始我将配网模式函数放在初始化后面,每次复位或上电都会执行,但实际确实连不上。



一开始我认为按键没那么重要,但奈何尝试了很多方法都不行,最终才尝试了按键启动配网,没想到就成功了。


顺便提醒一下,如果手机APP上点击配网时让你"please switch to wifi environment" ,是因为你的手机没有开启定位哈。

二.机智云不主动上传数据
问题描述:在历经千辛万苦终于配网成功后,打开APP界面发现数据全为0,当时的心情怎一个惨字了得。只有每次我改变其中一个布尔值后,数据才会更新。串口打印信息如下:


可能原因:不主动上报数据大概率就是定时器出了问题,建议大家详细排查定时器初始化或者配置有无问题。本人就犯了一个很马虎的错误,在定时器中断通道的配置中,将TIM3_IRQn错写成了USART3_IRQn,导致定时器其实一直无法进入中断,gizTimerMs()函数一直无法执行,自然无法主动上报数据。



将中断通道改正确后,就可以接收到实时数据啦,串口打印信息如下:



三.数据更新慢
问题描述:数据终于是可以实时上传了,但好像也没有那么“实时”,延迟非常高,离预想的效果还有点距离。
改进方法:在gizwits_protocol.h中找到#define REPORT_TIME_MAX 6000这条宏定义,这个定义决定了数值型变量上传的时间间隔,默认是6秒钟,将此处的6000改成500或者其他值,就可以使得数值型变量两次上传的间隔变短,及时更新至APP。


更改后问题得以解决:

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

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表
在线咨询