FireBettle Board-ESP32连接不上阿里云

2019-03-275250
AI 快速预览详细 收起
本文讨论了使用FireBeetle Board-ESP32连接阿里云时遇到的MQTT连接返回-2的报错问题。尽管WiFi和参数均正确,但连接仍然失败。文章详细分析了可能的原因,并提供了具体的排查步骤和解决方案。通过检查hmacsha1计算部分的代码,可以确保密码生成正确,从而解决连接问题。
大家好,我采用阿里云IoT 入门套件的例程连接阿里云,却出现了连不上的情况,mqtt连接部分的返回值为-2,已经检查过wifi正常连接并能访问互联网,productkey,devicename,devicesecret等均正确,uesername正确,clientId正确,并且库中采用hmacsha1计算出的password也正确(已验证采用相关数据采用MQTT.fx能正常接入阿里云),但是相关参数采用FireBettle Board-ESP32结合Arduino编译下载后,连接却返回-2,也就是连接失败,这会是怎么回事呢?
FireBettle Board-ESP32连接不上阿里云图1

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(2)
DFlc
DFlc
楼主你好,我在编译时hmacsha1无法识别,该怎么解决呢
wuji
wuji
这是Mqtt协议连接失败问题,可能是哪参数填错了。检查设备信息productkey,devicename,devicesecret和域名、端口号是否有误。
String ALIYUN_SERVER = "iot-as-mqtt.cn-shanghai.aliyuncs.com";
uint16_t PORT = 1883;
在以下网址查看域名设置:https://help.aliyun.com/document_detail/40654.html?spm=a2c4g.11186623.2.21.6b619ff5RoKlpr
检查下,产品被创建在哪个地域的:
例:如果将产品创建在华东2(上海)地域,域名为iot-as-mqtt.cn-shanghai.aliyuncs.com
如果是新加坡,域名为iot-as-mqtt.ap-southeast-1.aliyuncs.com
若没检查出来,可以尝试连接阿里云平台上的其他设备试试
还有看下[backcolor=rgb(250, 250, 250)][font=微软雅黑]PubSubClient.h文件中这两个参数是否修改为1024和60[/font][/backcolor]

- 没有更多了 -