微信小程序+onenet平台+STM32(物联网篇)
参照这篇文章做下来遇到的问题及解决
一、ESP01S连接上wifi后连接不上onenet平台
解决:ESP01S内部固件是2017年的,过于老版,需要烧录新的固件到flash中,上面那个博主的安可信的链接已经不在了,所以只能去找乐鑫的AT固件库了,下面就是ESP01S比较新的固件库了,下载后参照上面博主的方式烧进去即可
通过网盘分享的文件:factory_ESP8266_1MB.bin
链接: https://pan.baidu.com/s/1sdRX5ggZpLSpzypUIROxwA?pwd=xc59 提取码: xc59
二、微信小程序上获取不到onenet平台的数据
解决:
1.微信开发者平台上添加域名,如下
2.小程序中的page\index\index.js重要部分
//这是get const authInfo = "***"; wx.request({ url: "https://iot-api.heclouds.com/thingmodel/query-device-property", method: "GET", header: { 'Authorization': authInfo, 'Accept': 'application/json' }, data: { product_id: "***", device_name: "***" }, //这是post const authToken = '***'; // 使用数据点上传API wx.request({ url: `https://iot-api.heclouds.com/thingmodel/set-device-property`, method: 'POST', header: { 'Authorization': authToken, }, data: { product_id: "***", device_name: "***", params: { "你的设备属性": 你要设置的value } },
照着上面填入即可
三、微信小程序发送post后onenet云平台数据没有改变
解决:这个问题纳闷了许久,其实通过串口向onenet发送数据是可以将云平台的数据改变的,之后微信小程序再向onenet请求获取数据,微信小程序发送的post模式实际上就是通过云平台作为一个媒介直接发给后端设备了,不改变云平台数据流的值,所以运行模式就是这样的,以至于找了很多教程都没有说清楚微信小程序如何改变云平台数据流的值。
四、微信小程序发送post数据后显示超时
解决:解决第三个问题后,这个问题是出在数据发送到后端后,后端没有及时的回应导致的超时,可以仿照上面那个博客
点击执行后它会转圈圈,大概有3s这样子,然后显示超时,其实点击执行后,你的串口会收到这样的信息
如果你能够在点击它执行后的3s内通过你的串口给它回复这样一条信息
AT+MQTTPUB=0,"$sys/你的productid/你的设备名/thing/property/set_reply","{\"id\":\"接受信息的id\"\,\"code\": 200\,\"msg\":\"success\"}",0,0
那么它就会显示成功发送,并在串口上回复你一个OK,如下:
至此你已经成功了,后续只需要往上添加功能,把单片机的代码一写,小程序gui设计好即可
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐








所有评论(0)