Raspberry Pi + Rune Audio ::: Một trải nghiệm nghe nhạc mới

Thanhvo31

Well-Known Member
@Thanhvo31
Thank anh.
- FrontEnd cài archlinux64, Arch Linux AoE (post #21447) và rpi4-smpdplayer-aoe-b19. Vậy FrontEnd (symphonic-mpd 0.96) cài front_set_v096 như hướng dẫn của anh thì BackEnd cài rpi4-smpdplayer-aoe-b19c có được không? Nếu không thì BackEnd cài cái nào ạ?
- Nếu có source code kernel/xenomai của
rpi4-smpdplayer-aoe-b19 thì có thể rebuild cho Pi 2/3. Hix mấy ông Nhật giữ kín quá.

Theo mình thì công nghệ AoE của @papariuos khác với hàng của @donutshop nhé.
Nếu dùng AoE thì không xài mấy cái của @donutshop.
Mình gửi link và sửa lại bên trên
link AoE backend b19
https://drive.google.com/file/d/1zBhDpVr5kOZBIJv1gTRQBLF2njnswT2w/view?usp=sharing
Với công nghệ AoE

Back End chỉ có duy nhất 1 bản:
http://www.symphonic-mpd.com/release/aoe/rpi4-smpdplayer-aoe-b19.zip

Front End có 3 bản:
  1. Arch Linux AoE cho x86_64 (https://drive.google.com/file/d/14-Fn47eqgr8YS3jCjXQviwAXTfLbjVDK/view?usp=sharing)
  2. Arch Linux (64bit) cho RPi4 / RPi3 (https://drive.google.com/file/d/1SriDoyHMep6bIEwG-35Bhv-DgTFb7T4x/view?usp=sharing)
  3. symphonic-mpd RPi4 Edition (64bit) - (https://drive.google.com/file/d/1xAVLYQWFwDV8NDYqV4qMRF3Z9KuOkGN6/view), upgrade lên 1.10, sau đó upgrade gói AoE đè lên bản này.
Mã:
AoE front end
Please log in to smpd v1.0.x with ssh and install it according to the following procedure.
<smpd v1.0.x用 AoEモジュール β18>
wget https://www.symphonic-mpd.com/release/aoe/aoe.b18.tar.gz
tar xf aoe.b18.tar.gz
rm -f aoe_modules
ln -s aoe.b18 aoe_modules
cd aoe_modules/front
./setup.sh install
reboot

Tóm lại phầm mềm có
B0 - Dùng cho Back End
F1.1 - Dùng cho x86_64 Front End (archlinux_64bit_x64)
F2.1 - Dùng cho Pi3, Pi4 (archlinux_64bit_arm)
F2.2 - Dùng cho Pi3, Pi4 (aarch64 based on LFS (Linux From Scratch), sau cài đè gói AoE cho FE lên.

Với món ở link này https://smz2019.livedoor.blog/archives/8436797.html có vẻ như hạp với đồ của @donutshop hơn, và BACK END không dùng công nghệ như của @paparious thì phải?
Remote Direct Memory Access, BCM2711 which is SoC (System on a Chip) of Raspberry Pi 4 is equipped with I2S output function (serializer).
- Nếu có source code kernel/xenomai của rpi4-smpdplayer-aoe-b19 thì có thể rebuild cho Pi 2/3
Vì các Pi 2,3 không dùng SoC BCM2711 nên không làm BE trong vụ AoE được

Mình thử theo cách này khá rắc rối, chưa kêu được

********************

Với cách mình hay làm 1+3 trên đây, cấu hình rất nhanh gọn, không rắc rối gì cả.
Chỉ cần có sẵn 3 file đã lưu trước.
config.txt, cmdline.txt >> đè qua thẻ BE
vsound.service >> đè qua /lib/systemd/system của FE qua WinSCP

là kêu liền.
 
Chỉnh sửa lần cuối:

TuanQuynhAudio

Well-Known Member
Theo mình thì công nghệ AoE của @papariuos khác với hàng của @donutshop nhé.
Nếu dùng AoE thì không xài mấy cái của @donutshop.

Front End có 3 bản:
  1. Arch Linux AoE cho x86_64 (https://drive.google.com/file/d/14-Fn47eqgr8YS3jCjXQviwAXTfLbjVDK/view?usp=sharing)
  2. Arch Linux (64bit) cho RPi4 / RPi3 (https://drive.google.com/file/d/1SriDoyHMep6bIEwG-35Bhv-DgTFb7T4x/view?usp=sharing)
  3. symphonic-mpd RPi4 Edition (64bit) - (https://drive.google.com/file/d/1xAVLYQWFwDV8NDYqV4qMRF3Z9KuOkGN6/view), upgrade lên 1.10, sau đó upgrade gói AoE đè lên bản này.
Với cách mình hay làm 1+3 trên đây, cấu hình rất nhanh gọn, không rắc rối gì cả.
Chỉ cần có sẵn 3 file đã lưu trước.
config.txt, cmdline.txt >> đè qua thẻ BE
vsound.service >> đè qua /lib/systemd/system của FE qua WinSCP

là kêu liền.
Công nghệ AoE của @papariuos và hàng của @donutshop về cơ bản là cùng 1 mô hình: FrontEnd play nhạc vào "Virtual network sound card", BackEnd nhận dữ liệu từ ethernet đẩy sang Sound card i2s. Khác nhau về cách thiết kế chi tiết.
Mô hình AoE của @donutshop73 như thế này:
Mã:
#
# PPAP-Fr-NAS-Hires
#
#   PPAP-Bk (SMPD)                                    PPAP-Fr-NAS-HiRes [rpi2]
#   +---------------------+                           +---------------------------+                    [192.168.x.y]  +---------------------+
#   |                     |                           |                           |                  +----------------| mpd client          |
#   |                     | [10.0.0.2]     [10.0.0.1] |                           | [192.168.x.x]    |                +---------------------+
#   | aplay <--- ncat <---|---------------------------|--- mpd <------------------|------------------+
#   |                     | (eth0)             (eth0) |                           | (eth1)           | [192.168.x.z]  +---------------------+
#   |                     |                           |                           |                  +--------------->| NAS                 |
#   +---------------------+                           +---------------------------+                 nfs, cifs, sshfs  +---------------------+
#
#
# PPAP-Fr-UPnP-HiRes
#
#   PPAP-Bk (SMPD)                                    PPAP-Fr-UPnP-HiRes [rpi2]
#   +---------------------+                           +---------------------------+
#   |                     |                           |                           |                    [192.168.x.v]  +---------------------+
#   |                     |                           |   +---- upmpdcli <----+   |                  +----------------| upnp controle point |
#   |                     | [10.0.0.2]     [10.0.0.1] |   V                   |   | [192.168.x.x]    |                +---------------------+
#   | aplay <--- ncat <---|---------------------------|--mpd                  +---|------------------+
#   |                     | (eth0)             (eth0) |   |                   |   | (eth1)           | [192.168.x.w]  +---------------------+
#   |                     |                           |   +---> polipo ---+---+   |                  +--------------->| upnp server         |
#   |                     |                           |                   |       |                  |                +---------------------+
#   +---------------------+                           |              (minidlna )  |                  |
#                                                     |                   |       |                  | [192.168.x.z]  +---------------------+
#                                                     |              (NAS mount)  |                  +--------------->| NAS                 |
#                                                     |              (SD  Card )  |                 nfs, cifs, sshfs  +---------------------+
#                                                     |              (USB Mem. )  |
#                                                     |                           |
#                                                     +---------------------------+
#
- Em làm mô hình 1 + 3 chạy ngon (có sự hỗ trợ của anh @linh0983) ;)
- Với món ở link này https://smz2019.livedoor.blog/archives/8436797.html có vẻ như hạp với đồ của @donutshophơn: Đúng vậy. - BACK END không dùng công nghệ như của @paparious thì phải?: Cái này cũng đúng anh à. Không dùng lẫn lộn được.
 
Chỉnh sửa lần cuối:

ko853

Well-Known Member
Anh Phước @linh0983 và các bác nào rành về cấp nguồn Pin cho em hỏi.

Em dùng 4 cell Pin LiFePO4 32650/ 6700mAh ra 6.2v cấp nguồn vào cho bo LT3042 2A, điện đo ra là 5.1v OK
Nhưng khi cắm tải là Pi (có DAC và không DAC) thì bị sụt xuống ngay chỉ còn 4.1v. Kiểm tra máy vẫn chạy, âm thanh vẫn hát bình thường, CPU không tăng.
  • Cấp nguồn Pin Lithium 18650 7.4v vào cũng bị tình trạng tương tự.
  • Cấp Pin LiFePO4 cho bo LT1764 3A cũng bị tình trạng tương tự sụt còn 4.6v.
  • Cấp nguồn biến áp thì bình thường.

Vậy vì sao điện bị sụt, có cách nào chỉ em khắc phục với.


processed.jpg
Mình dùng 2 bộ pin lifepo4 và lipo đi với bo nguồn Ben (lt1963) ra 5V ko bị sụt áp. Bác thử dùng bộ pin khác xem. Khi xài pin nên mua pin rời về đo đạc bằng máy đo nội trở xem pin mới hay cũ rồi tự ráp vì pin bán ở VN đa số là pin cũ kém chất lượng.
 

ko853

Well-Known Member
Theo mình thì công nghệ AoE của @papariuos khác với hàng của @donutshop nhé.
Nếu dùng AoE thì không xài mấy cái của @donutshop.
Mình gửi link và sửa lại bên trên
link AoE backend b19
https://drive.google.com/file/d/1zBhDpVr5kOZBIJv1gTRQBLF2njnswT2w/view?usp=sharing
Với công nghệ AoE

Back End chỉ có duy nhất 1 bản:
http://www.symphonic-mpd.com/release/aoe/rpi4-smpdplayer-aoe-b19.zip

Front End có 3 bản:
  1. Arch Linux AoE cho x86_64 (https://drive.google.com/file/d/14-Fn47eqgr8YS3jCjXQviwAXTfLbjVDK/view?usp=sharing)
  2. Arch Linux (64bit) cho RPi4 / RPi3 (https://drive.google.com/file/d/1SriDoyHMep6bIEwG-35Bhv-DgTFb7T4x/view?usp=sharing)
  3. symphonic-mpd RPi4 Edition (64bit) - (https://drive.google.com/file/d/1xAVLYQWFwDV8NDYqV4qMRF3Z9KuOkGN6/view), upgrade lên 1.10, sau đó upgrade gói AoE đè lên bản này.
Mã:
AoE front end
Please log in to smpd v1.0.x with ssh and install it according to the following procedure.
<smpd v1.0.x用 AoEモジュール β18>
wget https://www.symphonic-mpd.com/release/aoe/aoe.b18.tar.gz
tar xf aoe.b18.tar.gz
rm -f aoe_modules
ln -s aoe.b18 aoe_modules
cd aoe_modules/front
./setup.sh install
reboot

Túm phầm mềm có
B0 - Dùng cho Back End
F1.1 - Dùng cho x86_64 Front End (archlinux_64bit_x64)
F2.1 - Dùng cho Pi3, Pi4 (archlinux_64bit_arm)
F2.2 - Dùng cho Pi3, Pi4 (aarch64 based on LFS (Linux From Scratch), sau cài đè gói AoE cho FE lên.

Với món ở link này https://smz2019.livedoor.blog/archives/8436797.html có vẻ như hạp với đồ của @donutshop hơn, và BACK END không dùng công nghệ như của @paparious thì phải?
Remote Direct Memory Access, BCM2711 which is SoC (System on a Chip) of Raspberry Pi 4 is equipped with I2S output function (serializer).

Vì các Pi 2,3 không dùng SoC BCM2711 nên không làm BE trong vụ AoE được

Mình thử theo cách này khá rắc rối, chưa kêu được

********************

Với cách mình hay làm 1+3 trên đây, cấu hình rất nhanh gọn, không rắc rối gì cả.
Chỉ cần có sẵn 3 file đã lưu trước.
config.txt, cmdline.txt >> đè qua thẻ BE
vsound.service >> đè qua /lib/systemd/system của FE qua WinSCP

là kêu liền.
Cái này so với Roon core - bridge thì cái nào hơn nhỉ?
 

linh0983

Well-Known Member
Thế hệ thứ 2 của việc triển khai AoE sau B19 đây các bác a . (google dịch) . :rolleyes:

" Việc triển khai AoE lên đến β18 dựa trên công cụ phát lại smpd (aplay-rt / rtalsa / xsink) và AoE được gắn bên ngoài vào nó. Vì vậy có thể nói nó là thế hệ đầu tiên của việc thực hiện AoE.

Trong thế hệ đầu tiên này, chúng tôi đã thành công trong việc loại bỏ hoàn toàn việc sao chép dữ liệu PCM từ bộ nhớ sang bộ nhớ, thể hiện khái niệm AoE bằng cách giảm đáng kể mức tiêu thụ chu kỳ CPU và truy cập bộ nhớ.

Mặt khác, quá trình xử lý mà công cụ phát lại phụ trách đã trở nên không thể theo kịp với ép xung và 1 lõi.

Thế hệ thứ hai của việc triển khai AoE sẽ loại bỏ tất cả các công cụ phát lại thông thường và biến nó thành một bản triển khai AoE gốc.

Bộ xử lý ngắt sẽ xử lý các gói AoE và dữ liệu sẽ được DMA chuyển tiếp từ phần cứng (NIC) đến phần cứng (I2S serializer) và quá trình phát nhạc sẽ hoàn tất, điều này cực kỳ đơn giản.

Tại thời điểm này, tôi xin kết thúc đợt thử nghiệm beta và phát hành AoE dưới dạng phiên bản chính thức. "

https://www.symphonic-mpd.com/forum/topic/141/audio-over-ether
 

quatmo

Well-Known Member
Mình dùng cục biến thế nhiều đầu 6V AC, 9VAC, 12VAC ... để cấp nguồn cho bo LT1083 chỉnh out 5.2 V DC để cấp nguồn cho Pi3 + BossDAC dòng max chỉ là ~ 0.6A.
- Nếu dùng 6VAC cấp cho board LT 1083 thì bị hiện tượng Pi chạy khoảng 15' thì sụt áp còn khoảng 4.2 V rồi tịt. (vì theo mình hiểu thì qua 4 con diod chỉnh lưu thì Input cho LT1083 nó tăng lên thành 1.4x6 VDC)
- Sau đó mình chuyển qua cấp nguồn 9VAC cho board LT1083, thì điện áp out cấp cho Pi ổn định ở 5.2V DC
và không còn bị tịt nữa.

bác thử cấp nguồn Pin tầm 9v vào LT3042 xem sao ạ, em cho rằng chênh áp In-OUT thấp quá nên gây sụt áp (loại trừ hiện tượng sụt áp của pin khi pin không còn đầy, hoặc chất lượng pin kém)

6v*1,4=8,4v -5v out cần cho Pi = 3,4v >>> sụt áp qua các linh kiện Diod, LT1803, tụ, trở không đủ nên 9VAC mới ổn định

Đúng vậy a . Như mình board này output 5v hoặc 3.3v DC . Nguồn vào AC = 6v hoặc DC = 7-9v . :rolleyes:

LinearPiSolo.jpg


Mình chỉ có đầu ra AC 9v vào board(1) ra DC 7v vào tiếp board(2) còn 3.3v DC . :D

FG1.jpg


https://github.com/iancanada/DocumentDownload/blob/master/LinearPi/LinearPiUsersManual.pdf



Bác Lâm dùng Pin mình xem board của bác có bỏ mạch chỉnh lưu được ko a ? :D


Mình dùng 2 bộ pin lifepo4 và lipo đi với bo nguồn Ben (lt1963) ra 5V ko bị sụt áp. Bác thử dùng bộ pin khác xem. Khi xài pin nên mua pin rời về đo đạc bằng máy đo nội trở xem pin mới hay cũ rồi tự ráp vì pin bán ở VN đa số là pin cũ kém chất lượng.


Pin vào (+ -) tụ nguồn, bỏ qua phần chỉnh lưu AC trên bo, điện áp ổn định ngay.

Cảm ơn anh Minh @mtminh câu dây, còn nhiệt tình đi mua đồng hồ đo áp lắp vào giùm.

Em về chỉnh lại:
Pin đi ra cầu chì -> công tắc 6 chân (3 nấc) bật sang trái OFF/SẠC, bật giữa OFF, bật phải ON.
Công tắc đi ra 3 cặp dây:
- 1 cấp nguồn bo LT3045x2 1A vào HAT DAC
- 1 cấp nguồn bo LT1764 3A vào Pi, Pi bẻ cong 2 chân 5V ra ngoài không cho nguồn lên HAT DAC.
- 1 cấp nguồn bo LT3042 sang USB Wifi (chưa làm tới Wifi)

Pin mua Nhật Tảo là hàng mới loại không dùng vít, nghe vài hôm mới đánh giá được vụ dung lượng/chất lượng.

Lâu đài Pi 2 Pin LiFePO4 đã hót Ok, cảm ơn các bác nhiệt tình tư vấn và hỗ trợ!
 

Thanhvo31

Well-Known Member
Pin vào (+ -) tụ nguồn, bỏ qua phần chỉnh lưu AC trên bo, điện áp ổn định ngay.

Cảm ơn anh Minh @mtminh câu dây, còn nhiệt tình đi mua đồng hồ đo áp lắp vào giùm.

Em về chỉnh lại:
Pin đi ra cầu chì -> công tắc 6 chân (3 nấc) bật sang trái OFF/SẠC, bật giữa OFF, bật phải ON.
Công tắc đi ra 3 cặp dây:
- 1 cấp nguồn bo LT3045x2 1A vào HAT DAC
- 1 cấp nguồn bo LT1764 3A vào Pi, Pi bẻ cong 2 chân 5V ra ngoài không cho nguồn lên HAT DAC.
- 1 cấp nguồn bo LT3042 sang USB Wifi (chưa làm tới Wifi)

Pin mua Nhật Tảo là hàng mới loại không dùng vít, nghe vài hôm mới đánh giá được vụ dung lượng/chất lượng.

Lâu đài Pi 2 Pin LiFePO4 đã hót Ok, cảm ơn các bác nhiệt tình tư vấn và hỗ trợ!
Bác share cho anh em cái hình với BOM (bill of material + giá) nhé.
Cảm ơn bác.
 

quatmo

Well-Known Member
Bác share cho anh em cái hình với BOM (bill of material + giá) nhé.
Cảm ơn bác.
Mình làm tháo lắp cơ động để dễ bề nâng cấp/chỉnh sửa nên tháo ra chụp cho bác xem được.

2021-04-03-23_19_34-Skype.jpg

2021-04-03-23_13_31-Skype.jpg

2021-04-03-23_19_06-Skype.jpg



2021-04-03-23_31_50-Skype.jpg

Cái khoan mini rất tiện để làm đồ nho nhỏ, bác nào thích chế cháo thì nên kiếm 1 cái. Mình mua ở khu máy cầm tay Lý Nam Đế/ Nhật Tảo. Có sẵn công tắc hành trình, kéo cần xuống máy mới chạy.

Pin LiFePO4 32650 x4 + mạch bảo vệ (tầm 10.000mAh) + cục sạc = 420k (Bác Minh khuyến cáo mua cục sạc 7.3v ở sendo).
Ốc vít, công tắc, jump dây, cầu chì... tầm 100k ở trong chợ linh kiện điện tử Nhật Tảo.
 
Chỉnh sửa lần cuối:

quatmo

Well-Known Member
Từ USB Wifi này mình tìm hiểu chút, về gỡ 2 cái USB Wifi ra xem.
USB TP Link (loại lớn quên model) có 1 con clock và Loại TP Link nhỏ (không clock).
Nó có con clock nên nãy sinh ý nghĩ cấp nguồn rời LT3042/3045 cho nó, kiểu như nguồn rời cho HAT DAC vậy, vẫn tốt hơn là dùng nguồn cấp từ Pi.

Tới vụ nguồn, trước Tết mình sang cafe với bác Minh, bác Minh đang dùng Pi 3x nguồn cấp là pin sắt Lifepo4. Học hỏi vụ pin Lifepo4, tuy nhiên chỉ làm 2x, 1 cho HAT DAC và 1 cho Pi.

Đặt hàng pin Lifepo4 CN thì lại phức tạp chút không theo ý mình, nên chạy vô chợ Nhật Tảo shop chuyên Pin, đặt hàng họ hàn tại chỗ cho bộ pin LiFePO4 32650 dung lượng 6700mAh x 4 với mạch bảo vệ, yêu cầu ra 6.4v trở lên (họ nói sạc đầy ra 7v).

Dự tính: Từ Lifepo4 ra 6.4v -> 3 bo ổn áp LT304x ra 5v (1A và 2A)
5v 2A cấp cho Pi 2
5v 1A cấp cho HAT DA
5v 1A cấp cho USB wifi.

Đã test 1x chạy OK Lifepo4 ra 6.4v -> LT3042 2A -> Pi 2 DAC.
Pi 2 + DAC + Lifepo4 + 4G router (có cổng Lan) = Music Server DAC di động.

f38f911395786a98263ac39ef240be12.jpg


5fdd785e74ee57e112ba50c90cde40b6.jpg


PS: Pin đặt Nhật Tảo màu xanh trong hình, hàn xong họ bịt lại gọn gàng.
Bác nào mua thì mua thêm cục sạc 8.4v nữa (pin sạc xả chung đường).
Khi sạc thì rút cấp nguồn ra (tuy ra 2 cặp dây nhưng nó chung đường).

Xài cấp nguồn pin cho audio nên xài pin Lifepo4.
Cấp nguồn riêng (Linear LT3042) cho USB wifi, đơn giản nhất là dùng cái kéo nhỏ mũi nhọn, cẩn thận cắt gọt dần lớp vỏ ra 1 đoạn tầm 2cm, cắt bõ lớp giấy bạc, cắt lấy 2 sợi dây đen (-) đỏ (+) ra, hàn nối nó với dây jump - ghim vào bo Lt3042 là xong. Mình làm chạy OK với lầu đài Pin bên trên.

Cái kéo mũi nhọn/ nhỏ giúp dễ dàng thao tác chính xác, không bị phạm dây trong ruột.

2021-04-04-04_50_39-Skype.jpg
 
Bên trên