步驟1:硬件列表
TTGO T5板$ 17
Adafruit TPL5110板$ 5
Adafruit Perma-Proto四分之一板(可選)$ 0.71(最低訂單$ 8.50)
鋰聚合物電池1200毫安10美元(或其他合適的電源)
JST PH 2針電纜 - 公頭#0.75
220 uF電容器
步驟2:工具
烙鐵
剝線器
鋰電池充電器,如此。
步驟3:組裝硬件





如圖所示,組裝硬件非常簡單。我使用了Adafruit Perma-proto板,它像普通的原型板一樣,除了它像面包板一樣布局,與面包板具有相同的電氣連接,這很不錯(cuò)。由于我只需要幾個(gè)連接,并希望將整個(gè)組件裝入一個(gè)小盒子,我用Dremel切割輪將其中一塊板切成四分之一。
220 uF電容非常重要。沒有它,TPL5110將永遠(yuǎn)不會(huì)打開T5。有點(diǎn)不清楚為什么,但使用TPL5110的其他人也遇到了同樣的問題。也許ESP32在啟動(dòng)時(shí)比TTL5110可以提供更多的電流?
不要硬連接電池。使用JST-PH電纜,您可以斷開電池充電。如果TPL5110“打開”,可能有辦法從T5通過TPL5110向T55110充電,但是我不能保證這種技術(shù)。
我做了一個(gè)木箱作為外殼,但任何最小內(nèi)部尺寸為1.5“x 2.75”x 1“的東西都可以使用。
步驟4:調(diào)整時(shí)序
TPL5110板上有一個(gè)微調(diào)電位器,用于設(shè)置TPL5110喚醒的時(shí)間間隔。用一把小螺絲刀逆時(shí)針旋轉(zhuǎn)。在我的電路板上,這將間隔設(shè)置為145分鐘,實(shí)際上超過規(guī)定的最大值120分鐘,但它的工作和一致性將比每120分鐘喚醒更省電,所以我使用它。您不需要精確地知道間隔,因?yàn)槟繕?biāo)只是每天大約凌晨4點(diǎn)大致下載一次數(shù)據(jù)。您可以在env_config.h中指定間隔(例如,145分鐘)和喚醒時(shí)間(例如,凌晨4點(diǎn))。
(如果您想更好地控制其他項(xiàng)目的時(shí)序,TPL5110板已經(jīng)有了您可以切斷背面的跡線以禁用電位計(jì)。然后根據(jù)此圖表將電阻連接到延遲引腳,電阻確定間隔。)
步驟5:軟件
您將需要帶有ESP32軟件包的Arduino IDE。在IDE中,將您的電路板設(shè)置為“ESP32開發(fā)模塊”。
該草圖可在https://github.com/jasonful/Tides獲得,需要3個(gè)庫:
“ESP8266氣象站”,可從Arduino圖書館經(jīng)理(或此處)獲得。您只需要這6個(gè)文件:ESPHTTPClient.h,ESPWiFi.h,OpenWeatherMapCurrent.cpp,OpenWeatherMapCurrent.h,OpenWeatherMapForecast.cpp,OpenWeatherMapForecast.h并可以刪除其余文件。
“Json Streaming Parser”可從Arduino Library Manager(或此處)獲得
https://github.com/LilyGO/TTGO-Epape-T5-V1.8/tree/master/epa2in13-demo即使代碼沒有打包成真正的庫,你也可以將它復(fù)制到你的庫目錄下并包含它。
步驟6:配置軟件
您需要設(shè)置幾個(gè)參數(shù)(以及一些您可能想要設(shè)置的參數(shù))在env_config.h文件中,包括:
WiFi SSID和密碼
NOAA工作站ID(換句話說,你在哪里)
OpenWeatherMap AppID,你需要注冊(cè)(它很簡單,免費(fèi))
OpenWeatherMap LocationID(再次,你在哪里)
CONFIG_USE_TPL5110,它允許你在沒有TPL5110的情況下使用T5 。相反,軟件將進(jìn)入深度睡眠模式。 T5板在深度睡眠時(shí)吸收大約8毫安,所以我只希望電池可以使用幾天。
第7步:軟件如何工作
(如果你不在乎,你可以跳過這部分。)
目標(biāo)是每天醒來一次,但由于TPL5110的最大間隔時(shí)間僅為2小時(shí)或者說,T5必須經(jīng)常醒來。因此,在下載潮汐和天氣數(shù)據(jù)后,它會(huì)計(jì)算從現(xiàn)在到明天早上4:00之間的2小時(shí)間隔中有多少。由于TPL5110完全切斷了T5的電源,這有點(diǎn)復(fù)雜,這對(duì)電池有利,但這意味著我們失去了RAM和實(shí)時(shí)時(shí)鐘。這就像每天早上醒來失憶。因此,要弄清楚現(xiàn)在是什么時(shí)候,它會(huì)從NOAA的HTTP標(biāo)頭中提取它。并且為了記住剩余的2小時(shí)間隔,它寫入與非易失性存儲(chǔ)(閃存)的對(duì)應(yīng)。每次喚醒時(shí),它會(huì)檢查計(jì)數(shù)器,減少它,存儲(chǔ)它,如果它大于零,它會(huì)立即向TPL51110發(fā)送信號(hào)(“完成”),告訴它讓它進(jìn)入睡眠狀態(tài)。當(dāng)計(jì)數(shù)器達(dá)到零時(shí),代碼將下載新數(shù)據(jù),并重新計(jì)算并重置計(jì)數(shù)器。
步驟8:運(yùn)行它

