1. 项目缘起:从“云控”到“本地化”的执念
几年前,我为了图省事和所谓的“智能联动”,一口气买了好几个涂鸦平台的Wi-Fi智能插座。刚开始用着还行,手机App远程开关、定时任务都挺方便。但用久了,问题就来了:有时候网络稍微波动一下,App控制就有延迟,甚至没反应;更让我心里不踏实的是,所有指令都要经过涂鸦的云端服务器中转。这意味着,如果我家宽带断了,或者涂鸦的服务器抽风(虽然概率低,但并非没有先例),这些插座就成了“砖头”,连最基本的本地手动开关都受影响(部分型号物理按钮功能受限)。这种受制于人的感觉,对于一个喜欢折腾智能家居的玩家来说,实在有点憋屈。
后来我接触到了Home Assistant(HA),这个开源的家庭自动化平台让我眼前一亮。它的核心理念之一就是“本地化控制”,尽可能让设备在家庭局域网内通信,摆脱对互联网和厂商云服务的依赖。这样一来,响应速度极快,隐私和安全也更有保障。于是,一个念头就冒了出来:能不能让这些涂鸦插座也“弃暗投明”,脱离厂商云,直接通过本地网络接入HA?
经过一番搜索和研究,我发现这条路是可行的。核心就在于这些插座内部使用的Wi-Fi芯片——BK7231N或BK7231T。这两款由博通集成(Beken)推出的芯片,因其性价比高,被大量用于各类智能家居设备。而开源社区的大神们,已经为它们开发了通用的开源固件,其中最著名的就是 LibreTiny 和 OpenBK7231T/OpenBeken 项目。这些固件可以替换掉设备原厂的涂鸦固件,从而让我们获得设备的完全控制权,并通过MQTT协议实现与Home Assistant的无缝、本地化集成。
简单来说,这个项目就是: 给基于BK7231N/T芯片的涂鸦Wi-Fi智能插座“换脑”(刷写开源固件),使其变身为一台支持MQTT协议的通用智能设备,最终被Home Assistant本地化管理。 接下来,我就把完整的操作流程、踩过的坑以及心得,毫无保留地分享出来。
2. 准备工作:硬件、软件与心理建设
动手之前,确保万事俱备。这个过程有点像给手机刷机,需要特定的工具和清晰的步骤,盲目操作很可能让设备“变砖”。
2.1 硬件清单与拆解要点
-
涂鸦Wi-Fi智能插座(确认芯片型号) :这是主角。你需要拆开插座,确认内部主控芯片确实是BK7231N或BK7231T。通常丝印会直接印在最大的那颗芯片上。 重要提示 :不同批次、不同型号的插座,内部电路板设计可能不同,刷机接线的位置也可能有差异。拆解时务必小心,避免损坏塑料卡扣或内部元件。
-
USB转TTL串口模块(CH340G/CP2102等) :这是电脑与插座芯片通信的“桥梁”。我们需要通过它向芯片发送刷机命令。推荐使用CH340G模块,便宜且兼容性好。
-
杜邦线(母对母) :用于连接TTL模块和插座电路板上的测试点。
-
焊接工具(电烙铁、焊锡丝、助焊剂) :绝大多数情况下,你需要焊接几根线到电路板的测试点上。虽然理论上可以用“免焊探针”顶住触点,但为了稳定性和成功率,强烈建议焊接。
-
3.3V直流电源 :在刷机过程中,需要单独给插座电路板供电。可以从旧的手机充电器、路由器电源上找一个输出为3.3V的,或者使用可调降压模块(如LM2596)从5V降压得到。 千万注意 :TTL模块的VCC引脚(通常是3.3V输出)电流能力有限,不要用它来给整个插座板供电,可能导致刷机不稳定或失败。应使用独立电源。
-
镊子、螺丝刀、万用表 :辅助拆解和测量。
2.2 软件环境部署
-
Python 3.7+ :开源刷机工具通常基于Python。去Python官网下载安装,记得勾选“Add Python to PATH”。
-
开源刷机工具:LibreTiny CLI / OpenBK7231T GUI Tool :
- LibreTiny (LT) :功能强大,命令行操作,支持BK7231N/T等多种芯片,是当前最活跃的项目之一。通过pip安装:
pip install libretiny - OpenBK7231T GUI Tool :带有图形界面的刷机工具,对新手更友好,但可能更新节奏稍慢。可以从其GitHub仓库下载Release版本。
我本次主要使用LibreTiny CLI进行演示,因为它更通用,且能更好地与后续的固件编译流程结合。
- LibreTiny (LT) :功能强大,命令行操作,支持BK7231N/T等多种芯片,是当前最活跃的项目之一。通过pip安装:
-
串口终端工具 :用于查看芯片的串口日志。推荐使用 PuTTY (Windows) 或
screen/minicom(Linux/macOS)。 -
固件文件 :你需要准备要刷入的固件。有两种选择:
- 预编译固件 :从LibreTiny或OpenBeken的GitHub Release页面下载针对“plug”(插座)应用的通用固件文件(
.bin格式)。这是最快的方式。 - 自行编译固件 :如果你想深度自定义功能(如GPIO引脚定义、启用特定传感器),则需要搭建编译环境(安装ESP-IDF或基于其的框架),从源码编译。这对新手有一定门槛,我们后续再讨论。
- 预编译固件 :从LibreTiny或OpenBeken的GitHub Release页面下载针对“plug”(插座)应用的通用固件文件(
-
Home Assistant :当然,你需要一个已经安装并运行起来的HA。安装方式很多,如HassOS、Docker、虚拟机等,请根据自身情况选择。
-
MQTT Broker :这是本地通信的“中转站”。HA本身不直接处理MQTT,需要一个独立的MQTT代理服务器。最常用的就是 Mosquitto 。你可以在HA所在的服务器上安装Mosquitto,或者使用HA官方提供的“Mosquitto broker”插件(最简单)。
2.3 心理与知识准备
- 风险告知 :刷机有风险,可能永久损坏设备。请确保你理解每一步操作的意义,并在闲置设备上先行


399

被折叠的 条评论
为什么被折叠?



