编者按:本文来自微信公众号“大数据文摘”(ID:BigDataDigest),作者:Caleb,36氪经授权发布。
每逢佳节逛宜家的你,或许知道这款神奇的LED电灯。
这款售价大约20美元的电灯TRÅDFRI,可以随时进行调暗或调亮、设定想要的颜色,以及拿来玩《毁灭战士》。
是的,你没有看错。
因为TRÅDFRI的颜色调整功能,可以想象,其内部拥有一个计算机系统,而只要对其稍加改造,《毁灭战士》什么的,根本不在话下。
还是不信?实机演示一段:
怎么样,除了屏幕略小以外,整个操作手感还是相当丝滑的。
接下来就和文摘菌一起来揭秘这个神奇的电灯吧~
这个项目的来源还要追溯到一条假新闻。
去年多家外媒报道,有人成功地在验孕棒上运行了《毁灭战士》。
但其实,整个项目是在PC端运行的,所以作者并没有将其移植到验孕棒或Cortex M4板上。
但不管怎么样,这不失为一个有创意的想法。
在一次偶然的机会下,next-hack的一个团队发现宜家TRÅDFRI LED1923R5灯具有很好的 MCU,以及96+12kB的RAM(总共108kB),1MB的闪存,和一个80MHz的Cortex M33。
更准确地说,这款新的宜家灯使用来自Silicon Labs的MGM210L射频模块,该模块是基于EFR32MG21射频微控制器。
台灯到货后,要用切割器将灯的塑料顶部弹出,同时还需要切割将其固定到位的胶水。之后,取下两个小螺丝,用小钳子取下LED PCB。
然后就可以移除金属散热器,以露出高压AC/DC转换器,用钳子将它从灯中拉出。拆卸完成后大概是这样:
但其实,文摘菌要在这里拆个台,TRÅDFRI台灯不是必需的,我们需要的只是它内部的MGM210L模块而已。(工具灯实锤)
然后,需要从PCB中取出电源线和IO线。为此,他们使用了一块原型板,将其成型为接受带有RF模块的DC-DC板。为了后续安装的方便也可以在上面做一个切口。
电线连接到三个接头,将模块插入另一个原型板,该板将包含该项目的所有其他内容。
接着,还需要把电线直接焊接到DC-DC板触点上,3个母头用于连接射频板,连接2针接头的音频部分。从背部看,已经变得眼花缭乱了。
然后是键盘的部分:
毕竟这还只是一个电灯,还需要额外配备一个显示器,在这里选择廉价的彩色1.8英寸TFT 160×128 SPI显示器。该显示器具有兼容的ILI9163或ST7735S控制器,并且它们需要以16MHz运行。
由于最终处理器不足以存储WAD文件(共享软件版本至少为4.1MB)。综合考虑之下,他们选用了外部SPI存储器。
在输入设备上,由于《毁灭战士》需要最少的键数是7或8,74HC165移位寄存器是不二之选。
硬件原理图如下:
在编程上,该器件使用任何兼容JLink的SWD编程器进行编程。在编程结束时,可能会收到错误消息提示,直接忽略就行。
在GitHub中,存在已经转换好的共享软件DOOM1.wad(mg21DOOM1.wad)。如果WAD与共享软件版本不同,需要将其转换为与此端口兼容的特定格式。
GitHub链接:
https://github.com/next-hack/MG21DOOM
转换后的WAD需要通过YMODEM协议发送到内部闪存。对于此,还需要一个USB到TTL UART的转换器。
上传wad的时候,记得打开设备电源,然后按住“use”“change weapon” 和“alt”,以启动Ymodem接收。
下载完成后重置设备,你就能看到《毁灭战士》开始运行了!
想要了解安装过程中的细节部分,以及注意事项,可以点击下方链接:
https://next-hack.com/index.php/2021/06/12/lets-port-doom-to-an-ikea-tradfri-lamp/
在黑客界,有一项由来已久的传统,那就是在看似不能运行《毁灭战士》的设备上,尝试去运行。
目前,这款开源射击游戏已经可以在广告牌卡车、烤面包机以及灯泡等各种设备上运行了。
比如2014年,澳大利亚黑客团队在ATM机上成功运行了《毁灭战士》。该团队使用ATM机上自带的控制按钮,没有借助外置控制器,不过他们仍然需要自制的软件和特定的电路板来将取款按键映射成开枪按键。
这些人还希望能利用上ATM机上的其它硬件部分,比如用菜单按钮更换武器、用数字键盘来控制人物移动或者让小票打印机打印出玩家完成的游戏关卡。
同年,英国一个研究小组利用佳能PIXMA打印机的web界面修改打印机的固件,从而运行了这款经典游戏。
但这也引起了人们的担忧。该作者就表示,“如果你能在打印机上运行《毁灭战士》,那么你也可以做一些更恶意的事。毕竟在公司环境中,没有人会去怀疑打印机。”
安全和发明脑洞,似乎无法兼得,对于如此矛盾,你怎么看?
https://www.vice.com/en/article/3aqa9y/you-can-play-doom-on-an-ikea-lamp
https://next-hack.com/index.php/2021/06/12/lets-port-doom-to-an-ikea-tradfri-lamp/