確保T5左側(cè)的開關(guān)處于向上(開)位置,上傳草圖到T5,并在幾秒鐘內(nèi)屏幕應(yīng)更新潮汐和天氣信息。
如果您需要調(diào)試軟件,請(qǐng)更改Tides.ino頂部的“#define DEBUG 0” “#define DEBUG 1”。這將打開串行調(diào)試輸出,并在電子紙的底部顯示下載新數(shù)據(jù)之前剩余的重啟次數(shù),以及上次下載數(shù)據(jù)的時(shí)間。
步驟9:未來方向
使用TPL5110與電子紙顯示相結(jié)合是顯示任何不經(jīng)常更改的數(shù)據(jù)的好方法,具有出色的電池壽命。
當(dāng)我設(shè)計(jì)時(shí),我考慮使用TrigBoard,這是一塊帶有TPL5111板的ESP8266板。它需要像這樣或那樣獲得一個(gè)單獨(dú)的電子紙顯示器和電子紙驅(qū)動(dòng)板。或者像這樣或者這樣的驅(qū)動(dòng)程序+板組合。要將代碼移植到ESP8266,我認(rèn)為SSL代碼必須使用指紋而不是證書,非易失性存儲(chǔ)代碼需要使用EEPROM或RTC內(nèi)存。
-
時(shí)鐘
+關(guān)注
關(guān)注
11文章
1986瀏覽量
135109
發(fā)布評(píng)論請(qǐng)先 登錄
基于瑞薩RA2E1 MCU實(shí)現(xiàn)智能陪伴時(shí)鐘
時(shí)鐘緩沖器與時(shí)鐘發(fā)生器各自優(yōu)勢介紹
電力中常用授時(shí)設(shè)備是哪種 #電廠時(shí)鐘同步系統(tǒng) #電力同步時(shí)鐘 #電廠 #同步天下 #電力時(shí)鐘系統(tǒng)
電力時(shí)鐘裝置功能好不好用 #電力同步時(shí)鐘 #電力時(shí)鐘系統(tǒng) #電廠時(shí)鐘同步系統(tǒng) #電廠 #同步天下
智能汽車的隱形心臟:高精度 PTP 時(shí)鐘模塊 gPTP時(shí)鐘模塊 IEEE802.1AS PTP主時(shí)鐘
汽車時(shí)鐘MC - K系列時(shí)鐘振蕩器:設(shè)計(jì)與應(yīng)用指南
停車的時(shí)長準(zhǔn)不準(zhǔn)?鐵路時(shí)鐘系統(tǒng)、鐵路時(shí)鐘、鐵路授時(shí)
鐵路時(shí)鐘系統(tǒng)介紹、時(shí)鐘系統(tǒng)、授時(shí)服務(wù)器
選擇考場時(shí)鐘三大注意事項(xiàng)、考場時(shí)鐘系統(tǒng)、學(xué)校時(shí)鐘
時(shí)鐘設(shè)計(jì)優(yōu)化實(shí)戰(zhàn)
瑞薩RA系列FSP庫開發(fā)實(shí)戰(zhàn)指南(29)CGC(時(shí)鐘生成電路)時(shí)鐘控制
潮汐時(shí)鐘的制作教程
評(píng)論