我这几天正在研究esp8266模块 . 该模块上的固件是nodemcu 0.9.6,其语言为lua . 我为我的项目使用mqtt协议,它运行良好 . 但是TLS是必要的 . 我不知道如何设置这个固件 . 我已经搜索过但是在nodemcu网站上关于TLS的文档对我来说还不够 .
我知道我应该在连接时使用这条指令来代理:
m:connect(BROKER, 8883, 1 , function ( connection ) ... end )
并将CA文件放在模块上我应该使用这样的东西:
enter image description here
这就是我从nodemcu网站上读到的内容 - > https://nodemcu.readthedocs.io/en/master/en/modules/net/#netcertverify
但问题是当我在我的代码上使用它时,模块不理解它并在上传时和运行时给出错误 .
这个问题是因为我的固件版本?升级会成功吗?或者我只是在我的代码上做错了什么?我还没有看到有关在其他项目中将CA文件放在模块上的示例代码,所以我猜我的工作是错误的 .
如果您已经使用过TLS(在nodemcu固件上),我会很乐意为您提供帮助 .
2 回答
Build最近启用了SSL / TLS的固件 .
Flash the binary to upgrade . 确保所有闪烁参数与文档完全一致,并包含init数据二进制文件 .
你的其余代码似乎很好 .
看一下this question并阅读答案的评论 .
您可能必须从最新的sdk获取esp_init_data_default.bin .
我用过esptool .
如果你觉得它很有用,请upvote this post . 竖起大拇指@MarcelStör .