开发者生态
morning
Wi-Fi 智能灯泡中的禁用图书库
2026-06-16
1 阅读
sohkamyung
禁止图书库标签 = [ 赛博朋克 、 黑客 、 硬件 ] 发布于 2026 年 6 月 15 日,太平洋夏令时间 06:35 概述 很久以前,我有一个想法,破解一个 WiFi 智能灯泡,来做一些对我来说更有用的事情。事实上,我对与它们有关的事情有一些不同的想法。其中一个想法是修改设备,使其具有开放的 WiFi 接入点和托管禁书的网络服务器。这个想法是,如果你住在一个禁止你认为重要的书籍的地方,理论上你可以将这本书的数字副本粘贴在其中一个灯泡上。然后你可以去你社区的某个地方安装它。只要灯泡打开,附近的任何人仍然可以访问禁止的材料,前提是他们拥有带 WiFi 的电子设备。由于该设备是一个灯泡,因此很难检测到,并且很可能会被忽视。赛博朋克数字死角。这些设备也相当便宜,因此将它们留在城镇周围希望不会太贵。我认为托管禁书的想法是在阅读本·布朗的短篇小说《图书馆》后产生的。我已经有一段时间没读过它了,但如果我记得故事中的一些角色维护着一个“图书馆”,它充当创意作品、用户手册、3D 模型等的数字档案。其他人可能会觉得有用或有趣的东西,如果它们以某种方式从互联网上删除,你不想丢失它们。这只是故事的一部分,读起来很有趣。你应该去读它!不管怎样,几个月前我决定终于开始从事这个项目。结果就是禁书图书馆!硬件 我在当地 DEFCON 聚会小组中向一些人提出了这个想法。其中一位在家庭自动化方面有一些经验,并建议我研究一下塔斯莫塔。 Tasmota 是一种开源固件,您可以安装在各种智能设备上,将它们集成到家庭自动化系统中,例如 HomeAssistant 。该固件的主要思想是为您提供对设备的本地控制。其中许多设备依赖于云服务,这些服务会随着时间的推移而变化,有时甚至完全消失,导致设备无法使用。 Tasmota 使您能够摆脱这些云服务的束缚,并在内部托管所有内容。事实上,这与本·布朗的图书馆故事又是一个巨大的相似之处。同样相关的是科里·多克托罗(Cory Doctorow)的未经授权的面包。我没听说过塔斯莫塔,但读过相关资料后,这听起来是一个不错的选择。我原本预计许多智能灯泡将依赖 ESP32 芯片或类似芯片。由于没有与他们合作的经验,所以开始时感觉有点令人畏惧。我想也许修改 Tasmota 固件来完成我想要的事情可能比从头开始编写一些东西更容易。我最终没有修改Tasmota,但这个兔子洞确实让我找到了一个销售预装Tasmota的WiFi灯泡的网站。产品页面甚至指定灯泡使用 ESP32C3 4MB 。它还列出了哪些 GPIO 引脚用于控制各种 LED,稍后会派上用场: R:GPIO6 G:GPIO7 B:GPIO5 CW:GPIO3 WW:GPIO4 这似乎是一个很好的起点,因为尽管 Tasmota 支持许多其他设备,但并非所有设备都可以通过无线方式 (OTA) 进行刷新。其中许多需要将它们打开,焊接在小电线上,并通过串行编程器进行闪烁。 Tasmota 有一个内置机制来更新固件 OTA,所以我似乎可以刷新我自己修改的 Tasmota 固件,或者自定义固件,而无需拆开灯泡。令我印象深刻的一个潜在问题是闪存大小。它被列为 4MB。这对于存放图书库来说并不是太大的空间...这 4MB 需要容纳所有固件、网站和任何书籍。空间不大。我认为我可以通过添加存储设备(例如 microSD 读卡器)来克服这个问题。稍后会详细介绍。我买了两个这样的灯泡来玩。我想我可能最终会破坏或变砖,所以有一个备份会很好。拆解 几天后,灯泡出现在主体中,我打开盒子检查一下。我想做的第一件事就是打开它,看看我正在处理什么。我主要想知道引脚是否暴露,以便我可以连接 microSD 读卡器。为了取下顶部的白色塑料灯泡,我在灯泡底座和灯泡之间的灯泡圆周上划了一把刀片。我不得不绕两圈,第二次将刀向下倾斜以切开内部的密封剂。然后我就可以直接扭转并拉下灯泡。损害最小。这显示了一个圆形子板,上面有所有 LED。该 PCB 使用六个引脚连接到下面的另一块 PCB。中间还有一个洞,主板被卡住了一点。这最终成为 ESP32 的天线。灯泡外壳内衬有铝