因为手上有个NanoPi neo,想着做个什么东西,这货有网络接口,没有直接的HDMI之类接口,想着要把做个网络音箱吧,可以用PC或者手机去控制播放,多方便啊!
说干就干!
可光这货也不能搞啊,再找找家里的存货,
有老的适配PC的有源音箱,有淘汰的手机5V电源,小容量(8G)的中速tf卡(差不多可以放系统啦)
其实光这个也够了,不过NanoPi neo自身的DAC输出也存在接线问题,效果吗,还不够,遂想着升级一下,搞个高大上的专门DAC(因为NanoPi neo支持I2S)。
其实官方有个高大上的专门音频DAC,NanoHat PCM5102A,不过价格嘛,有点小贵,还是自力更生吧,还可以自己安排接线,遂在某宝上用官方四分之一的价格淘到同样用PCM5102A的DAC模块。
它长这样:

东西齐备,可以开工啦。
基本系统安装
基本是参考官方wiki来安装基本系统,下载的是最新的nanopi-neo_sd_friendlycore-xenial_4.14固件(这里吐槽一下,官方是某度网盘下载,无会员真心慢啊!)
固件写入工具是windows下的Etcher(推荐这个工具,固件写入很方便)。具体操作就略过啦,只要固件下载完整,tf卡没有问题,写入是一次成功的。
设备的连接也省略啦,参考官方的wiki就好。
因为NanoPi neo没有直接的视频输出,就采用的串口连接来监视(接线也参考官方wiki),比特率是115200,官方没有介绍这个情况。
直接从串口USB取电来进行首次启动。一次启动成功,连接网线后自动获取到地址,后面就可以用网络ssh登录来进行管理啦。
I2S DAC的连接与启用
因为不是官方的I2S DAC,当然不能一插启用,不过也不是难事,购买的PCM5102A模块随配了管脚针,也有详细的接线图,就先焊接用到的脚,一共需要5根线(不需要6根线,可以省略时钟信号线,4根线也是不够的!),接线关系如下图

连接好后,还需要在系统中配置一下,才能正式启用这个I2S音频DAC的输出,主要的步骤是先登录进系统,运行
sudo npi-config
启动配置,依次进入 Advanced Options -> I2S,选择启用(Enable) I2S设备即可,设置后需要重启。
重启后用,安装音频相关应用(主要是alsa应用),并列出系统音频设备
apt-get update
apt-get install libasound2
apt-get install alsa-base
apt-get install alsa-utils
aplay -l
查看音频设备,我的有4个设备,其中设备4是I2S对应的PCM5102A设备,所以测试
sudo aplay /root/Music/test.wav -D plughw:4
看是否有声音(可以插耳机试),确认后再看是否把I2S设备设置为默认音频设备:
查看/etc/asound.conf中是否和检测到的I2S设备编号一致,比如我的就是(设备编号是4):
pcm.!default {
type hw
card 4
device 0
}
ctl.!default {
type hw
card 4
}
这时(不指定输出设备的播放)运行
sudo aplay /root/Music/test.wav
应该正常出声。至此I2S设备的连接成功,可以进行下一步。
音箱硬件改造
主要涉及开孔安装固定NanoPi neo,并且能外接网线(同时提供了外露USB接口),
固定I2S音频DAC,固定针对NanoPi neo的专用电源适配器(那个5V的手机,I2S的电是经过NanoPi 取的),
同时电源和原来的有源音箱公用电源开关(220V的输入开关)。
以及相应的连接线。
因为个人的物件情况不同,所以图的参考价值不大(其实除了电源外,和外部连接差不多,和音箱连接的就是把I2S音频DAC的输出接到音箱的音频输入去而已),所以这里就不放图啦,不过有一个大致DIY过程的视频可以参考下。
这个过程主要注意各种接线的准确,还要保证接线的稳定耐用,因为我主要采用的杜邦线,个别用到了焊接,对杜邦线,其实可以点点热熔胶协助固定下(我就是这么搞的)。
真正网络音箱功能的实现
真正实现网络音箱功能,还需要安装一个专门的客户端软件,就是squeezelite,这个软件是罗技Logitech Media Server 的无头(headless)客户端,
可以算作是罗技Squeezebox的一种模拟器。
在NanoPi neo的标准系统中安装它是很方便的
阅读原文:https://dwz.cn/yOEqFGdt
说干就干!
可光这货也不能搞啊,再找找家里的存货,
有老的适配PC的有源音箱,有淘汰的手机5V电源,小容量(8G)的中速tf卡(差不多可以放系统啦)
其实光这个也够了,不过NanoPi neo自身的DAC输出也存在接线问题,效果吗,还不够,遂想着升级一下,搞个高大上的专门DAC(因为NanoPi neo支持I2S)。
其实官方有个高大上的专门音频DAC,NanoHat PCM5102A,不过价格嘛,有点小贵,还是自力更生吧,还可以自己安排接线,遂在某宝上用官方四分之一的价格淘到同样用PCM5102A的DAC模块。
它长这样:

