ESP8266 SDK开发: 物联网篇-测试MQTT调试助手和ESP8266连接阿里云物联网平台
<p><iframe name="ifd" src="https://mnifdv.cn/resource/cnblogs/Learn8266ForSDK" frameborder="0" scrolling="auto" width="100%" height="1500"></iframe></p>
开通阿里云物联网平台
https://www.aliyun.com/
1.搜索阿里云物联网平台(如果没有开通请自行开通)
创建产品(并在产品下面添加设备)
1.咱们做产品的时候,一般都是有个产品.
2.设置下产品的名称
3.产品弄好了,就要在产品下面挂上设备
4.设置下添加的设备的名字
注意:看看自己的这里是那个区域的,后面会用到
提示:
上面的阿里云物联网平台,设备走的是MQTT通信.
提醒:在物联网平台上面,一个设备作为一个MQTT客户端
每一个MQTT客户端的用户名,密码,IP地址,端口号,ClientID,订阅/发布的主题都是固定死的.
现在咱们就找一下上面设备的MQTT信息.
https://help.aliyun.com/document_detail/86706.html 阿里云的说明文档
客户端(设备)连接的MQTT的IP地址
{
"ProductKey": "a1m7er1nJbQ",
"DeviceName": "Mqtt",
"DeviceSecret": "7GUrQwgDUcXWV3EIuLwdEvmRPWcl7VsU"
}
${YourProductKey}.iot-as-mqtt.${region}.aliyuncs.com
最终IP地址:
a1m7er1nJbQ.iot-as-mqtt.cn-shanghai.aliyuncs.com
客户端(设备)连接的MQTT的端口号
客户端(设备)的Client ID
{
"ProductKey": "a1m7er1nJbQ",
"DeviceName": "Mqtt",
"DeviceSecret": "7GUrQwgDUcXWV3EIuLwdEvmRPWcl7VsU"
}
1.我就规定我的clientId是 112233445566
2.咱呢先不走SSL, 所以 securemode=3
3.最后一个呢,咱就选用 hmacsha1
最终Client ID:
112233445566|securemode=3,signmethod=hmacsha1|
客户端(设备)连接的MQTT的用户名
{
"ProductKey": "a1m7er1nJbQ",
"DeviceName": "Mqtt",
"DeviceSecret": "7GUrQwgDUcXWV3EIuLwdEvmRPWcl7VsU"
}
最终用户名: Mqtt&a1m7er1nJbQ
客户端(设备)连接的MQTT的密码
{
"ProductKey": "a1m7er1nJbQ",
"DeviceName": "Mqtt",
"DeviceSecret": "7GUrQwgDUcXWV3EIuLwdEvmRPWcl7VsU"
}
所以MQTT连接的密码
8B286A9E99B49E19A0964589E8F3C2DBB1C1A8DE
最终
IP地址: a1m7er1nJbQ.iot-as-mqtt.cn-shanghai.aliyuncs.com
端口号: 1883
Client ID: 112233445566|securemode=3,signmethod=hmacsha1|
用户名: Mqtt&a1m7er1nJbQ
密码: 8B286A9E99B49E19A0964589E8F3C2DBB1C1A8DE
测试(下载并安装MQTT调试助手)
1.可以网页上下载
2.我已经下载了
3.安装以后,填写以下信息
4.连接成功以后
5.也可以用我写的这个调试助手测试
用ESP8266程序计算密码,并连接作为设备接入物联网平台
1.关于密码计算的第二种方式
2.我给用户准备好了程序,打开该章节里面的8266程序
2.根据自己的设置以下信息
3.修改WiFi连接的路由器
5.下载运行程序以后打印如下
关于计算密码部分
1.当前使用的sha1计算方式(也支持MD5)
2.sha1.c和md5.c我是移植的 mdbetls 源码里面的.具体参考
https://www.cnblogs.com/yangfengwu/p/13693511.html
结语
用户需要明确一点,在云平台注册设备,实际上就是生成一个MQTT客户端.
然后用户拿着这个客户端的信息放到支持MQTT通信的设备上.
设备就接入了阿里云物联网平台.