技术宅硬核跨年,DIY墨水屏日历:自动刷新位置、天气,随机播放2000多条「毒鸡汤」| 开源

动手整起来?

贾浩楠 鱼羊 发自 凹非寺
量子位 报道 | 公众号 QbitAI

自制一个电子墨水屏日历,需要几步?

是能自动刷新位置、天气情况,还能随机播放2000多条毒鸡汤的那种。

↑↑↑就像这样:如果我的人生是一部电影,那你就是一个弹出来的广告。每10分钟会刷新一条。

配上相框,相比于网购平台上售价299元的这一款,你觉得能打几分?

这样的一款新“产品”,来自微博博主@张欣 | Kenn。

并且,他还把制作方法开源了。

不妨一起来看个究竟~

硬件准备

@张欣 | Kenn决定制作这样一款电子墨水屏,缘起是看到了网络购物平台上出售的类似产品。

产品挺有意思,但想要点毒鸡汤那个味儿,还是得自己动手DIY一下。

直接来看方案。

屏幕,231元

首先是是屏幕。类似手机、智慧屏这类的硬件中,屏幕一般是最贵的部分。

张欣参考了网售产品的方案,选择了单价不太高的微雪电子5.83寸黑白电子墨水屏。

这款屏幕型号叫e-paper,648×480分辨率,SPI接口,售价231元

同时,这款屏幕也采用了当下比较流行的串口形式。与并口连接相比,串口屏只需要2根线链接通信,且控制程序简单,比并口屏少90%。

有的串口屏甚至不再需要MCU,可以直接控制。

对于DIY电子产品来说,串口屏比较合适。

如果你打算用树莓派或者其他Arduino设备来驱动,可以选择带有适配板的套装,价格为283.5元。

此外,类似型号电子屏还有彩色版本,不过成本也更高。

假如你真的采用了彩色屏,可能需要修改原作者的代码才能适用。

计算单元,78.75元

张欣采用了乐鑫的ESP32芯片

ESP32芯片自带2.4G无线网络和蓝牙,有充足的引脚。

并且,当前市场上能买到很多成熟的ESP32开发板。

当然,要是够硬核,可以自己买基于ESP32的模组,然后整合到板子里。

要注意的是,这两种方式都需要买屏幕时顺便买适配板,好将屏幕的软排线转换为SPI接口。

作者为了快速做出成品,选用微雪自带软排线接口、基于ESP32的墨水屏开发板,价格78.75元。

电源,50元以内

其实,在开发时,可以通过电脑上的USB接口用micro USB线直接供电,同时进行调试工作。

但如果要在实际使用中摆脱电源线的话,可以直接购买一块自带micro USB充放接口的锂电池。

电池的容量不同价格也不一样,不过一般都在50元以下。

最后计算一下,DIY相同墨水屏的成本最多为231+78.75+50=359.75元

咋还比网购平台上的贵了呢。(手动狗头)

其实很好理解,所有部件按零售价购买,自然比厂家进货价贵。

但技术宅享受的,不就是自己动手的乐趣吗?

软件方案

准备好了硬件,软件部分又要如何实现?

框架部分,张欣选择了Arduino,因为里面有大量现成的第三方库可以使用。

开发工具方面,他则推荐使用Visual Studio Code。

具体而言,该项目的代码主要实现了以下几个功能。

首先,规划屏幕布局,并且每10分钟刷新一次屏幕,实时更换毒鸡汤的口味。

△图源:微博博主@张欣 | Kenn

现成的毒鸡汤,一共有2000+款,像是:

生活不只眼前的苟且,还有未来的苟且

祝你瘦成一道闪电,闪电直径两米。

……

完整内容,在该项目的toxicsoul.h文件中可以看到。

日期使用的是ESP32系统自带的时钟。

位置则通过查询当前设备的IP地址来获得。

△部分代码

实时天气信息,来自和风天气开发平台的服务。在具体实现的时候,需要自己注册账号,获取应用程序Key。

const String QWEATHER_API_KEY = “**“;

其中涉及的第三方库主要包括:

 

  • Adafruit GFX:图像图形引擎,实现显示输出
  • GxEPD2:基于Adafruit_GFX库驱动各种电子墨水屏
  • U8g2 for Adafruit GFX:显示文字
  • u8g2_fontmaker:一个用于生成u8g2字体源代码的一键懒人脚本工具,同样出自项目作者之手
  • ArduinoJSON:处理JSON字符串

 

一切准备就绪,把程序烧录到开发板里,再用热熔胶等DIY必备工具组装一番,接上电源,毒鸡汤电子墨水屏日历就诞生了。

网友:搞起来

这个毒鸡汤电子墨水屏日历在元旦当天初步完成施工,就收获了网友们热烈的点赞。

不少网友当场表示,奈斯啊,搞起来。

还有网友当场提起了新需求(手动狗头):

想把前一天的日报统计显示出来。

有关续航方面的信息,作者也在评论区做出了解答:

还没有时间或者说条件测功率消耗,其实代码优化点,刷新后就把屏幕和ESP32休眠,刷新时间间隔拉长,耗电量会很低很低……

关于作者

张欣,本科就读于北京化工大学计算机系,硕士在中国科学院大学就读。

曾供职微软高级产品顾问,一直从事与微软平台下的项目开发,对于.NET平台、数据库、多层架构设计有着丰富经验,参与并主导过多个大型应用系统的架构设计以及研发、实施工作。

他还是微软的MVP(微软最有价值专家)。

以上,传送完毕。看完这些,你是否也有一丝心动?

那么,动手搞起来?毕竟——

只要我肯努力,没什么事情是我搞不砸的。

(手动狗头)

项目地址
https://github.com/breakstring/eInkCalendarOfToxicSoul

— 完 —

版权所有,未经授权不得以任何形式转载及使用,违者必究。