东西齐备,可以开工啦。
基本系统安装
基本是参考官方wiki来安装基本系统,下载的是最新的nanopi-neo_sd_friendlycore-xenial_4.14固件(这里吐槽一下,官方是某度网盘下载,无会员真心慢啊!)
固件写入工具是windows下的Etcher(推荐这个工具,固件写入很方便)。具体操作就略过啦,只要固件下载完整,tf卡没有问题,写入是一次成功的。
设备的连接也省略啦,参考官方的wiki就好。
因为NanoPi neo没有直接的视频输出,就采用的串口连接来监视(接线也参考官方wiki),比特率是115200,官方没有介绍这个情况。
直接从串口USB取电来进行首次启动。一次启动成功,连接网线后自动获取到地址,后面就可以用网络ssh登录来进行管理啦。
I2S DAC的连接与启用
因为不是官方的I2S DAC,当然不能一插启用,不过也不是难事,购买的PCM5102A模块随配了管脚针,也有详细的接线图,就先焊接用到的脚,一共需要5根线(不需要6根线,可以省略时钟信号线,4根线也是不够的!),接线关系如下图

连接好后,还需要在系统中配置一下,才能正式启用这个I2S音频DAC的输出,主要的步骤是先登录进系统,运行
sudo npi-config
启动配置,依次进入 Advanced Options -> I2S,选择启用(Enable) I2S设备即可,设置后需要重启。
重启后用,安装音频相关应用(主要是alsa应用),并列出系统音频设备
apt-get update
apt-get install libasound2
apt-get install alsa-base
apt-get install alsa-utils
aplay -l
查看音频设备,我的有4个设备,其中设备4是I2S对应的PCM5102A设备,所以测试
sudo aplay /root/Music/test.wav -D plughw:4
看是否有声音(可以插耳机试),确认后再看是否把I2S设备设置为默认音频设备:
查看/etc/asound.conf中是否和检测到的I2S设备编号一致,比如我的就是(设备编号是4):
pcm.!default {
type hw
card 4
device 0
}
ctl.!default {
type hw
card 4
}
这时(不指定输出设备的播放)运行
sudo aplay /root/Music/test.wav
应该正常出声。至此I2S设备的连接成功,可以进行下一步。
音箱硬件改造
主要涉及开孔安装固定NanoPi neo,并且能外接网线(同时提供了外露USB接口),
固定I2S音频DAC,固定针对NanoPi neo的专用电源适配器(那个5V的手机,I2S的电是经过NanoPi 取的),
同时电源和原来的有源音箱公用电源开关(220V的输入开关)。
以及相应的连接线。
因为个人的物件情况不同,所以图的参考价值不大(其实除了电源外,和外部连接差不多,和音箱连接的就是把I2S音频DAC的输出接到音箱的音频输入去而已),所以这里就不放图啦,不过有一个大致DIY过程的视频可以参考下。
这个过程主要注意各种接线的准确,还要保证接线的稳定耐用,因为我主要采用的杜邦线,个别用到了焊接,对杜邦线,其实可以点点热熔胶协助固定下(我就是这么搞的)。
真正网络音箱功能的实现
真正实现网络音箱功能,还需要安装一个专门的客户端软件,就是squeezelite,这个软件是罗技Logitech Media Server 的无头(headless)客户端,
可以算作是罗技Squeezebox的一种模拟器。
在NanoPi neo的标准系统中安装它是很方便的
阅读原文:https://dwz.cn/yOEqFGdt