WiFi 智能插座
(→刷写固件) |
(→准备一片通用模块) |
||
第7行: | 第7行: | ||
[[文件:Esp8266-switch-module.jpg]] | [[文件:Esp8266-switch-module.jpg]] | ||
− | |||
− | |||
− | |||
2017年10月10日 (二) 14:38的版本
目录 |
1 Quick Start
1.1 准备一片通用模块
- GPIO12 控制继电器
- GPIO13 控制板载 Blue/Green LED
- GPIO0 关联按钮,默认拉高,按下接地。刷机时,按住此按钮,通电,即可进入刷机模式
板载另一个红色 LED 硬件指示继电器通断状态(LED 亮为通,灭为断),软件无需操心
1.2 准备 SDK
# clone the whole sdk $ git clone --recursive git://github.com/icamgo/noduino-sdk.git noduino-sdk $ cd noduino-sdk/toolchain $ ./gen.py # generate the toolchain (you need Python 2.7)
更多参考:
- Getting Started with Noduino SDK on Linux
- Getting Started with Noduino SDK on Mac OS X
- Getting Started with Noduino SDK on Windows
1.3 刷写固件
进入插座参考设计,编译固件:
$ cd ../sketch/plug-sonoff $ make
准备一个 USB 转串口板,此处我们使用一个 FT232RL USB 转串口板,此物某宝有售:FT232RL USB 转串口板
用杜邦线把模块引脚按如下规则连上 USB 串口模块和通用插座模块:
- 注意:供电必须为 3.3V,否则会烧坏模块!!
- USB_3V3_VCCIO ---> VCC
- USB_RXD ---> TX
- USB_TXD ---> RX
- USB_GND ---> GND
长按住背面的小按钮开关、通电即进入刷机模式,然后确认一下你的USB转串口的串口设备号,如 Windows 下为 COM6,则:
$ make produce ESPPORT=COM6
1.4 控制演示
打开微信,扫一扫如下二维码:
自动进入如下:
与此同时串口的输出:
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 地址,这个可与串口输出对应
点击第一个设备,进入页面,在页面最下面会有 “绑定设备” 按钮 (如果已经绑定过改设备,最下面的按钮为“进入公众号”),点击按钮,完成设备绑定
完成后,点“进入公众号”,在公众号菜单的 “智能设备”,即可列出你绑定的所有设备
在上面的设备列表页里,触摸一下插座图标的设备,即可进入该设备的控制界面:
点击中间的, On / Off 图标,即可实时控制插座开关 !
2 小K mini 微信控制
2015 年新的小 K 插座,全部使用 ESP8266 方案,由于芯片需求量大, ESP8266 的厂家乐鑫,提供芯片打标服务。看到控客的这个 LOGO,挺唬人的,实际还是 ESP8266:
Noduino SDK 完美支持小 K 刷机,详细分析参考: Hack_mini_K ,快速尝试:
2.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 ../sketch/plug-minik $ make
更多参考:
- Getting Started with Noduino SDK on Linux
- Getting Started with Noduino SDK on Mac OS X
- Getting Started with Noduino SDK on Windows
2.2 进入刷机模式
上面我们已经把小 K 插座 WiFi 模块的 GND, VCC (3.3V), TX, RX 和 GPIO0 焊上杜邦线了
准备一个 USB 转串口板,此处我们使用一个 FT232RL USB 转串口板
如下接线:
- USB_GND -----> miniK_GND
- USB_RXD -----> miniK_TX
- USB_TXD -----> miniK_RX
- USB_GND ------> miniK_GPIO0
以上接好后,最后 USB_VCC3.3 -----> miniK_VCC 通电开机,即进入刷机模式
2.3 刷写固件
还是在 examples/plug-minik 目录下,直接 make flash:
$ make produce
即可上传固件。不同平台下,你的串口设备号可能不一样,确认一下你的串口设备,比如在 Windows 下 FT232RL 板可能被识别为 COM3 (设备管理器里查看),则:
$ make produce ESPPORT=COM7
即可
2.4 尝试
刷入的固件是可用微信控制的,上传完成后,拔掉 GPIO0 ---> GND 的链接,断电重启一下,系统即进入新固件运行。
3 Reference
- miniK: http://bbs.mydigit.cn/read.php?tid=1327613
- 云合:http://bbs.mydigit.cn/read.php?tid=1449956
- ORVIBO: http://bbs.mydigit.cn/read.php?tid=1320858
- 海尔: http://bbs.mydigit.cn/read.php?tid=1098323
- D-Link: http://bbs.mydigit.cn/read.php?tid=865037
- 插排:http://bbs.mydigit.cn/read.php?tid=1291309
- MJYUN Smart Plug