這款 Pi Zero AirPlay 揚聲器融合了現(xiàn)代和經(jīng)典風格。
背景
在尋找圍繞 Raspberry Pi Zero 構建的新項目時,我發(fā)現(xiàn)了 Pimoroni 的 pHAT DAC。這個小插件板為 Pi Zero 添加了音頻播放功能。因為 pHAT 使用 GPIO 引腳,所以 USB OTG 端口仍可用于 wifi 加密狗。非常適合小型無線揚聲器項目,從而誕生出了制作這個項目的想法!
該項目相當簡單,需要以下組件:
樹莓派零
pHAT DAC
單聲道 2.5W D 類放大器
WiPi 無線加密狗
兩個 100 歐姆電阻
揚聲器(4-8 歐姆)
Raspberry Pi Zero 顯然是該項目的大腦,它將運行 Shairport 軟件以無線傳輸音樂。pHAT DAC 是一個簡潔的小插件板,可為 Raspberry Pi 添加音頻。它有一個插孔輸出,并且可以向其添加 RCA 連接器。RCA 連接器沒有預焊的事實是一個好處,因為它暴露了音頻線。然后,Adafruit 的小型單聲道放大器從 pHAT 獲取音頻并放大,從揚聲器播放音頻。通過 USB OTG 端口連接的 wifi 加密狗為流媒體提供無線網(wǎng)絡連接。
我決定制作一個單聲道揚聲器以保持整個項目的體積不會太大,使用立體聲支持制作這個項目意味著擁有第二個揚聲器并用立體聲揚聲器替換單聲道放大器。
我知道這不是將立體聲轉換為單聲道的最佳方式,但它確實有效。我試圖從軟件的角度通過將立體聲下混為單聲道來解決這個問題,但沒有完全成功。如果有人對如何以簡單的方式實現(xiàn)這一點有提示,請隨時在評論中留下!
軟件
在軟件方面,跟硬件也是差不多難度。
首先從 Raspberry Pi 官方網(wǎng)站下載的最新 Raspbian Jessie 圖像開始。
使用“dd”,我將下載的圖像放在 8Gb microSD 卡上,然后用它來啟動 Pi Zero。
sudo diskutil list
sudo diskutil unmountDisk /dev/disk3
sudo dd if=Downloads/2015-11-21-raspbian-jessie.img of=/dev/disk3 bs=1m
sudo diskutil unmountDisk /dev/disk3
啟動后,通過選擇正確的 SSID 并輸入 wifi 密碼在圖形桌面環(huán)境中設置 wifi。將 Pi Zero 連接到網(wǎng)絡后,可以更新軟件。
sudo apt-get update
sudo apt-get upgrade
然后是安裝項目特定軟件的時候了:支持 pHAT DAC 和 AirPlay 軟件。
pHAT DAC
Pimoroni 網(wǎng)站上提供了有關如何安裝和使用 pHAT DAC的教程。不過,我的做法略有不同,因為我沒有禁用默認聲音驅動程序。
設備樹覆蓋用于描述硬件。由于 pHAT DAC 使用與 HiFi Berry 相同的硬件,因此可以通過將以下行附加到配置文件來使用相同的覆蓋:
pi@raspberrypi:~ $ sudo nano /boot/config.txt
# pHAT DAC
dtoverlay=hifiberry-dac
重新啟動后,我使用“aplay”應用程序列出了音頻設備,它是:卡 1 - HiFi Berry 。
pi@raspberrypi:~ $ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
card 0: ALSA [bcm2835 ALSA], device 1: bcm2835 ALSA [bcm2835 IEC958/HDMI]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: sndrpihifiberry [snd_rpi_hifiberry_dac], device 0: HifiBerry DAC HiFi pcm5102a-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
為了使其成為音頻播放的默認設置,我更新了 asound.conf 文件并將對“card 0”的所有引用替換為“card 1”。
pi@raspberrypi:~ $ sudo nano /etc/asound.conf
pcm.!default {
type hw
card 1
}
ctl.!default {
type hw
card 1
}
最后重新啟動確保所有內(nèi)容都已應用。
Shairport
Shairport 是一個 Airtunes 模擬器,允許兼容的 iOS 設備或 iTunes 將音頻流式傳輸?shù)竭\行它的設備。
在安裝和運行 Shairport 之前,需要滿足一些依賴項。
pi@raspberrypi:~ $ sudo apt-get install git libao-dev libssl-dev libcrypt-openssl-rsa-perl libio-socket-inet6-perl libwww-perl avahi-utils libmodule-build-perl
pi@raspberrypi:~ $ git clone https://github.com/njh/perl-net-sdp.git perl-net-sdp
pi@raspberrypi:~ $ cd perl-net-sdp/
pi@raspberrypi:~/perl-net-sdp $ perl Build.PL
pi@raspberrypi:~/perl-net-sdp $ sudo ./Build
pi@raspberrypi:~/perl-net-sdp $ sudo ./Build test
pi@raspberrypi:~/perl-net-sdp $ sudo ./Build install
處理好依賴關系后,可以安裝實際的 Shairport 軟件。
pi@raspberrypi:~ $ git clone https://github.com/hendrikw82/shairport.git
pi@raspberrypi:~ $ cd shairport/
pi@raspberrypi:~/shairport $ make
在這個階段,可以通過手動運行 shairport.pl 腳本來測試是否一切都安裝正確。
pi@raspberrypi:~/shairport $ ./shairport.pl -a AirPi
在確認一切都按預期工作后,可以對 shairport 應用程序進行守護,以使其在啟動時自動啟動。
pi@raspberrypi:~/shairport $ sudo make install
pi@raspberrypi:~/shairport $ sudo cp shairport.init.sample /etc/init.d/shairport
pi@raspberrypi:~/shairport $ sudo chmod +x /etc/init.d/shairport
pi@raspberrypi:~/shairport $ sudo update-rc.d shairport defaults
最后,需要修改 shairport 文件以指定 AirPlay 設備的名稱。這可以是你想要的任何東西。就我而言,我選擇了一些通用的東西,比如“AirPi”。
pi@raspberrypi:~/shairport $ sudo nano /etc/init.d/shairport
#DAEMON_ARGS="-w $PIDFILE"
DAEMON_ARGS="-w $PIDFILE -a AirPi"
重新啟動 Pi。Hairport 應該會自動運行。
外殼
是時候將工作中的 AirPlay 揚聲器包裝成漂亮的東西了,為它制作一個漂亮的外殼。
這實際上是該項目中最困難的部分。主要是因為我想用木頭制作它,并且形狀有點復雜。這意味著在使用斜切鋸切割正確長度的零件之前做一些數(shù)學運算,然后確保切割正確的角度以便正確連接零件。由于我不是木工,而且我可以使用的工具也不是最合適的,因此結果并不總是像您期望的那樣準確。
通過添加 3D 打印部件為構建賦予了一些重點:側面板和揚聲器格柵。其中一個側面板沒有粘在適當?shù)奈恢茫绻枰梢詫⑵湟瞥员阍L問電子設備。我猶豫是否將 3D 打印部件涂成不同的顏色以獲得鍍鉻或黃銅外觀,但最終還是將這些部件保持原樣。總的來說,它給構建帶來了一些時髦的一面,不是嗎?
這就是這個項目最終的樣子:
-
揚聲器
+關注
關注
29文章
1289瀏覽量
62896 -
AirPlay
+關注
關注
0文章
12瀏覽量
10335 -
樹莓派
+關注
關注
116文章
1698瀏覽量
105520
發(fā)布評論請先 登錄
相關推薦
評論