3.88美元能买什么?
在沃尔玛,这大概只能买到一个最廉价的模拟挂钟。塑料外壳,粗糙的走针,除了挂在墙上提醒你“时间在流逝”之外,毫无科技感可言。
但在极客眼里,这不仅仅是时钟,这是一块未被雕琢的电路板,是一次向消费主义宣战的绝佳机会。
有人真的动手了。他把这个3.88美元的廉价货,硬生生改造成了一台联网的、自动校准的、甚至带记忆功能的智能时钟。
说实话,这比直接买个几百块的智能挂钟,酷太多了。
当极客走进沃尔玛
事情的起因很简单,GitHub用户jim11662418在当地的沃尔玛看到了这个只要3.88美元的模拟石英钟。
普通人看到的是廉价,他看到的是——Lavet步进电机。
这种电机是模拟时钟的心脏,通常由一个石英振荡器控制。但这位老兄的想法是:把那个蠢笨的石英振荡器扔掉,换上ESP8266。
这不仅仅是换个电池,这是“换心手术”。
项目用的核心是一块WEMOS D1 Mini ESP8266模块。它的任务只有一个:连接NTP(网络时间协议)服务器,把互联网上的原子级时间,直接灌进这个廉价的塑料壳子里。
给塑料垃圾做“开颅手术”
如果你以为这像插USB线一样简单,那你就错了。
要把ESP8266塞进去,你得先把时钟机芯撬开。大多数廉价时钟是卡扣固定的,没有螺丝,这还好办。
真正的噩梦是线圈。
你需要断开内部线圈与石英振荡器的连接,然后把线焊接到ESP8266上。听起来很常规?素材里特意加了一句警告:
“小心处理线圈。线圈导线通常比人的头发还细,极其脆弱。”
稍微手抖一下,这3.88美元的项目就变成了废品。
它不会倒着走,但会疯狂追赶
硬件搞定了,软件的逻辑更有意思。
这个ESP8266是个急脾气。它每秒钟要对比10次时间——看看墙上这个3.88美元的钟走得准不准。
如果发现慢了,它会发送双极脉冲(正负交替),推着秒针疯狂追赶,直到追上互联网的标准时间。
那如果快了呢?
这就有意思了,因为这种廉价机芯通常不能倒转。所以作者写了个很“佛系”的逻辑:如果钟快了,ESP8266就暂停发脉冲,等着现实时间追上来。
那个不到1美元的“救命”芯片
这里有个巨大的坑。
这些廉价时钟没有任何反馈机制。也就是说,ESP8266发个电脉冲,指针动一下,但动到哪了,它是不知道的。
一旦断电,ESP8266重启,它就会“失忆”。它不知道时针分针在哪,整个时钟就废了。
为了解决这个问题,作者引入了一个极其冷门但好用的芯片:Microchip 47L04 Serial EERAM。
这是一个带EEPROM备份的4Kbit SRAM。
有意思的是,评论区里有人专门夸了这个选型。普通的EEPROM读写次数有限,频繁记录指针位置很快就会写坏。但这颗EERAM既有SRAM的速度,又有断电保存的能力,而且单价不到1美元。
ESP8266每动一下指针,就把位置存进这颗芯片里。哪怕拔掉插头,再插上,它也能读出上次指针停在哪,无缝衔接。
为什么我们渴望“可被破坏”的乐趣?
这个项目在GitHub和Hacker News上火了。
为什么?大家缺时钟吗?显然不缺。
看看评论区的声音,你会发现一种集体情绪的宣泄。
有人说:“这太酷了,现在越来越多的东西被锁死,不友好。我渴望这种简单、可靠、可被黑客攻击的东西。”
还有人提到,家里的“原子钟”因为信号弱根本收不到校准信号,反而成了摆设。倒不如这种自己动手改造的“土法炼钢”来得实在。
甚至有人想把这种逻辑移植到投影时钟上,或者用GPS代替Wi-Fi,彻底摆脱对网络的依赖。
我个人觉得,这才是科技该有的样子。
不是厂商给你什么你就用什么,而是你觉得它不顺手,就有能力把它拆开,改成你想要的样子。
哪怕只是一个3.88美元的沃尔玛时钟。
参考链接:
https://github.com/jim11662418/ESP8266_WiFi_Analog_Clock