Fixup AI Thinker Plug
目录 |
1 概述
原插座继电器选型质量略差,前端也没有继电器去火花泄流保护
在大功率感性负载(比如家用吸尘器、吹风机)、容性负载(白炽灯)通断的瞬间,都会有数倍到数十倍的瞬时大电流和瞬时高压
如果继电器的触点材料稍差的话都会出现粘连现象
2 电路修正
220V 入端,并一个压敏电阻,型号:7D471K
3 资源布局
- GPIO4 control the relay
- GPIO5 related to the key (pull up, pressed is low)
- GPIO13 control the Green LED
- GPIO12 control the Red LED to show the state of the relay
- GPIO4 控制继电器
- GPIO5 关联按钮,短按手动开关继电器,长按恢复出厂设置(需重新配置 WiFi)
- GPIO12 控制红色 LED,指示继电器状态
- GPIO13 控制绿色 LED,指示插座联网和 WiFi 配置状态
4 刷入新固件
4.1 准备固件
获取 noduino-sdk:
$ git clone --recursive git://github.com/icamgo/noduino-sdk.git noduino-sdk
生成 toolchain (you need Python 2.7):
$ cd noduino-sdk/toolchain $ ./gen.py
编译:
$ cd ../examples/plug-aithinker $ make
各平台下,Noduino SDK 使用,更多参考:
- Getting Started with Noduino SDK on Linux
- Getting Started with Noduino SDK on Mac OS X
- Getting Started with Noduino SDK on Windows
4.2 进入刷机模式
准备一个 USB 转串口板,此处我们使用一个 FT232RL USB 转串口板,此物某宝有售:FT232RL USB 转串口板
借助逻辑分析仪器的夹子,可以无须焊接即可实现串口刷机。如下接线:
- FT232_GND -----> Plug_GND
- FT232_RXD -----> Plug_TX
- FT232_TXD -----> Plug_RX
- FT232_GND ------> Plug_GPIO0 (这根线需要手工顶一下,GPIO0 / IO0 在模块的背面)
以上接好后,最后 FT232_VCC3.3 ---> Plug_3.3V 通电开机,即进入刷机模式
4.3 刷写固件
还是在 examples/plug-mjyun 目录下,直接 make flash:
$ make flash
即可上传固件。不同平台下,你的串口设备号可能不一样,确认一下你的串口设备,比如在 Windows 下 FT232RL 板可能被识别为 COM3 (设备管理器里查看),则:
$ make flash ESPPORT=COM3
即可
4.4 尝试
刷入的固件是可用微信控制的,上传完成后,拔掉 GPIO0 ---> GND 的链接,断电重启一下,系统即进入新固件运行。
打开微信,扫一扫如下二维码:
自动进入如下:
与此同时串口的输出:
bcn 0 del if1 usl mode : sta(18:fe:34:f9:0f:17) add if0 SC version: V2.5.1 f r0, scandone f r0, scandone SC_STATUS_FIND_CHANNEL
表示此时设备在等待配网
点上图中的 "配置设备上网" 进入:
输入您的路由密码,点 “连接”,等待配网完成(注意,目前此快速配网模式不支持 5G 路由,只支持 2.4G;另外企业级安全认证也不支持)
WiFi 配置完成后,微信自动进入局域网发现设备模式,其会列出当前路由环境里同一类型的设备列表:
第一个设备,最后四个字母是为该设备的 MAC 地址,这个可与串口输出对应
点击第一个设备,进入页面,在页面最下面会有 “绑定设备” 按钮 (如果已经绑定过改设备,最下面的按钮为“进入公众号”),点击按钮,完成设备绑定
完成后,点“进入公众号”,在公众号菜单的 “Devices”,即可列出你绑定的所有设备