智能家居 | 手把手教你自制原生 HomeKit 智能开关,成本仅 10 元!

编程知识 更新时间:2023-04-30 00:29:16

图片如无法访问请查看原文,后期更新也会在原文修改:智能家居 | 手把手教你自制原生 HomeKit 智能开关,成本仅 10 元! https://blog.wangtwothree/smart_home/117.html

鉴于目前在售的智能开关都价格不菲,本文就教大家利用 ESP-01/01S 芯片配合继电器来实现原生苹果家庭支持,成本只需要 10 元!

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pyeImdSQ-1606836514200)(https://cdn.error.work/imgur/yFdR7Z0.png ‘‘图片title’’)]

废话不多说,开干

准备

ESP-01 长这样:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EvLnJHMz-1606836514204)(https://cdn.error.work/imgur/pN1MBLA.png ‘‘图片title’’)]

继电器长这样:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-b5a9pHBa-1606836514207)(https://cdn.error.work/imgur/4LFukcx.png ‘‘图片title’’)]

烧录器长这样:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QgR09vvn-1606836514210)(https://cdn.error.work/imgur/BDer7sM.png ‘‘图片title’’)]

实现原理

通过 CH340C 烧录器给 ESP-01 模块刷入可供 HomeKit 识别的固件(Home Accessory Architect),ESP 通过继电器的开关控制线路的通断从而控制设备开关。

烧录固件

首先这里是官方的安装教程:https://github/RavenSystem/esp-homekit-devices/wiki/Installation

官方有多种安装教程,这里我就选用其中一种自己认为最简单的(使用 esptool.py 烧录)来给大家演示

1、esptool.py 安装

esptool.py 是乐鑫提供的开源库工具,用于乐鑫 ESP8285, ESP8266, ESP32, ESP32-S等系列芯片和 ROM Bootloader(即:一级 bootloader)通讯,从而实现:固件烧录,flash 擦除,flash 读取,读 MAC 地址,读 flash id ,elf 文件转 bin 等常用功能;

官方介绍:https://github/espressif/esptool/blob/master/README.md

如下 shell 命令任选其一,执行成功即可安装:

pip install esptool

python -m pip install esptool

pip3 install esptool

2、下载 HAA 的二进制文件

https://github/RavenSystem/haa/releases/latest/download/fullhaaboot.bin

3、将 ESP-01 插入烧录器,如下图:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NFqtHT9M-1606836514212)(https://cdn.error.work/imgur/7eVCof2.png ‘‘图片title’’)]

然后将设备插入电脑的 USB 口

4、找到刚刚插入的设备端口

我这里使用的是 MAC 电脑,执行以下命令查看 USB 端口:

ls /dev/cu.*

如图红色圈出的即为我的 ESP-01 设备,如果不知道哪个是,可尝试先拔出,执行命令,然后再插入,执行命令,看看哪个端口有变化

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ROA1nb2x-1606836514213)(https://cdn.error.work/imgur/neaKb5P.png ‘‘图片title’’)]

Windows 可在设备管理器中查看,大概长这样,同样也是插拔一下,看看哪个端口是 ESP-01:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FqMVVebE-1606836514214)(https://cdn.error.work/imgur/oMr24yO.png ‘‘图片title’’)]

5、使用 esptool.py 擦除 ESP-01 的 flash:

将以下命令中的端口号替换为你上一步骤找到的端口号,然后执行

esptool.py -p 端口号 erase_flash

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0LycNdyq-1606836514215)(https://cdn.error.work/imgur/cmUc3Ow.png ‘‘图片title’’)]

命令执行完后 ESP-01 会自动重启

6、开始烧录固件:

同样,将以下命令中的端口号修改为你自己的端口号,bin 文件地址修改为第 2 步骤下载的文件地址,然后执行

esptool.py -p 端口号 --baud 115200 write_flash -fs 1MB -fm dout -ff 40m 0x0 fullhaaboot.bin

注意: 如果使用旧版本的 esptool,则必须更改为 -fs 1MB-fs 8m

不出意外的话,就是下图这样的情况了,然后 ESP-01 又会重启了

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FMlhDzW2-1606836514215)(https://cdn.error.work/imgur/va68eaR.png ‘‘图片title’’)]

7、给 ESP-01 联网,并添加配置

打开电脑或者手机的 WIFI,找到 HAA- 开头的热点,连她

然后就会自动打开如下界面,如果没有自动打开,连接热点后访问 http://192.168.4.1 也可打开如下界面:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Af54TO76-1606836514216)(https://cdn.error.work/imgur/yGECFQh.png ‘‘图片title’’)]

复制下面内容到 Json Config 位置:

{"c":{"l":1,"b":[{"g":2,"t":5}]},"a":[{"t":1,"s":1,"0":{"r":[{"g":0,"v":1}]},"1":{"r":[{"g":0,"v":0}]},"b":[{"g":2}]}]}

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-A5SLZx14-1606836514217)(https://cdn.error.work/imgur/mMPb40v.png ‘‘图片title’’)]

然后在下边点击选择你要连接的 WIFI,如果没看到你的 WIFI,可以点击 WIFI Networks 刷新,选择后在下边输入所选 WIFI 的密码

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hGsfdER9-1606836514218)(https://cdn.error.work/imgur/hZl40Vh.png ‘‘图片title’’)]

其他的地方不用动,然后点击上边的 Save 按钮,保存配置

保存后 ESP-01 会自动配置,一般情况大约需要等待 10 分钟左右,配置成功继电器上的灯会亮起,期间保持设备通电。

要查看实时进度,可使用如下命令(端口号换成自己的):

screen 端口号 115200

注意:如果安装失败,则必须从步骤 5 再次启动所有进程。

如果看到日志输出 HAA Sysparam ready 那就是 OK 啦

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-a9vR8aWV-1606836514218)(https://cdn.error.work/imgur/TMRWkux.png ‘‘图片title’’)]

继电器安装

接下来就可以把烧录器从电脑上拔下来,并把 ESP-01 插到继电器上

ESP-01 需要 3.3V 供电,继电器会自动将 5V 降为 3.3V,所以可以连接 5V 的充电宝或手机充电器电源到继电器,接线图如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xtVO9AtH-1606836514219)(https://cdn.error.work/imgur/E9asZul.png ‘‘图片title’’)]

添加开关进苹果家庭

通电后,如果继电器上蓝色灯长亮那就说明智能开关制作成功了,如果灯一直开关不停,那就是烧写固件有问题,需要重新烧写固件

如下图,我把继电器接到了我的充电宝上:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4IPW9HkP-1606836514220)(https://cdn.error.work/imgur/5EjPLBb.png ‘‘图片title’’)]

没问题的就可以打开苹果家庭应用添加开关了,首先打开苹果家庭,点击右上角 + ,选择添加配件,然后选择 我没有或无法扫描代码

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Cv6imA5f-1606836514221)(https://cdn.error.work/imgur/BDF9yF8.png ‘‘图片title’’)]

然后选择 我的配件未在此处显示

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-bK6Zmhwr-1606836514222)(https://cdn.error.work/imgur/H4FUFlR.png ‘‘图片title’’)]

接下来选手动输入代码
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fx2eKBDz-1606836514222)(https://cdn.error.work/imgur/eNLhqtV.png ‘‘图片title’’)]

输入如下代码,点击继续,等待一会即可添加成功(此处等待时间较长)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HPg2OT03-1606836514223)(https://cdn.error.work/imgur/rOytXCU.png ‘‘图片title’’)]

添加成功就可以愉快的玩耍了,点击开关看看继电器上的蓝色小灯是不是相应的开关了

接入控制电器

经过前边的步骤,你的智能开关已经顺利的接入苹果家庭了, 接下来就是怎么应用继电器了,让我们来看一下接线图(黑色是负极)

如果不需要接 220V:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VDa46Fz2-1606836514224)(https://cdn.error.work/imgur/LEt1rkv.png ‘‘图片title’’)]

如果要接入家用 220V 交流电,需要增加一个 220v 转 5v700mA 的降压模块:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uk8FizBb-1606836514224)(https://cdn.error.work/imgur/4HfSGss.png ‘‘图片title’’)]

我这边是做了一个 USB 接口,用来控制我的屏幕挂灯:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rVTvr5Fu-1606836514225)(https://cdn.error.work/imgur/I8MSNYC.png ‘‘图片title’’)]

大功告成!

更多推荐

智能家居 | 手把手教你自制原生 HomeKit 智能开关,成本仅 10 元!

本文发布于:2023-04-22 07:45:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/f2f40dfbcf39daed7aa69ed17bb5a9d2.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:手把手教你   智能家居   成本   智能   HomeKit

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!

  • 95392文章数
  • 24060阅读数
  • 0评论数