技術(shù)宅硬核跨年,DIY墨水屏日歷:自動刷新位置、天氣,隨機播放2000多條「毒雞湯」| 開源
動手整起來?
賈浩楠 魚羊 發(fā)自 凹非寺
量子位 報道 | 公眾號 QbitAI
自制一個電子墨水屏日歷,需要幾步?
是能自動刷新位置、天氣情況,還能隨機播放2000多條毒雞湯的那種。
↑↑↑就像這樣:如果我的人生是一部電影,那你就是一個彈出來的廣告。每10分鐘會刷新一條。
配上相框,相比于網(wǎng)購平臺上售價299元的這一款,你覺得能打幾分?
這樣的一款新“產(chǎn)品”,來自微博博主@張欣 | Kenn。
并且,他還把制作方法開源了。
不妨一起來看個究竟~
硬件準(zhǔn)備
@張欣 | Kenn決定制作這樣一款電子墨水屏,緣起是看到了網(wǎng)絡(luò)購物平臺上出售的類似產(chǎn)品。
產(chǎn)品挺有意思,但想要點毒雞湯那個味兒,還是得自己動手DIY一下。
直接來看方案。
屏幕,231元
首先是是屏幕。類似手機、智慧屏這類的硬件中,屏幕一般是最貴的部分。
張欣參考了網(wǎng)售產(chǎn)品的方案,選擇了單價不太高的微雪電子5.83寸黑白電子墨水屏。
這款屏幕型號叫e-paper,648×480分辨率,SPI接口,售價231元。
同時,這款屏幕也采用了當(dāng)下比較流行的串口形式。與并口連接相比,串口屏只需要2根線鏈接通信,且控制程序簡單,比并口屏少90%。
有的串口屏甚至不再需要MCU,可以直接控制。
對于DIY電子產(chǎn)品來說,串口屏比較合適。
如果你打算用樹莓派或者其他Arduino設(shè)備來驅(qū)動,可以選擇帶有適配板的套裝,價格為283.5元。
此外,類似型號電子屏還有彩色版本,不過成本也更高。
假如你真的采用了彩色屏,可能需要修改原作者的代碼才能適用。
計算單元,78.75元
張欣采用了樂鑫的ESP32芯片。
ESP32芯片自帶2.4G無線網(wǎng)絡(luò)和藍牙,有充足的引腳。
并且,當(dāng)前市場上能買到很多成熟的ESP32開發(fā)板。
當(dāng)然,要是夠硬核,可以自己買基于ESP32的模組,然后整合到板子里。
要注意的是,這兩種方式都需要買屏幕時順便買適配板,好將屏幕的軟排線轉(zhuǎn)換為SPI接口。
作者為了快速做出成品,選用微雪自帶軟排線接口、基于ESP32的墨水屏開發(fā)板,價格78.75元。
電源,50元以內(nèi)
其實,在開發(fā)時,可以通過電腦上的USB接口用micro USB線直接供電,同時進行調(diào)試工作。
但如果要在實際使用中擺脫電源線的話,可以直接購買一塊自帶micro USB充放接口的鋰電池。
電池的容量不同價格也不一樣,不過一般都在50元以下。
最后計算一下,DIY相同墨水屏的成本最多為231+78.75+50=359.75元。
咋還比網(wǎng)購平臺上的貴了呢。(手動狗頭)
其實很好理解,所有部件按零售價購買,自然比廠家進貨價貴。
但技術(shù)宅享受的,不就是自己動手的樂趣嗎?
軟件方案
準(zhǔn)備好了硬件,軟件部分又要如何實現(xiàn)?
框架部分,張欣選擇了Arduino,因為里面有大量現(xiàn)成的第三方庫可以使用。
開發(fā)工具方面,他則推薦使用Visual Studio Code。
具體而言,該項目的代碼主要實現(xiàn)了以下幾個功能。
首先,規(guī)劃屏幕布局,并且每10分鐘刷新一次屏幕,實時更換毒雞湯的口味。
△圖源:微博博主@張欣 | Kenn
現(xiàn)成的毒雞湯,一共有2000+款,像是:
生活不只眼前的茍且,還有未來的茍且
祝你瘦成一道閃電,閃電直徑兩米。
……
完整內(nèi)容,在該項目的toxicsoul.h文件中可以看到。
日期使用的是ESP32系統(tǒng)自帶的時鐘。
位置則通過查詢當(dāng)前設(shè)備的IP地址來獲得。
△部分代碼
實時天氣信息,來自和風(fēng)天氣開發(fā)平臺的服務(wù)。在具體實現(xiàn)的時候,需要自己注冊賬號,獲取應(yīng)用程序Key。
const String QWEATHER_API_KEY = “**“;
其中涉及的第三方庫主要包括:
- Adafruit GFX:圖像圖形引擎,實現(xiàn)顯示輸出
- GxEPD2:基于Adafruit_GFX庫驅(qū)動各種電子墨水屏
- U8g2 for Adafruit GFX:顯示文字
- u8g2_fontmaker:一個用于生成u8g2字體源代碼的一鍵懶人腳本工具,同樣出自項目作者之手
- ArduinoJSON:處理JSON字符串
一切準(zhǔn)備就緒,把程序燒錄到開發(fā)板里,再用熱熔膠等DIY必備工具組裝一番,接上電源,毒雞湯電子墨水屏日歷就誕生了。
網(wǎng)友:搞起來
這個毒雞湯電子墨水屏日歷在元旦當(dāng)天初步完成施工,就收獲了網(wǎng)友們熱烈的點贊。
不少網(wǎng)友當(dāng)場表示,奈斯啊,搞起來。
還有網(wǎng)友當(dāng)場提起了新需求(手動狗頭):
想把前一天的日報統(tǒng)計顯示出來。
有關(guān)續(xù)航方面的信息,作者也在評論區(qū)做出了解答:
還沒有時間或者說條件測功率消耗,其實代碼優(yōu)化點,刷新后就把屏幕和ESP32休眠,刷新時間間隔拉長,耗電量會很低很低……
關(guān)于作者
張欣,本科就讀于北京化工大學(xué)計算機系,碩士在中國科學(xué)院大學(xué)就讀。
曾供職微軟高級產(chǎn)品顧問,一直從事與微軟平臺下的項目開發(fā),對于.NET平臺、數(shù)據(jù)庫、多層架構(gòu)設(shè)計有著豐富經(jīng)驗,參與并主導(dǎo)過多個大型應(yīng)用系統(tǒng)的架構(gòu)設(shè)計以及研發(fā)、實施工作。
他還是微軟的MVP(微軟最有價值專家)。
以上,傳送完畢。看完這些,你是否也有一絲心動?
那么,動手搞起來?畢竟——
只要我肯努力,沒什么事情是我搞不砸的。
(手動狗頭)
項目地址:
https://github.com/breakstring/eInkCalendarOfToxicSoul
— 完 —




