背景
我需要一個(gè)為放置在床頭柜而設(shè)計(jì)的緊湊型鬧鐘,包含時(shí)間、日期、天氣、新聞,以及喚醒我的輕松聲音。
介紹
這是一個(gè)鬧鐘,但我覺得我不是唯一一個(gè)想要這樣一件漂亮而簡(jiǎn)單的物品放在床頭柜上的人。
它具有有用的功能,例如柔和的喚醒(小藍(lán)牙揚(yáng)聲器發(fā)出啁啾的鳥聲),改變白天和黑夜,天氣,新聞的信息和亮度。WiFi 在睡眠期間關(guān)閉。一切都非常好用并且功能可定制!
它主要基于漂亮的MagicMirror項(xiàng)目,但在這種情況下,我用了一個(gè)小屏幕以展現(xiàn)出我們需要的信息,而不是將所有東西都隱藏在鏡子后面。
如果您對(duì) MagicMirror 有一點(diǎn)了解,就會(huì)知道要安裝不同的模塊,以提供不同類型的功能。對(duì)于我的項(xiàng)目,我使用了:
時(shí)鐘(默認(rèn))
MMM-AlarmClock(我們想要一個(gè)鬧鐘,對(duì)吧?)
CurrentWeather(默認(rèn)模塊)
新聞源(默認(rèn))
MMM-Online-State(檢查天氣 WiFi 是打開還是關(guān)閉)
MMM-Tado(如果你有智能恒溫器,你可以顯示環(huán)境信息)
MMM-ModuleScheduler(可選,用于切換顯示的模塊)
然后我認(rèn)為cron是在白天編寫一些事件的簡(jiǎn)單而正確的工具。我將在下面顯示我的crontab 。
現(xiàn)在讓我們看看我的屏幕
白天版本:
夜間版本:
看到區(qū)別了嗎?如果我凌晨 3 點(diǎn)起床,我不需要太多信息:時(shí)鐘就足夠了!并且 WiFi 打開/關(guān)閉的指示也可以(例如,我將打開標(biāo)志設(shè)置為黃色,將關(guān)閉標(biāo)志設(shè)置為藍(lán)色)。所以,如果你喜歡它那就去做吧!
硬件設(shè)置
設(shè)置非常簡(jiǎn)單:
1)首先,如果您有機(jī)箱,請(qǐng)將帶有 microSD 卡的 Raspberry Pi(版本 2、3 或 4 都可以)插入其中(確保相關(guān)引腳/連接器仍然可以訪問到連接屏幕);
2)然后只需將屏幕(無論您想使用哪個(gè))連接到Raspberry Pi;我會(huì)推薦一個(gè)小的(如列表中的 3.5“),但您也可以使用官方的Raspberry Pi Touch Display或另一個(gè);觸摸功能將很有用(但不是 100% 必須)來關(guān)閉警報(bào)鐘;
3)然后,如果您使用的是藍(lán)牙音箱,直接從樹莓派 USB 為其供電/充電可能很實(shí)用,因此只需將其連接到任何 USB 端口即可;
4) 最后接上電源插頭。完畢!
軟件安裝
現(xiàn)在是時(shí)候進(jìn)行軟件安裝了:
1)我假設(shè)您在(小容量,例如 8GB)microSD 卡上安裝了標(biāo)準(zhǔn)的Raspberry Pi OS ,帶有桌面。
2) MagicMirror 安裝:所謂的“手動(dòng)安裝”就是復(fù)制粘貼幾條命令一樣簡(jiǎn)單,所以我推薦它。
3) MagicMirror(附加的,第 3 方)模塊。以下每個(gè)模塊都有單獨(dú)的安裝,快速簡(jiǎn)單(再次簡(jiǎn)單復(fù)制和粘貼),只需按照鏈接獲取說明:首先MMM-AlarmClock ,我們將使用它在早上播放音樂或大自然的聲音;MMM-Online-State ,我發(fā)現(xiàn)這對(duì)于確保夜間關(guān)閉 WiFi 很有用;可選,如果您有 Tado 恒溫器,MMM-Tado ,顯示當(dāng)前和設(shè)置的溫度、濕度等;Netatmo 的等效模塊也可用:MMM-Netatmo 。我最近決定嘗試MMM-ModuleScheduler并且再也沒有回來!在白天/晚上的不同時(shí)間安排不同模塊的顯示很容易。
4)我們將使用的其他模塊是默認(rèn)模塊,因此不需要進(jìn)一步安裝。
配置
有一個(gè)主要的配置文件需要編輯,另外您可能想要或需要調(diào)整一些其他文件,以優(yōu)化可視化并獲得可能的最佳結(jié)果。
讓我們從 MagicMirror配置文件開始:您會(huì)在 MagicMirror/config 文件夾中找到一個(gè)示例文件。我還提供了我的配置文件,您可以將其用作起點(diǎn)。在下面找到它。
如果您想進(jìn)行晝夜配置,我建議您像我一樣創(chuàng)建一個(gè) config_day.js 和 config_night.js。然后我們將使用cron命令切換它們(這里是晚上 11 點(diǎn)和早上 6 點(diǎn)):
》 crontab -e
# For more information see the manual pages of crontab(5) and cron(8)
# m h dom mon dow command
01 23 * * * cp /home/pi/MagicMirror/config/config_night.js /home/pi/MagicMirror/config/config.js
00 06 * * * cp /home/pi/MagicMirror/config/config_day.js /home/pi/MagicMirror/config/config.js
或者,您可以使用MMM-ModuleScheduler ,它允許在不同時(shí)間顯示或隱藏不同的模塊,非常棒!您將使用下面的 ModuleScheduler 找到我的配置文件。
最后,您可能想要或需要檢查配置頁面頂部鏈接的 Raspberry 特定配置。特別是啟用自動(dòng)啟動(dòng)和鼠標(biāo)指針自動(dòng)隱藏。
屏幕亮度
這是一個(gè)比較重要的條件,因?yàn)槲覀冎涝谖覀冊(cè)噲D入睡時(shí)明亮的屏幕會(huì)帶來多大的干擾。另一方面,我們想要在日光條件下清晰可讀的屏幕。對(duì)于某些顯示器,您可以控制背光照明,這適用于我擁有的 PiTFT 屏幕。我制作了一個(gè)小腳本來使用cron命令(再次)改變亮度:
const raspi = require(‘raspi’);
const pwm = require(‘raspi-pwm’);
var myArgs = process.argv.slice(2);
var lumi = myArgs[0]/1000.0
raspi.init(() =》 {
const led = new pwm.PWM(‘GPIO18’);
led.write(lumi); // 1-1000 duty Cycle, aka brightness
});
這將由以下命令執(zhí)行:
》 sudo crontab -e
# For more information see the manual pages of crontab(5) and cron(8)
# m h dom mon dow command
@reboot /bin/sh -c ‘echo ”0“ 》 /sys/class/backlight/soc\:backlight/brightness’
@reboot /usr/bin/node /home/pi/screen_lumi.js 500
00 23 * * * /usr/bin/node /home/pi/screen_lumi.js 1
00 07 * * * /usr/bin/node /home/pi/screen_lumi.js 100
00 08 * * * /usr/bin/node /home/pi/screen_lumi.js 1000
00 19 * * * /usr/bin/node /home/pi/screen_lumi.js 800
該screen_lumi.js腳本必須以 root 權(quán)限運(yùn)行,因此屏幕亮度將由root crontab處理。
Wi-Fi開關(guān)(主要是涉及到輻射)
我相信這個(gè)功能會(huì)讓你睡得更好。我不想讓 Wi-Fi 設(shè)備每晚在距離我頭部幾厘米的地方持續(xù)發(fā)射無線信號(hào)。所以我介紹了 Wi-Fi 開關(guān),這要感謝cron再次運(yùn)行的rfkill命令:
》 crontab -e
# For more information see the manual pages of crontab(5) and cron(8)
# m h dom mon dow command
@reboot /usr/sbin/rfkill unblock wlan
00 23 * * * /usr/sbin/rfkill block wlan
00 7 * * * /usr/sbin/rfkill unblock wlan
這將在夜間關(guān)閉 Wi-Fi,并在早上再次打開(當(dāng)您應(yīng)該起床時(shí)?。?。同樣的命令也可以關(guān)閉藍(lán)牙,但我發(fā)現(xiàn)有些藍(lán)牙音箱可能不喜歡它,并且難以及時(shí)重新連接以進(jìn)行早晨鬧鐘。此外,藍(lán)牙的輻射功率比 Wi-Fi 低很多,而且不是連續(xù)傳輸。最后說明:在測(cè)試“ block wlan ”命令時(shí),請(qǐng)確保您沒有通過 Wi-Fi配置鬧鐘!
揚(yáng)聲器
在我的項(xiàng)目中,我使用了藍(lán)牙揚(yáng)聲器(從 Raspberry Pi USB 端口供電/充電)。這可以在 Raspbian UI 中輕松配置:首先您需要從藍(lán)牙菜單中找到并配對(duì)揚(yáng)聲器,然后您可以從音頻菜單中選擇揚(yáng)聲器作為音頻輸出設(shè)備(請(qǐng)參見下面的步驟)。當(dāng)然,您也可以簡(jiǎn)單地插入一個(gè) 3.5” 插孔揚(yáng)聲器(但在我的情況下,Raspberry Pi PWM 時(shí)鐘正忙于調(diào)暗屏幕背光?。?。
喚醒聲音
快速檢查一下我們希望如何醒來:在下面的示例中,鬧鐘將在每周日早上 7 點(diǎn)播放我喜歡的 mp3 文件 3 分鐘。確保您選擇柔和悅耳的聲音,就像森林中的啁啾鳥!這是我的首選(免費(fèi)下載):森林中的鳥類。
{
module: ‘MMM-AlarmClock’,
position: ‘top_left’,
config: {
alarms: [
{time: “7:00”,
days: [1,2,3,4,5],
title: “Wake-up!”,
message: “It is 7.00am!”,
sound: “birds-in-the-forest.mp3”},
],
format: ‘dddd @ H:mm’,
touch: ‘true’,
volume: 0.50,
timer: 180 * 1000
}
},
最終成果:
-
樹莓派
+關(guān)注
關(guān)注
116文章
1679瀏覽量
105255 -
智能鬧鐘
+關(guān)注
關(guān)注
1文章
22瀏覽量
7705 -
樹莓派3B+
+關(guān)注
關(guān)注
0文章
3瀏覽量
744
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論