小米模组上手的几个问题以及遇到miio_net:ap will close in xxxs怎么办?

小米是个低调的物联网巨人。

有许多同学肯定也想加入小米之家吧?

Just do it!

以ESP32模块为例,拿到后可能会遇到如下的入门问题,下面与大家分享。

目录

一、小米模组是可以免费申请的

二、拿到的模组是核心板+底板

三、拿到核心板之后怎么用?

四、miio_net:ap will close in xxxxs问题分析

五、怎么样与小米模块交互?怎么样改电路?

六、问题解决后的效果


一、小米模组是可以免费申请的

可以申请20个,前提是公司开发者。点击申请后,可能在小米IOT后台看不到订单,不用担心,只要当时你点击后弹出过“申请成功”,就肯定是成功了,耐心等待即可

二、拿到的模组是核心板+底板

如下图所示。假如你申请的是5块ESPWROOM32D模块,那么就会得到5块核心板,1块测试板。核心板是可以焊接到测试板(底板)上的。从嵌入式系统转入的同学肯定很熟悉这种模式。

从网上购买的ESP32模组一般是下图这样的,放在这里跟小米模组对比一下,内部都是上海乐鑫的芯片。只是芯片内的程序不同而已。乐鑫官方模组、安信可的模组各有特点,都是可以深度定制的。但是小米的不可以(有SDK权限的除外)。如果不是深度开发,用这种串口模式的模组其实更加适合,可以快速上手,无缝链接小米后台。

三、拿到核心板之后怎么用?

有一个问题小米没有说明,花生在此与入门同学分享一下:

当你激动地将模块焊接到测试板上之后,再插上电脑,发现并不能按照小米的官方文档实现指令的交互。即使你插拔这个跳线帽,也无动于衷,甚至会导致你的串口助理卡在那里。

跳线帽是给ESP32核心板供电的。花生备注。

你看到的串口终端信息是这样的。信息是miio_net:ap will close in xxxxs。翻译一下就是小米网络提醒您,ap即将在若干秒后关闭。

当你按照小米的文档输入指令,比如echo on,再比如model时,发现根本没有反应。不过起码这个模块已经正常启动了,

四、miio_net:ap will close in xxxxs问题分析

从字面意思来看,小米提示的是网络有问题。但是核心问题是引脚用错了。

啊啊啊啊啊啊啊啊啊啊啊啊?

小米提供的模组哎,官方的哎!引脚用错了??

对,引脚用错了,小米没错。

小米为了维持官方文档的统一,照顾到所有的模组,不可能对所有的模组入门面面俱到,这很正常。

你连基本的知识都不具备,那么开发小米被排除在外也很正常。小米不是培训学校,CSDN可以是。

从小米文档中抽丝剥茧(如果你迈过这道坎,可能不算是什么难题,但是你不知道的时候,这就是一座难以逾越的山峰)。

看下图,逐步进入wifi产品开发FAQ。

再往下拉,可以看到,传统的RX TX可以理解成,用来下载程序(固件),也就是相当于安信可模块的那个下载接口,你定制了程序,通过这个接口就可以下载进入模块,下载时,按一下BOOT按钮。

但是在内置了小米固件的ESP32中,这么做就不行了。您需要的交互引脚是IO16 17两个引脚。

如下图所示:我们需要与单片机等MCU通信的是16和17两个引脚,那你看,可不是用错引脚了嘛,你向RXD0一直发送指令,它要搭理你就是它的毛病了。

五、怎么样与小米模块交互?怎么样改电路?

首先我们分析一下为什么要用16和17引脚进行指令的传输。

如果你设计的产品要上线小米之家,那么你肯定要用一个处理器,比如单片机,比如arduino(当然它也算是单片机),比如STM32。

这个处理器肯定要同ESP32进行数据的交互,配网,获取APP下发的指令(MQTT指令),订阅、发布等等,最简洁的方式就是使用串口指令,就相当于我们常说的AT指令,只不过小米的指令集没有AT字样罢了,核心是相同的。

使用这个串口指令集,那么肯定不能老是用下载串口,电子产品是有可靠性要求的,万一出错了怎么办?当然这只是原因之一。

我前期设计的一个东西,用的是IO21接收指令,这里用1617道理是一样的。

单片机发送一个指令给16引脚,ESP32内的小米程序得到这个指令后,就会做出一些响应,然后通过17引脚将响应结果告诉外部,如果外部链接的是单片机,那么就可以根据这个信息进行进一步的响应了,比如你编程让它控制一个继电器开关。

所以,你需要一个USB串口,然后将RXD TXD与1617引脚连接起来,才能达到小米文档中介绍的下一步动作。

焊接的结果是这样的,注意USB串口模块的IO一定要配置成3.3V,否则会烧掉ESP32。

还有一个小细节,就是EN引脚要用一个4.7K的上拉电阻上拉到3.3V,否则不能正常工作。原因就不说了吧。

六、问题解决后的效果

这时,通过串口终端就能正常工作了。下图是securecrt软件的截屏,具体参数配置就不说了。输入echo on,会提示OK,输入model,会提示型号。

我们再试试SSCOM串口助理,输入help指令。弹出这么多。界面不太美观,没有自动换行。

这样,问题就解决了。

入门小米的第一步就迈出去了。

接下来的事情,就可以按照小米官方文档进行操作了。

予人玫瑰,手有余香。

猜你喜欢

转载自blog.csdn.net/youngwah292/article/details/106730700