Đây là một bài viết hay hướng dẫn sử dụng Raspberry làm Music server và Transport để nghe nhạc của tác giả trung224 đăng trên diễn đàn HDVietnam. Là một bài viết hay và hướng dẫn chi tiết nên mình kéo về đây để tham khảo dần dần. Bài viết gốc có tựa “Dự án Dâu Tây – Transport nền tảng Raspberry Pi chất lượng cao“.
Dấn thân vào nhạc số mấy năm, ước mơ của em là tìm được một bộ chơi nhạc số chuẩn mực. Mấy năm ấy cũng dạy cho em nhiều điều, trong đó có vai trò quan trọng của đầu phát nhạc số (transport) đối với một bộ dàn audio chơi nhạc số. Một DAC nào bất kể khủng cỡ nào mà cắm chay vào laptop cũng mất đi 10-20% công lực. Đã từng có cơ hội trải nghiệm những transport khủng như SGM Server 2015, Auralic Aries Femto, Aurender N10 hay gần đây là dCS Network Bridge, đôi tai em cảm thấy chúng ko hề thua kém những CD transport khủng. Vấn đề duy nhất là vấn đề “đầu tiên”, các transport khủng đều rất đắt. Còn các transport dưới 1000USD của các hãng có tiếng kiểu Cambridge, Marantz, Pioneer, Oppo nghe như đấm vào tai vậy. Cái duy nhất ko quá đắt mà tốt là Netwotk Birdge của PS Audio, nhưng cái này chỉ dùng cho DAC của hãng này.
Đã có lúc em đã nghĩ rằng những USB reclocker như USB Regen hay USB-SPDIF converter có thể giải quyết được vấn đề, nhưng cuối cùng vẫn phải thất vọng và phải đóng học phí cho trải nghiệm đó. Dù tốt đến mấy chúng vẫn để lại “lỗ hổng” trong âm thanh. Mutec MC-1.2 làm âm thanh rất sạch, tăng độ rõ ràng của chi tiết nhưng âm thanh vẫn bị “flat”. Mutec MC3+ USB sửa được cái “flat” đó những vẫn không sửa hết được chút “gợn, sạn” đôi khi xuất hiện, Singxer F-1 và SU-1 rất khá nhưng độ sạch trong âm thanh thì ko bằng được Mutec (rõ nhất là ở những nốt trầm của piano). Có những USB-SPDIF khủng như Berkeley Alpha USB những vẫn ko bằng transport ko dùng USB có cùng tầm giá là Auralic Aries Femto.
Ảnh minh họa
Tia sáng cuối đường hầm xuất hiện vào năm ngoái là Raspberry Pi, một bo mạch có khá nhiều điểm yếu ở dạng “trơn” nhưng lại có rất nhiều tiềm năng để khai thác. Phải đến 3 tháng gần đây với sự xuất hiện của nhiều giải pháp hỗ trợ tốt, em mới quyết tâm theo đuổi đến cùng dự án trên và đã thành công cách đây hơn 3 hôm. Nói thẳng ra thì ông nào đã diy (do-it-yourself) thì cũng luôn thích tự sướng và khoe khoang về những gì mình làm được. Nhưng thật lòng mà nói em quá hài lòng với cái transport Pi này, nó đã kết thúc con đường tìm kiếm transport dưới 1000USD của em. Với đôi tai em nó bắt đầu tiệm cận (dù vẫn chưa bằng) các transport high end, và ăn đứt bất cứ transport nào dưới 1000 USD. Thậm chí youtube streaming qua airplay đến transport Pi cũng ăn đứt soundcard VX222HR (giá mua mới 600USD) của Digigram xuất digital em đang cắm vào PC. Với tinh thần chủ nghĩa xã hội, em xin phép chia sẻ hết kinh nghiệm trong quá trình làm transport cho các bác. Hy vọng các bác sẽ có thể vận dụng thành công để phát huy tối đa bộ dàn chơi nhạc số của mình.
Tiêu chí xây dựng transport của em là tiện dụng (dễ cài đặt, dễ sử dụng, chạy ổn định, ít lỗi), chất lượng âm thanh tốt và hợp túi tiền. Để đạt được những tiêu chí đó, em sẽ đi vào từng mặt, bao gồm lựa chọn bo mạch chủ và phần mềm, tối ưu hóa phần xuất digital audio, thiết kế và xây dựng mạch cấp nguồn và cuối cùng là thi công transport (kết hợp các phần trên, chống rung, tản nhiệt,..
Chú ý: Mục đích của em khi lập cả cái topic này là bày ra một cách để mọi người có transport tốt với số tiền hợp lý để chơi. Nói chung cái này động đến điện AC 220V và mỏ hàn, nên với nhiều người chưa bao giờ động vào thì sẽ rất ngại, do đó nếu shop nào đứng ra làm để phổ cập thì cũng hoàn toàn ok.
Shop/Người/Công ty nào muốn thương mại thì cứ làm, em không có ý kiến gì cả. Tuy nhiên để tôn trọng đóng góp của chủ topic, yêu cầu các cá nhân/tổ chức thương mại hóa sản phẩm này ghi thêm dòng “Dựa theo dự án transport Dâu Tây trên hdvietnam.com” trong phần giới thiệu sản phẩm trên web của các bác hoặc trên các tin rao vặt trên các diễn đàn. Em chỉ cần như thế, ko cần gì hơn.
Ngoài ra, em sẽ chỉ đảm bảo chất lượng transport nếu thục hiện đúng những gì trong cấu hình đề nghị của em ở phía dưới
========
Lựa chọn bo mạch chủ và phần mềm
1.1. Lựa chọn bo mạch phù hợp cho audio
Hiện nay trên thị trường có 3 bo Raspberry Pi chính, đó là Raspberry Pi 2, Raspberry Pi 3 và Raspberry Pi Zero. So sánh thì có thể xem ở link sau:
http://socialcompare.com/en/comparison/raspberrypi-models-comparison
Từ bảng so sánh có thể thấy Pi 3 là mạnh nhất, gần gấp đôi Pi 2. Tuy nhiên, với kinh nghiệm sử dụng của em, lựa chọn tối ưu cho transport audio là Raspberry Pi 2. Tốc độ xử lý cao của Pi 3 là một lợi thế cho việc giải mã tín hiệu hình ảnh cho xem phim nhưng hoàn toàn thừa thãi với các tác vụ audio thông thường. Chưa kể, việc chạy ở xung nhịp thấp hơn hẳn chỉ 900 MHz giúp Pi 2 sản sinh ít nhiễu EMI/RFI hơn hẳn Pi 3, do đó ít gây ảnh hưởng xấu đến các thiết bị ngoại vi gần đó hơn. Trên thực tế, trải nghiệm của em cũng như của khá nhiều bác chơi Pi là tiếng qua Pi 2 có nhiễu nền thấp hơn Pi 3. Raspberry Pi Zero bị loại vì không có cổng LAN, cũng như sự hỗ trợ hạn chế từ các software.
Hiện nay Raspberry Pi 2 đã ngừng sản xuất nên nếu ko kiếm được raspberry Pi 2, các bác có thể chọn Raspberry Pi 3, nhưng phải underclock xuống chạy xung như Pi 2. Khi đấy, dùng Pi 2 hay Pi 3 hầu như không khác gì nhau
Cách để underclock Pi 3: Lấy thẻ nhớ đã cài OS (Rune, Moode, Volumio, Pi Core Player), mở file config.txt, copy đoạn text phía dưới, save lại rồi cắm vào Raspberry Pi 3 và dùng
arm_freq=800 sdram_freq=400 core_freq=400 gpu_freq=300 over_voltage=-4 over_voltage_sdram=-4 gpu_mem=16
Để đảm bảo tiêu chí ổn định cho transport, hãy dùng dây LAN, tránh dùng wireless cho streaming (hoặc phải mua được USB-Wireless dongle tốt). Ngoài ra, chất lượng âm thanh sẽ được tăng đáng kể bằng việc tắt hết các tính năng wireless adapter cũng như HDMI trên Pi
1.2. Chọn lựa phần mềm (OS) cho Raspberry Pi.
Về OS, lựa chọn tốt nhất là Moode Audio. So với các OS khác như Rune Audio, Volumio, PiCore Audio, em thấy Moode Audio có những ưu điểm nổi trội sau
i) Dễ sử dụng : về các tính năng cơ bản Moode gần như giống như các OS khác. Tuy nhiên, trong quá trình sử dụng, em thấy Moode được thêm rất nhiều tính năng như tắt wifi, tắt HDMI, mở rộng thẻ nhớ để copy nhạc lên được tích hợp sẵn với giao diện trực quan. Với các OS khác, chúng ta phải dùng ssh, ko được tiện lợi bằng
ii) Liên tục cập nhật tinh năng mới: Điểm em thích nhất ở Moode (đặc biệt là từ bản 3.5) là việc hỗ trợ real-time kernel. Với real-time kernel trên Moode và schedule FIFO, tác vụ audio luôn được có thứ tự ưu tiên cao nhất trong xử lý, đồng thời được cấp riêng một core CPU để xử lý. Đồng thời với chế độ chạy FIFO, chúng ta không còn phải loay hoay với cái chế độ round-robin của Windows nữa, toàn bộ tài nguyên hệ thống sẽ được tối ưu hóa cho audio
Tác dụng lên âm thanh của điều này là âm thanh có cảm giác nhanh và chi tiết hơn trước.
iii) Hỗ trợ tốt, đặc biệt là sửa bug khi tay Tim Curtis (tác giả) luôn trực trên diyaudio hằng ngày và sẵn sàng giải đáp, sửa bug.
Tuy nhiên, cũng có thể dùng Volumio, Rune, Max2play, DietPi,… nếu thích
1.3. Về phương thức streaming, hiện nay đa phần anh em đều sử dụng dạng MPD (Music Player Deamon) thuần túy trên các OS và cho thấy nhiều kết quả nhất định. Tuy nhiên, đứng dưới góc độ ổn đinh, tiện dụng và cả hình thức trong sử dụng, em thành thật khuyên các bác xử dụng kiểu streaming UPnP (DLNA) cho nhạc lossless, đối với các video youtube hay nguồn nhạc số khác thì dùng Airplay streaming sang transport Pi
Lợi thế của việc sử dụng UPnP (DLNA) đó là: khả năng quản lý file nhạc của Minimserver (hoặc ở mức độ thấp hơn như Jriver media server, Kazoo Server) hơn hẳn so với mpd trên các OS như Moode hay Rune; độ tiện dụng và ổn định cao, cài đặt và config đơn giản, ko còn những lỗi không nhận NAS/thư mục chứa nhạc như khi dùng Pure MPD; giao diện control point đẹp và chi tiết, đặc biệt từ Linn Kazoo hay Lumin, tính thẩm mỹ hơn hẳn giao diện của các OS như Rune hay Moode
Em vừa cài thử Minimserver trên Raspberry Pi 3. Quét 2,5TB nhạc hết có 15 phút cho lần quét đầu tiên
Vài tấm hình với Linn Kazoo control remote trên PC (trên smartphone hay tablet cũng sẽ tương tự), đảm bảo ăn đứt moode/rune
Cuối cùng, việc sử dụng UPnP có một khả năng nâng cấp cho hệ thống rất tuyệt so với MPD Pure từ OS, đó là mở ra khả năng sử dụng DSP như room correction hay upsampling. Với MPD, các tác vụ trên đều được thực hiện ở renderer, ở đây là Raspberry Pi. Chưa nói đến chuyện năng lực của thuật toán built in trên các OS thì bản thân việc DSP trên transport Pi là một chuyện rất không nên. Lý do là Pi là renderer cuối cùng trước khi xuất ra digital, để đảm bảo chất lượng âm thanh tốt nhất thì bản thân Pi nên được hoạt động ở mức thấp, bằng không thì nhiễu nền sẽ tăng. Trong khí đó DSP như upsampling hay room correction lại rất ngốn tài nguyên hệ thống, dẫn đến CPU trên Pi phải hoạt động ở mức cao, từ đó sản sinh ra nhiều nhiễu EMI/RFI, lại tiêu thụ nhiều điện năng, bắt nguồn cấp cũng phải hoạt động ở trạng thái cao, làm giảm độ sạch của phần cấp nguồn, tóm lại là lợi bất cập hại. Với UPnP/DLNA và Jriver Media Server, bác có thể thực hiện digital room correction trên server, sau đó đóng gói và gửi file nhạc đã được DSP đến renderer là Raspberry Pi xuất ra ngoài.
Cấu hình tinh chỉnh cho Moode Audio
Hướng dẫn sử dụng UPnP với Raspberry Pi
Bước đầu tiên, bác mở tính năng UPnP renderer trên OS, ở đây em dùng Moode Audio (Rune hay Volumio cũng tương tự)
Bước thứ hai, cài đặt media server, ở đây em dùng Minimserver.
Cài đặt rất đơn giản theo hướng dẫn ở đây http://minimserver.com/installing.html
Để ví dụ, em cài đặt Minimserver trên máy tính của em
- Tải và cài đặt Java Runtime Environment vào máy tính (đây là môi trường làm việc của minimserver) theo link https://www.java.com/en/download/manual.jsp
Máy tính em là windows 64 bit nên em sẽ chọn Windows Offline 64 bit
2. Tài và cài đặt Minimserver theo link http://minimserver.com/downloads/index.html
Sau khi cài đặt xong, khởi động Minimserver. Tìm đến system tray (các biểu tượng nhỏ ở góc phải màn hình), sẽ thấy biểu tượng minimserver có màu đỏ
Bây giờ chuột phải vào system tray đó, chọn Properties rồi vào phần Packages như hình,
Nhấp chuột vào minimstreamer-0.6.3, sau đó nhấn install. Chuyển sang phần Server. Tại đây nhìn vào contentDir và nhập địa chỉ nơi chứa nhạc vào, như của em là hai ổ cứng F và G, sau đó nhân apply và sau đó là OK.
Chuột phải vào biểu tượng minimserver trên system tray và nhấn relaunch. Lúc đó biểu tượng minimserver sẽ chuyển sang màu vàng, có nghĩa là đang scan thư mục chứa nhac.
Sau khi scan xong thì biểu tượng minimserver sẽ chuyển sang màu xanh và sẵn sàng xử dụng
Lưu ý: Lần đầu khởi động minimserver, windows firewall sẽ hiện lên hỏi là bác có cho phép minimserver được access file nhạc trong kiểu mạng nào (private hoặc public networks). Nếu mạng của bác đang ở chế độ nào thì chọn cho phép minimserver hoạt động ở chế độ đấy. Với em là private network
3. Sau khi Minimserver scan xong, bây giờ là lúc sử dụng. Các bác có thể dùng Linn Kinsky trên máy tính, Lumin/Linn Kazoo/Bubble UPnP trên điện thoại để chọn bài và play
Với Linn Kinsky, chọn Room là Moode UPnP, chọn Source là Playlist. Library là Minimserver
Với Linn Kazoo trên điện thoại, chọn Room là Moode UPnP, chọn MediaServer là Minimserver
Với Bubble UPnP, chọn Renderer là Moode UPnP, chọn Library là Minimserver
Với Lumin, vào phần Setup chọn Lumin là Moode UPnP, chọn Music Library là Minimserver
Lần đầu scan của Minimserver cũng ko nhanh lắm, với con máy tính core i7 của em thì scan 5TB nhạc hết cỡ 15 phút. Tuy nhiên, những lần scan sau rất nhanh, cỡ 5 phút là cùng.
Đối với việc cài đặt và hiệu chỉnh minimserver trên NAS cũng gần tương tự trên máy tính, hướng dẫn chi tiết
http://minimserver.com/downloads/index.html
Airplay streaming để xem youtube hoặc dùng các nguồn nhạc trực tiếp khác trên mạng như zing, spotify, nhaccuatui
Trong Moode và Rune Audio đều có tính năng Airplay receiver trong phần Audio Configuration
Sau khi bật tính năng airplay của Moode/Rune lên. Các bác lên mạng download phần mềm Tuneblade về theo link http://tuneblade.com/ và cài vào máy. Tuneblade là một phần mềm xuất airplay từ máy tính dùng windows sang các thiết bị khác. Nếu các bác streaming sang một số streamer thương mại như của Marantz, Pioneer hay Airport Express, Apple TV thì các bác phải mua với giá 10$ hoặc streaming sẽ tự tắt sau 10 phút. Tuy nhiên, đối với streaming sang Raspberry Pi qua Moode/Rune thì ko mất phí, chạy đầy đủ tính năng.
Sau khi cài xong các bác bật Tuneblade và khởi động Raspberry Pi sẽ thấy như trên hình. Vào phần setting, bác vào phần Airplay Streaming. Ở đây, bác có thể chọn mức latency (độ trễ so với video) của tín hiệu âm thanh qua airplay. Tùy thuộc vào tốc độ mạng LAN và streamer mà chọn. Cá nhân em với việc dùng dây LAN và raspberry Pi 3 thì dùng real-time streaming, khi đó âm thanh chỉ chậm hơn hình ảnh cỡ 0,2s.Nhấn Apply là xong.
Làm xong bước này, các bác bắt đầu kết nối Airplay với moode/rune trên Pi bằng việc nhấn biểu tương Play trên Tuneblade như trên hình. Sau khi kết nối thành công sẽ có biểu tượng như sau
Vậy là xong, toàn bộ âm thanh trên máy tính/laptop như youtube, spotify, các trang nghe nhạc trên mạng, kể cả sopcast để xem bóng đá sẽ được truyền qua airplay đến Raspberry Pi để render và xuất ra DAC/HAT
Lưu ý: Độ delay trên Airplay phụ thuộc khá nhiều vào đường truyền mạng, nên các bác cố gắng kết nối Máy tính/laptop và Raspberry Pi với Router bằng dây LAN để có kết nối ổn định nhất.
2. Tối ưu hóa quá trình xuất tín hiệu dgital
Nếu như việc chọn hardware lẫn software cho Raspberry Pi chủ yếu để giải quyết khâu tiện dụng và ổn định cho transport, có ảnh hưởng không quá lớn đến chất lượng âm thanh cuối cùng thì ba yếu tố còn lại là những yếu tố sống còn quyết định chất lượng cho transport.
Chúng ta sẽ bắt đầu với phần tối ưu hóa việc xuất digital audio
2.1. Các phương thức truyền tín hiệu digital audio từ Raspberry Pi và những ưu nhược điểm
Trong việc xuất tín hiệu digital audio, hiện có những cách phổ biến như sau: USB, toslink, coaxial SPDIF, AES/EBU, BNC SPDIF/AES3 và i2s. Raspberry Pi được tích hợp sẵn hai hình thức đó là USB và i2s.
2.1.1. Xuất tín hiệu qua USB là giải pháp đơn giản và tiện dụng, tuy nhiên, USB theo quan điểm của em ko phải giải pháp tốt cho digital transport, đặc biệt trong dự án về Raspberry Pi
Raspberry Pi có một điểm thiết kế hết sức sida, đó là đường LAN Internet và USB dùng cùng một con chip USB/Ethernet. Do đó, sẽ là hoàn toàn không tối ưu nếu lấy nhạc qua đường Internet/USB và sau đó lại xuất digital ra DAC qua đường USB. Do đó trong dự án Pi này phương án dùng USB xuất ra DAC là không tối ưu và bị loại bỏ.
Có nhiều lý do cho việc tại sao USB lại không phải giải pháp tốt cho digital transport, nhưng chủ yếu là nhiễu điện từ. Nhiễu điện từ có hai nguyên nhân, nguyên nhân thứ nhất là do nguồn điện không sạch, nguyên nhân thứ hai là do bản thân các con chip USB microcontroller (lẫn CPU processor) hoạt động ở tần số quá cao gây ra. Nhiễu điện từ này ảnh hưởng không chỉ đến đường tín hiệu data mà gây nhiễu trên đường xuất 5V+ lẫn đường ground (nối đất). Các nhiễu điện từ này sẽ theo đường ground lẫn đường 5V+ đến các thiết bị tiếp theo, dù nó không ảnh hưởng quá lớn đến phần digital của mạch, nhưng lại đặc biệt làm giảm chất lượng của các phần analog của mạch, đặc biệt là các tầng analog ở DAC và PreAmp.
Một giải pháp để giảm nhiễu từ USB là cấp nguồn riêng cho mạch nhận tín hiệu USB trên DAC rồi ngắt ko cho đường 5V+ đến DAC. Nhiều audiophile đã làm điều này trong vài năm qua (trong đó có em) và cho một chút hiệu quả tích cực, nhưng cách này ko giải quyết được vấn đề là nhiễu điện từ ảnh hưởng đến đường data và đường ground. Có một giải pháp cho vấn đề trên là cung cấp galvanic isolation (cách ly điện) cho đường USB như các thiết bị Intona USB isolator hay Uptone ISO Regen mới ra. Vấn đề cơ bản là do USB audio được dựa trên nền tảng USB2.0 với bandwidth quá lớn (460Mbit/s) nên hiện nay chỉ có một chip USB isolator duy nhất là Silanna ICE08USB. Tât cả các thiết bị isolator USB cho audio hiện nay đều phải dùng chip này và nó rất đắt. Chưa kể đến do bandwidth quá rộng nên so sánh với các chip isolator i2s thông thường, chip USB2.0-isolator như Silanna ICE08USB tăng jitter thêm 500-600ps, trong khi một chip i2s isolator cơ bản như NVE IL715 chỉ tăng jitter thêm 100ps. Dĩ nhiên, ngay sau isolator thì phải có phần reclock để làm giảm jitter đi, nhưng với lượng jitter tăng thêm nhiều như vậy thì rõ ràng reclock xong tín hiệu cũng sẽ khó có thể chuẩn so với việc chỉ chỉ cách ly và reclock tín hiệu i2s thường.
Một giải pháp thứ hai cho việc khắc phục yếu điểm của USB là tập trung tối ưu hóa cả bo mạch transport lẫn phần USB out. Rất tiếc việc này khá phức tạp, chỉ ở một số hãng gần đây mới làm được, tiêu biểu là Sonore Microrendu, SotM sMS-200 hay Aurender, Auralic, dCS và giá của chúng đều từ cao đến rất cao, đồng thời cũng không giải quyết rốt ráo việc nhiễu điện từ, vẫn cần có USB isolator. Nói tóm lại, USB vẫn có thể đạt được chất lượng cao trong việc làm transport nhưng đó là một con đường dài và trải toàn bằng tiền đô. Quay trở lại Raspberry Pi, xuất digital audio qua USB trên Pi thừa hưởng mọi điểm yếu như trên, chưa kể Ethernet và USB của Pi đều dùng chung một Microcontroller làm cho bandwidth rất nhỏ nếu sử dụng cùng lúc. Do đó theo em, USB trên Pi là giải pháp không ổn một chút nào, rẻ nhưng không ngon bổ.
2.1.2. Xuất tín hiệu qua i2s
Rất may mắn, Raspberry Pi có một cách khác để xuất tín hiệu digital, đó là i2s. Nhắc đến i2s là nhắc đến những lời ngợi ca có cánh về một dạng truyền tín hiệu “pure”, toàn vẹn từ Raspberry sang DAC không cần qua những con chip USB controller hay SPDIF receiver, giống hệt như những phát biểu ngô nghê kiểu bit is bit, “tín hiệu digital chỉ co 1 với 0 thì làm sao bị ảnh hưởng bởi truyền dẫn” ngày xưa Rất tiếc, đời không là mơ. I2S đúng là đường truyền tín hiệu ngắn nhất từ bo mạch xử lý đến DAC, bỏ qua các bộ giải mã SPDIF, USB,… nhưng i2s từ Raspberry Pi thì có khá nhiều yếu điểm.
Yếu điểm đầu tiên là cũng như USB, ground từ Pi cũng theo GPIO i2s đến các thiết bị tiếp theo.
Yếu điểm thứ hai là tín hiệu i2s của Pi cũng rất nhiều jitter. Lý do là vì tín hiệu i2s được tạo ra bởi clock trên Pi, vốn đã có độ chính xác thấp và nhiều jitter, nguồn điện 3,3V cho clock trên Pi cũng được tạo ra bởi mạch SMPS trên Pi chất lượng cũng thấp nốt. Đó là chưa kể clock trên Pi là họ 48kHz nên khi tạo i2s cho tín hiệu 44,1kHz thì thêm khá nhiều jitter nữa
http://www.dimdim.gr/2014/12/the-rasberry-pi-audio-out-through-i2s/
2.2. Các giải pháp thực tế để giải quyết vấn đề xuất tín hiệu digital audio trên Pi
Nói chung trong thực tế, bất cứ cái gì cũng có điểm yếu và bất cứ giải pháp sửa chữa nào đưa ra cũng có tính hai mặt. Giải pháp tốt là giải pháp có nhiều lợi thế nhất, và đối với Raspberry Pi mà nói, i2s theo em tốt hơn USB. Lý do rất đơn giản, khắc phục những điểm yếu của i2s dễ dàng và rẻ hơn rất nhiều so với khắc phục những yếu điểm của USB
2.2.1 Dùng i2s isolator để cách ly nhiễu điện từ
Đầu tiên là vấn đề giải quyết nhiễu điện từ, giải pháp thì cũng như USB, đó là các bo mạch dùng chip i2s isolator. Hiện nay, trên thị trường có hai board cho Raspberry Pi, đó là i2s/DSD isolator của Ian Jin trên diyaudio (được bán theo dạng group buy)
http://www.diyaudio.com/forums/pc-b…-i2s-dsd-isolator-hat-native-dsd-decoder.html
Hoặc sản phẩm thương mại của Allo Audio
https://www.allo.com/sparky/isolator.html
Hai board này đều có nhiệm vụ cách ly đường i2s, đặc biệt là cách ly ground giữa Pi và các thiết bị ngoại vi. Việc cấp nguồn cho các board phía trên sẽ do nguồn ngoài đảm nhiệm, ko dính dáng gì đến Pi nữa.
2.2.2 Dùng reclocker phía sau i2s isolator để giảm jitter
Để khắc phục vấn đề jitter lớn trên i2s từ Pi, giải pháp dễ nhất là thêm những board có khả năng reclocker tín hiệu i2s. Hiện nay trên thị trường có nhiều thiết bị làm điều này, em xin phép được chia vào 2 nhóm chính:
Nhóm 1: Reclock tín hiệu i2s sau đó xuất trực tiếp tín hiệu i2s ra ngoài cho các DAC có i2s input, tiêu biểu là Kali (Reclocker) của Allo Audio
https://www.allo.com/sparky/kali-reclocker.html
và FIFO Recloker của Ian Jin trên diyaudio
http://www.diyaudio.com/forums/grou…ronous-i2s-s-pdif-fifo-kit-group-buy-243.html
Board FIFO Reclocker là ý tưởng đầu tiên với sự đầu tư kĩ lưỡng với nhiều option nâng cấp như khả năng thay thế clock để có chất lượng khủng như dùng clock OCXO, đây là bản dành cho dân hardcore một chút. Board Kali là bản thương mại học ý tưởng từ board FIFO với ít tùy chọn hơn. Cả hai board đều là giải pháp lý tưởng cho các DAC có input i2s như các DAC của PS Audio, Aqua Audio hay các DAC Tàu như Gustard X20, LKS-MH-004, Audio GD, Holo DAC.
Nhóm 2: Reclock tín hiệu i2s sau đó convert sang SPDIF hay AES/EBU để xuất ra DAC. Để có thể đạt tiêu chuẩn đủ để làm transport xịn thì các board này phải đảm bảo các yếu tố sau: 1) reclock tín hiệu i2s bằng 2 clock cho 2 nhóm tần số 44,1kHz hay 48kHz. 2) có tùy chọn cấp nguồn điện sạch cho board, ko phụ thuộc vào nguồn trên Pi. Với hai tiêu chí trên, hiên chỉ có 2 board đạt tiêu chuẩn đáng để sử dụng đó là 502DAC của Pi2Design và DigiOne của Allo Audio
Đặc biệt gần đây bọn Allo mới ra DigiOne Signature với nhiều cải tiến trong thiết kế và linh kiện rất phù hợp về mặt kĩ thuật. Em sẽ thử trong thời gian tới để xem hiệu quả so với DigiOne thường tới đâu
Riêng Digi+ Pro cũng là một giải pháp không tồi nếu được kết hợp với board i2s isolator của Allo Audio, vì board này có sẵn 2 mạch chuyển đổi nguồn dùng LT3042 tích hợp để cấp 3.3V cho WM8804/ WM8805 lẫn clocks. Tuy nhiên, 2 clock Xpresso trên Digi+ Pro có chất lượng thấp hơn rất nhiều so với clock NZ2520SD trên DigiOne và 502DAC.
Tóm lại, để có thể tối ưu chất lượng của phần xuất digital audio từ Raspberry Pi
Nếu DAC có đường i2s input thì phương án đề nghị là Kali Reclocker (mức tối thiểu) hoặc Ian FIFO Reclocker trên diyaudio.
Nếu DAC có đường SPDIF in thì phương án đề nghị là DigiOne của Allo (phải mod tháo bỏ cục DC-DC transformer và cấp nguồn 5V ngoài) hoặc DigiOne Signature (cho hết thuốc và không cần phải mod)
3. Thiết kế và thi công phần nguồn điện
Đây có thể coi là phần tối quan trọng cho một transport (hay bất kì thiết bị audio) tốt. Ở đây nhiệm vụ của chúng ta là thiết kế hai bộ cấp nguồn cho Raspberry Pi và phần Reclocker. Không thể dùng chung một nguồn vì đã có board isolation nằm giữa để cách ly điện hai phần này.
3.1 Cấp nguồn cho Raspberry Pi.
Phần cấp nguồn trên Pi được thiết kế như sau: Nguồn 5V DC vào sẽ được dùng để cấp 5V. Các bộ phận cần cấp nguồn 3.3V và 1.8V sẽ dùng nguồn 5V chuyển về điện thế tương ứng bằng mạch SMPS (cho 3.3V và 1.8V ouput).
3.1.1 Các phương án cấp nguồn cho Raspberry Pi.
Phương pháp 1: Cấp điện 5V qua mini USB. Đây là cách làm đơn giản nhất và an toàn nhất, vì nguồn 5V sẽ được đi qua mạch bảo vệ, nếu bị quá Pi sẽ tự động tắt để tự bảo vệ. Nhược điểm là do mạch bảo vệ với các linh kiện có độ chính xác thấp khiến dòng điện cung cấp cho các chip xử lý và clock ko được sạch nữa. Đó là chưa kể nguồn sạch 5V sạch mấy thì vẫn phải qua SMPS built-in trên Pi làm giảm chất lượng
Phương pháp 2: Cấp điện 5V cho Pi qua GPIO (pin 4 và 6). Với việc này, dòng điện không đi qua mạch bảo vệ nên sẽ sạch hơn, tuy nhiên, nếu có sự cố kiểu sét đánh chả hạn thì Pi sẽ dễ tèo vì ko có mạch bảo vệ. Cách này vẫn có yếu điểm là những phần cần nguồn 3.3V và 1.8V vẫn dùng SMPS trên Pi
Phương pháp 3 (phương pháp hardcore nhất, dành cho người có kinh nghiệm) đó là dùng 4 nguồn cấp điện riêng cho 4 điểm 5V, 3,3V và 1,8V, 1,2V trên Pi bằng cách hàn thẳng, bỏ qua hết mạch bảo vệ. Cách này sẽ có lơi thế là bỏ qua được luôn cái SMPS. Nhước thì là phải can thiệp trực tiếp lên Pi.
Credit: Ý tưởng này bắt đầu từ các bạn Nhật bổn nổi tiếng kĩ tính và hardcore :
http://www.easyaudiokit.com/bekkan/Raspberry/Raspberry2.html
sau đó được một bạn Tây trên runeaudio làm theo
http://www.runeaudio.com/forum/3x-powersupply-for-rpi-t4141.html
Qua so sánh của em thì phương án 3 là chuẩn chỉ nhất, cho chất lượng cao nhất, nên nếu muốn Raspberry Pi thể hiện hết công lực thì nên dùng phương án 3
Cách thực hiện phương pháp 3 như sau
- Dùng mỏ hàn để gỡ con chip SMPS ở trên mặt trên của Raspberry Pi 2
2. Hàn dây (+) nối từ nguồn 3.3V vào điểm PPM8, từ nguồn 1.8V vào điểm PPM9, từ nguồn 5V vào điểm GPIO Pin 4 hoặc Pin 2 hoặc PP7. 3 dây ground từ 3 nguồn trên nối vào GPIO pin 6
Sau khi chọn được phương án cấp nguồn thì ta xét tới là câu hỏi “Bao nhiều điện cho Pi là đủ”.
https://www.raspberrypi.org/help/faqs/
Nhìn vào bảng số liệu nói trên Pi 2 “trơn”, không cắm thiết bị ngoại vi đòi khoảng 350mA ở mức trung bình, khi ta tắt HDMI, và thêm thẻ nhớ và dây LAN và GPIO vào thì lượng điện mà Pi2 cần sẽ là 5V 400-450mA. Tuy nhiên, để đảm bảo headroom của nguồn điện, em đề nghị xây dựng nguồn có output 5V 1A-1.2A trở lên cho việc chạy transport Pi (không cắm ổ cứng ngoài). Có một thực tế là các thiết bị digital là tải động và lượng điện cần sẽ liên tục biến đổi, thậm chỉ có lúc sẽ ngốn một dòng cao gấp rưỡi, thậm chí gấp đôi dòng tiêu chuẩn bình thường. Nếu như nguồn chúng ta xử dụng chỉ xuất được 500mA thì ở những thời điểm dòng đòi cao đột xuất, chip xử lý ko được cung cấp đủ điện sẽ hoạt động kém đi. Thực tế trải nghiệm của em nếu nguồn quá gần mức công suất trung bình thì với mọi thiết bị audio mà nói, âm thanh luôn có xu hướng bí, không thoát.
Có một câu hỏi đặt ra là tại sao có bo Isolator, có nghĩa là đã cách ly điện lẫn ground giữa Pi và bo xuất digital rồi, có nghĩa là nhiễu từ Pi ko thể qua board digital nữa rồi, thì cần gì nguồn điện sạch nữa.
Câu trả lời nằm ở bản chất của nhiễu điện vốn là dạng sóng điện từ nên nó có hai cách để truyền ra ngoài: cách thứ nhất là truyền điện qua vật liệu dẫn điện (tức là qua đường mạch bình thường), chúng ta đã cách ly bằng isolatorPi. Cách thứ hai là dạng sóng bức xa ra môi trường, cái này thì không tránh được và ko có cách nào cách ly hoàn toàn được, kể cả có sử dụng các biện pháp che chắn vì với một số tần số sẽ đòi hỏi lớp chắn phải kín hoàn toàn, trong khi chúng ta vẫn cần có chỗ hở để nối dây điện vào hoặc nối Pi với các bo mạch phía trên.
Nguyên nhân của nhiễu điện trên Pi có hai nguyên nhân, thứ nhất là do bản thân các linh kiện điện tử như chip gây ra (cái này thì ko có cách gì thay đổi được), thứ hai là do bản thân SMPS trên Pi gây ra. Hai nguồn nhiễu này lại chồng chập và tệ hơn có thể cộng hưởng làm độ nhiễu trở nên rất lớn.
Chính vì vậy, để giảm nhiễu, việc tháo bỏ SMPS built-in là cần thiết để cắt bỏ một nguồn gây nhiễu. Còn việc cấp nguồn sạch, ổn định là để giảm độ nhiễu từ trường do điện trường biến thiên. Nếu bác có học vật lý lớp 11 thì sẽ biết là cứ điện trường thay đổi thì sẽ tạo ra từ trường quanh nó
3.1.2 Chọn bo nguồn cấp điện cho Pi
Dù là chọn phương án nào trong 3 phương án trên thì yếu tố quyết định vẫn là chọn được mạch cấp nguồn phù hợp.
Về mạch nguồn, chúng ta có nguồn xung (SMPS) và nguồn tuyến tính (LPS).
Ưu điểm của nguồn xung (SMPS): nhỏ, gọn nhẹ, hiệu suất cao, tỏa nhiệt thấp.
Nhược điểm của SMPS: Rất nhiều nhiễu nếu không được lọc cẩn thận. Chế tạo lọc cho SMPS khó khăn hơn rất nhiều LPS vì nhiễu của SMPS ở trên tất cả các tần số (đặc biệt là tấn số cao). Nhiễu này ảnh hưởng không chỉ đến các phần mạch mà nó cấp nguồn mà còn đẩy ngược về nguồn tổng, gây nhiễu đến các thiết bị khác. Mà ampli hay pre thì thường ko dùng EMI filter nên chịu ảnh hưởng khá nặng, đó là lý do tại sao với nhiều bộ dàn chỉ cần cắm SMPS vào cũng một ổ cắm đã có cảm giác nhiễu nền tăng lên
Ưu điểm của nguốn tuyến tính (LPS): linh kiện và mạch lọc đơn giản, tiếng nghe qua LPS thường sạch hơn SMPS (trừ iFi iPower)
Nhược điểm của nguồn tuyến tính (LPS): hiệu suất thấp, tỏa nhiễu nhiệt, cần tản nhiệt. Nhiễu của LPS chủ yếu do nhiễu do diode gây ra và nằm nhiều ở các tấn số thấp (đặc biệt là ở các tấn số là bội số của 50/60Hz)
Em xin liệt kê từng nhóm mạch nguồn để xem xét
3.1.2.1 Nguồn xung (SMPS)
Đây là giải pháp dễ dàng nhất, mua về dùng luôn. Nguồn xung tiêu biểu là cục sạc hoặc mấy cục pin Xiaomi. Nói chung đây là phương án tệ nhất cho transport Pi (và audio nói chung) vì 99,9% các nguồn xung có bộ lọc rất kém siêu nhiễu , duy chỉ có một ngoại lệ là có thể được sử dụng (thực tế là chất lượng khá tốt), đó là iFi iPower 5V
http://ifi-audio.com/portfolio-view/accessory-ipower/
Theo nhà sản xuất, iFi iPower có nhiễu chỉ 1uV. Nghe khá hoành tráng nhưng nếu để ý kĩ, bọn này đã lập lờ đánh lận con đen ở chỗ “trên miền nghe”, tức là nhiễu 1uV chỉ trên miền 20Hz – 20000Hz, còn nhiễu ngoài miền đó thì ko công bố (và em chắc là tệ hơn rất nhiều) trong khi với SMPS thì khả năng cao nhiễu trên miền ngoài 20000Hz là rất nhiều. Tuy nói vậy để mọi người cẩn trọng với những lời quảng cáo “thuốc hàng” của các công ty audio, nhưng khi dùng với Pi, em thấy chất lượng của nguồn iFi iPower cũng rất tốt. Độ sạch và cả độ động gây ra khi dùng iFi iPower đều rất tốt, nếu nói tổng thể ra thì hơn đứt mấy LPS một tầng lọc từ những IC cổ lỗ như LT317/337 hay LT1083/LT1084.
Theo quan điểm của em, nếu bác nào ko có khả năng (hoặc không thích) diy thì iFi iPower 5V là giải pháp khá tốt cho việc cấp nguồn cho Pi vì nó có chất lượng khá tốt, tiện dụng mua về dùng ngay và không phải quá đắt (cỡ 1 triệu VND), dù chỉ có thể dùng để cấp điện cho Pi qua mini USB (phương án 1) hoăc cùng lắm là qua GPIO pin (phương án 2). Ở các phần sau em sẽ dùng nó như một điểm mốc để đánh giá.
Lưu ý: Nhiều bác sẽ nghĩ là dùng Pin ví dụ như cục powerbank Xiaomi là tốt vì pin là nguồn một chiều rất sạch. Vấn đề là ko có pin 5V, chỉ có pin 3.2V, do đó cục powerbank thực chất là Pin + nguồn SMPS, nên cuối cùng nó vẫn là nguốn SMPS thôi.
3.1.2.2 Nguồn tuyến tính (LPS)
Nguồn tuyến tính (LPS) thường chia làm 2 loại chính:
3.1.2.2.1. Nguồn Shunt
Nguồn shunt là loại nguồn có hiệu suất thấp nhất, tỏa nhiệt nhiều nhất,tuy nhiên lại có lợi thế là rất ít nhiễu và có điện trở đầu ra rất thấp. Nhiều người nói nguồn shunt hay hơn nguồn series (kiểu class A nghe hay hơn class AB) thật ra em thấy tùy thuộc vào mạch nhiều hơn.
Mặc dù nguồn shunt có lợi thế có trở kháng đầu ra thấp nhưng do tỏa quá nhiều nhiệt, nên nguồn shunt chỉ phù hợp để cấp nguồn cho các mạch có yêu cầu dòng nhỏ. Với Raspberry Pi, do yêu cầu dòng là tương đối lớn 1A-1.2A trở lên nên em không khuyên mọi người dùng nguồn shunt, trừ khi cấp nguồn theo phương án 3 của mục 3.1.1, tức là có 3 nguồn shunt riêng nguồn cho 5V, 3,3V và 1,8V, lúc đó thì mỗi nguồn shunt tầm 0.4 A -0.5 A thì ok
Khi sử dụng nguồn shunt thì phải rất chú ý đến tản nhiệt. Như hình transport của em dùng cả một cái tản nhiệt to như thế kia cho nguồn shunt Salas Reflektor mini (bo có 2 con led mau xanh) mà tản nhiệt vẫn khá nóng.
3.1.2.2.2. Nguồn series
Nguồn series có hai loại
Loại 1: Nguồn dựa trên IC như LT317/337, LT1083/LT1084, LT3083, LT3042/3045
Hầu hết các nguồn mà mọi người dùng trên taobao là nguồn dựa trên các IC rất cổ đó là LT317/337, LT1083/LT1084. Các IC đó không tệ, nhưng thật sự là độ chính xác của nó không cao, nhất là khi quá 1000Hz thì nhiễu từ các IC này tăng vọt. Các loại IC này vẫn có thể sử dụng trong các mạch lọc lần 1 hoặc trong Pre,.. nhưng không còn phù hợp cho yêu cầu cấp điện cho Raspberry Pi (chỉ cần 1A). Lúc đầu em cũng đã mua một bo LT1084 về thử, cũng dùng linh kiện tốt (tụ Nichicon KG, trở caddock, tụ lọc Panasonic FM) nhưng kết quả thì dù tốt hơn cục sạc kha khá, nhưng tổng thể vẫn không bằng được iFi iPower.
Lý do chính cho việc dùng những IC như LT3043/LT3045 đó là khả năng cản nhiễu của các IC cũ rất tệ ở tần số cao, mà đó lại là tần số hoạt động của các con chip ARM, USB microcontroller.trên Pi. Ví dụ như LT3042/LT3045 có PSRR (power supply rejection ratio) giữ được 79dB ở mức 1MHz, trong khi LT1963 thì PSRR bắt đầu tụt dôc không phanh từ 1000Hz và đến 1MHz chỉ còn 20dB. LT1083/LT1084 cũng tương tự
Nhiều bác đã nghe đến LT3042 với 0.8V RMS noise, một số board như của diyinhk đã bán dùng LT3042
http://www.diyinhk.com/shop/audio-k…e-dac-power-supply-regulator-3357v-15ax2.html
Theo quan điểm của em, không nên dùng board này cấp cho Pi nếu các bác chỉ định cấp nguồn theo phương án 1 và 2 ở mục 3.1.1 vì dù quảng cáp là dòng ra max đạt 1.5A mỗi nhánh nhưng cuộn choke trên mỗi nhánh chỉ chịu được max là 0.5A ở 60°C mà thôi. Board này sẽ ok nếu dùng phương án 3 ở mục 3.1.1, khi đó 1 nhánh của board sẽ ra 3.3V, nhánh còn lại ra 5V, khi đó 0.5A mỗi nhánh là hoàn toàn chấp nhận được.
Loại 2: Nguồn series LPS không dựa trên IC.
Có rất nhiều nguồn loại này nổi bật là Walt Jung/Diden Supereg, Paul Hynes, Belleson, Sparko
Em thì chọn Sigma 11 của AMB Laboratories vì các lý do sau: chất lượng tốt (đã được thừa nhận nhiều năm), mạch tuy nhiều linh kiện nhưng ko quá đắt, có đến 4 đầu ra dùng chung ground, phù hợp để em thực hiện cả 3 phương án trong mục 3.1.1, dòng ra không hạn định, chỉ phụ thuộc vào biến áp, có hướng dẫn chi tiết từ đầu đến cuối
http://www.amb.org/audio/sigma11/
Giải pháp cấp điện cho Pi của em là board Sigma 11 chuyển điện 9VAC thành 6V DC. Lấy 6V DC ở output 1 cấp cho nhánh 5V trên Pi, lấy 6V DC ở output 2 chuyển sang 3.3V bằng board LT3045 (gần giống LT3042 nhưng có dòng ra 0.5A không cần MOSFET). Lấy 6V ở output 3 chuyển sang 1.8V cũng bằng LT3045 PSU (khi mua nhớ bảo thằng bán config để xuất voltage mong muốn)
http://www.ebay.com/itm/LT3045-S-Ul…A-Fixed-out-/252951737282?hash=item3ae51933c2
hoặc trang web của thằng trong link ebay
http://www.ldovr.com/product-p/lt3045-s.htm
Lý do em dùng Sigma 11 nằm ở đây. Lý do là như các bác thấy trên config của các bạn Nhật, các cổng 5V, 3.3V và 1.8V đều có chung ground. Nếu dùng 3 board LPS độc lập cấp điện dễ xảy ra ground loop. Với cách config Sigma 11 và 2 board LT3045, ta có 3 LPS chung ground.
Sử dụng cách này, chất âm sạch tuyệt vời luôn, hơn hẳn iPower.
Nếu bác nào muốn rẻ hơn một chút, rẻ đi tầm 10$ (nhưng chỉ có một đầu ra, không dùng được phương án 3 như em) thì có thể tham khảo board Sigma 11 nhái do tụi Tàu làm
https://vi.aliexpress.com/item/Asse…ard-LPS-PSU/32810927582.html?isOrigTitle=true
Một giải pháp thiết thực cho bác nào ko mua được Sigma 11 chuẩn (vì tiền ship bo mạch lẫn linh kiện khá mắc dù bản thân linh kiện toàn đồ bình thường và rẻ) dùng mạch LPS có gốc LT1963 làm tầng lọc thứ nhất xuất ra 6-7V DC, với 4 đầu ra. Dùng 4 đầu ra đó cấp cho 3 mạch LT3045 như link trên được config về 1.8V, 3.3V và 5V và 1.2V để cấp điện riêng cho từng phân vùng trên Pi
3.2 Chọn mạch cấp nguồn cho các board isolator và các board xuất digital
Ở đây thì vấn đề trở nên rất dễ dàng. Do board isolator chỉ đòi khoảng 50mA, board xuất digital như 502DAC chỉ đòi max là 200mA nên ở đây, tất cả các phương án đều có thể sử dụng, chú ý sử dụng các nguồn có độ nhiễu thấp nhất như nguồn shunt, nguồn LPS IC như bo LT3042 của diyinhk,...
Trường hợp mạch xuất digital là Kali, DigiOne hay 502DAC thì việc cấp nguồn cho board digital ko quá quan trọng nữa, có thể tùy chọn bo LT1963, lý do là vì các bo này đều đã có LT3042 PSU built-in rồi.
Nếu sử dụng board Isolator của Allo Audio, vốn được thiết kể để chịu được mức 6.4V input thì có thể chơi 4 cục pin LiFePO4 loại 1200mAh đặt trong battery pack để cấp điện cho board Isolator và board xuất digital
Ở đây em dùng nguồn shunt Reflektor D mini và DC Flexy của Salas, đơn giản vì em đã mua sẵn cả năm trước rồi.
3.3 Chọn lựa linh kiện cho các mạch cấp nguồn
Việc chọn lựa linh kiện cho các mạch cấp nguồn khá quan trọng. Lý do vì đây là mạch hoàn toàn phục vụ digital (không dính một tí gì đến phần analog) cho nên quan trọng nhất là độ chính xác cao, ổn đinh. Cho nên em thành thật khuyên mọi người khi chọn mua linh kiện nên chọn lọc một tí vì hầu hết các mạch LPS có số linh kiện hạn chế, nhiều lắm thì có dăm bảy con trở, bốn năm cái tụ, bốn năm cái diode nên chọn linh kiện tốt một tí cũng ko đắt hơn là bao nhiêu.
Nói thế cũng không có nghĩa là linh kiện phải toàn audiophile như linh kiện Audionote, tụ Mundorf, Blackgate hay trở Mills, chỉ cần linh kiện tốt, độ chính xác cao (tolerance nhỏ), tụ thì ESR nhỏ mà chơi, không phải cầu kì
Em xin đề cử vài lời khuyên khi chọn linh kiện
- Trở thì nên dùng trở kim loại, tránh dùng trở than. Ở những vị trí không quan trọng cứ trở Vishay/Dale 0.1% 50-100ppm giá tầm 15000 VND một con. Những vị trí quan trọng của mạch (trong LPS không dùng IC) thì có thể chơi trở Caddock hoặc chịu chơi thì trở Vishay VAR (cái này cần hỏi tác giả mạch)
- Tụ thì nếu trị số lớn kiểu 2200uF 50V trở lên thì chơi Nichicon KG Gold Tune (Type II) hoặc Super Through (Type III) nếu muốn chơi tụ audio grade, còn không thì tụ Epcos, Vishay, Philips, Panasonic FC. Nếu là tụ lọc điện dung thấp điên thế cao thì chơi Panasonic FM hoặc FR, nếu là tụ lọc điện dung thấp điện thế thấp thì có thể chơi Panasonic SEPC (hoặc tháo máy thì là Sanyo OSCON)
- Diode nếu là rectifier diode thì có thể dùng MSRF860G hoặc MUR820G hoặc Schottky Diode
- Các transistor thì nên mua trên các trang uy tín, chớ mua ebay kẻo dính hàng dỏm của Tàu
- Nên cẩn trong với mấy thể loại tụ audio grade. Đa phần tụ audio grade có thông số khá thấp, chúng được tune để có một chất âm nào đó. Thứ chất âm đó có ý nghĩa khi bác dùng trong đường tín hiệu hoặc có chút tác dụng trong mạch cấp nguồn cho phần mạch analog, chứ hay bị tác dụng ngược khi dùng cho PSU cho mạch thuần digital vốn cần nhất là thông số tốt. Trong một dòng tụ audio grade thì giá càng cao thông số càng tốt, ví dụ Nichicon KG Gold Tune Type I thông số rất kém, kém hơn cả tụ thường, Type II thì thông số tốt hơn rất nhiều, Type III thì thông số đỉnh luôn, cho nên nếu đã chơi tụ audio grade trong PSU cho mạch digital thì không nên tiếc tiền chơi dòng cao. Ngoài ra, nếu mạch và khả năng tài chính cho phép thì giải pháp vào loại tốt nhất cho tụ electrolyte là tụ 4 chân của Mundorf hoặc Jensen (thực ra là rebranding tụ 4 chân dòng SIG của hãng Fischer and Tausche, Đức) với thông số khá ngon.
3.4. Chọn lựa biến áp
Nguyên tắc khi chọn lựa biến áp đầu tiên là chọn đúng output cần thiết. Ví dụ nếu muốn làm nguồn 1A-1.2A 5V thì phải chọn biến áp có cuộn thứ cấp ra được 9V 1.5A vì dòng ra max của biến áp luôn lớn hơn dòng max mà PSU xuất ra được. Chọn 9V vì nếu lấy output 12V sẽ dẫn đến nhiệt lượng tỏa ra khi điện thế sụt từ 12V xuống 5V sẽ lớn, nhất là khi dòng tương đối cao 1A. Để đảm bảo tuyệt đối cách ly giữa Pi và bo xuất digital, tốt nhất nên chơi kiểu dual mono PSU cho hai board này, tức là dùng 2 biến áp riêng biệt.
Về biến áp thì có 3 loại chính là EI-Core, Toroidial (biến áp xuyến) và R-Core, dùng loại nào cũng được nhưng nhớ là lưu ý:
- Nếu biến áp là loại EI- Core thì nên đặt biến áp không cùng chassis với mạch tín hiệu hoặc phải có che chắn bằng MU-Metal hoặc ít nhất một tấm đồng dầy vì EI Core thất thoát rất nhiều từ trường ra ngoài, gây ảnh hưởng đến mạch. Đó là chưa kể EI Core dễ ù rền, nhất là EI Core Tàu. Tuy nhiên EI Core lại cản nhiễu AC rất rất tôt.
- Nếu biến áp là loại Toroidial (xuyến) thì thì nếu điều kiện cho phép tìm mua loại có chắn giữa phần sơ cấp và thứ cấp vì loại biến áp này dễ bị nhiễu (leakage current) giữa hai cuộn sơ cấp và thứ cấp. Nếu không tìm được thì nên có Choke ở trước biến áp để làm giảm nhiễu từ AC ảnh hưởng đến Toroidial. Lợi thế là xuyến rất ít thất thoát từ trường ra ngoài nên có thể đặt gần với mạch tín hiệu cũng ko sao
- Đơn giản nhất là dùng R-Core, nó có đủ ưu khuyến của cả hai loại biến áp trên nhưng nhược điểm ở mức độ nhỏ hơn rất nhiều. Do đó chỉ cần đặt R-Core cách xa phần tín hiệu một chút, chọn loại R-Core có bọc shield đồng là đủ để chắn từ trường. Nếu chắc ăn có thể làm một cục EMI filter trên IEC inlet là đủ lọc nhiễu. Tuy nhiên, phải hết sức cẩn thận khi dùng mấy con R-Core Tàu, thông số của chúng không biết đâu mà lần. Em có 2 con R-Core 30VA mua cách nhau gần 1 năm của 2 seller khác nhau, đều ra 9V AC. Thế mà khi lắp vào mạch có tải, dùng vôn kế đo thì chúng output ra tận 11V AC, dẫn đến khi dùng LPS thì khá nóng, thành thử khi dùng R-Core Tàu thì nên chuẩn bị tản nhiệt to to tí.
=====
4. Thiết kế và thi công các hạng mục còn lại của transport.
Thi công và tối ưu hóa transport là bước cuối cùng trước khi cho ra một sản phẩm hoàn chỉnh. Có nhiều tiêu chí cho vấn đề này nhưng nói chung gói gọn trong các tiêu chí sau: chống rung, tản nhiệt (khi dùng nguồn LPS), che chắn điện từ trường (shielding).
4.1 Chống rung
Tại sao lại cần chống rung cho transport digital? Bit là Bit cơ mà
Lý do chính nằm ở một linh kiện nhỏ có tên là clock trên các bo mạch. Clock dựa vào dao động để tạo ra tần số, các chip xử lý lấy đó để tạo ra digital audio. Vì vậy, clock khá mẫn cảm với rung chấn. Rung chấn đó không chỉ do các linh kiện bên trong transport gây ra như biến áp mà còn do bản thân bề mặt đặt transport dội ngược lại. Đặc biệt, nếu dùng LPS với biến áp đặt trong transport thì phần chống rung là vô cùng cần thiết nhằm tránh cộng hưởng cơ.
Vậy giải pháp là gì. Thật ra rất dễ, người nào nhiều tiền có thể mua những chân chống rung đắt tiền, cá nhân em thấy với đồ digital thuần bán dẫn và việc biến áp của transport thường nhỏ (dẫn đến rung chấn do biến áp gây ra ko lớn như biến áp trên power amp) thì chân chống rung tháo máy (lấy ve chai từ ampli hay CDP) là hoàn toàn đạt yếu cầu, chưa kể còn rẻ.
Để chống rung cho bản thân các clock thì có một giải pháp đơn giản là mua một vài cái isolation grommet trông như thế này về lắp vào chân nối bo digital
http://www.trelleborg.com/en/applie…mp–and–isoloss–grommets–mounts–isolators
4.2. Tản nhiệt và sắp xếp các nguồn điện
Nguyên tắc vàng về sắp xếp các bộ nguồn PSU là làm sao khoảng cách từ PSU đến tải (phân vùng cần cấp điẹn) là con đường ngắn nhất. Do đó, tốt nhất là phần ổn áp cuối cùng nằm ngay trên mạch in, sát cạnh phân vùng nó cấp nguồn. Ở phần cấp nguồn cho Pi chúng ta đã không thể áp dụng nguyên tắc này, đó là một cái chưa đạt nhưng bù lại chúng ta thay một IC SMPS có thông số kém bằng một LPS có thông số đỉnh. So sánh thực tế của em thì cuối cùng vẫn là lợi nhiều hơn hại.
Lý do: Các tiêu chí của bộ nguồn tốt là cung cấp đủ điện đủ và ổn định, ít nhiễu, transient response nhanh, bandwidth lớn và cuối cùng là điện trở đầu ra thấp. Do cần điện trở đầu ra thấp nhất có thể và do điện trở đầu ra của các mạch LPS tốt đều rất nhỏ nên điện trở đầu ra của PSU thật sự phụ thuộc gần như hoàn toàn vào điện trở của dây điện nối PSU với tải (hay nói cách khác là độ dài của dây) Do đó, PSU cần đặt gần với tải (phần bo mạch mà nó cấp nguồn nhất có thể. Đây cũng là bất lợi khá lớn của iFi iPower khi dây nối từ PSU trong iPower đến bo mạch là quá dài
Chốt lại, phải đặt làm sao cho các bo cấp nguồn gần tải của nó nhất, tối đa là 10cm.
Do nguồn tuyến tính LPS tỏa rất nhiều nhiệt ra ngoài nên nếu đặt quá gần mà ko có giải pháp tản nhiệt tốt thì nhiệt lượng đó sẽ lại tác động qua lại với các bo mạch (nhất là Raspberry Pi). làm giảm độ bền của thiết bị.
Giải pháp tản nhiệt: Nếu dùng LPS thì nên dùng tản nhiệt to đặc biệt với nguốn shunt và nguồn LPS cho Pi (với max dòng > 1A). Nếu vỏ transport có các lỗ thông hơi thì càng tốt
4.3. Che chắn điện từ trường
Nên sử dụng vỏ kim loại thay vì các loại vật liệu nhẹ như plastic, mica. Lý do là vì vỏ kim loại kín có tác dụng như một lồng Faraday, chắn nhiễu điện RFI bên ngoài ảnh hưởng đến các thiết bị bên trong
Khó khăn nhất và phức tạp nhất trong việc che chắn, đó là che chắn nhiễu điện từ giữa các linh kiện bên trong transport, vì che chắn như thế nào phụ thuộc vào từng loại nhiễu (nhiễu điện hay từ trường) cũng như tần số của nhiễu đó. Đối với nhiễu từ tần số thấp thì Mu-Metal là giải pháp số 1, với nhiễu từ tần số cao thì là một lớp kim loại kín. Đối với nhiễu điện thì cũng phải che chắn bằng một lớp kim loại kín. Tất cả các shield trên đều phải nối đất (tức là nối với lớp vỏ kim loại của transport.
Cá nhân em đang đặt một vài tấm Mu-Metal và đồng về để làm công tác này
Đối với dây dẫn trong transport (ví dụ dây nối từ nguồn DC đến mạch tín hiệu) hoặc dây nguồn AC trên biến áp thì nên có bọc giáp chống nhiễu. Các dây trên dù có hay không có giáp chống nhiễu thì nên xoắn từng cặp (twisted), cách này khá hiệu quả để làm giảm độ nhiễu do ảnh hưởng qua lại giữa từ dung của hai dây gây ra (inductive-coupled noise)
Về transport của mình, em “đồng nát” một cái Ampli Sony TA-F120 bị hỏng về để làm vỏ.
Lý do :
i) Nó rất rẻ (có 10€, cả phí vận chuyển), những cái vỏ có kích cỡ phù hợp mua trên mạng đều cỡ 40€ trở lên chưa tính phí vận chuyển
ii) Nó có sẵn heatsink (tản nhiệt) rất to, thích hợp cho việc thi công LPS. Heatsink bên em khá đắt, một cái heatsink cỡ như cái trong con Sony giá phải 10€. Ngoài ra phía dưới heatsink có rãnh thông khí giúp tản nhiệt tốt hơn
iii) Có sẵn vách ngăn kim loại giữa phần chứa biến áp và phần còn lại, chỉ việc dát một lớp Mu-Metal là đủ để cách ly từ trường với phần còn lại
======
4.4 Tiếp địa, nối dây AC bên trong transport
Chủ đề về Mass và tiếp địa cho các thiết bị audio luôn là chủ đề tranh cãi lớn nên em ko đi sâu ở đây. Em chỉ nói qua cách làm tiêu chuẩn (ít nhất là em thấy đồ hãng hay làm)
Chọn ổ cắm cho transport, để đơn giản ít dây dợ thì có thể mua loại có tích hợp sẵn cả cầu chì lẫn công tắc
Chấu cắm có 3 đầu, L (load), N (neutral) và E (Earth). Ở mặt sau cũng sẽ như vậy, nối dây nóng (220V) của các biến áp nguồn với đầu L, nối dây nguội (0V) của các biến áp với đầu N, nối dây SCN của biến áp và 1 điểm trên vỏ máy (chassis ground) sau đó tất cả nối với đầu E trên ổ cắm.
Lưu ý; để tránh ground loop trong thiết bị, ko được để các thiết bị nối với vỏ máy (chassis ground) dưới mọi hình thức (có thể dùng chân nhựa để đảm bảo điều này). Điểm duy nhất được tiếp xúc với vỏ máy là dây SCN của biến áp.
Dùng chân nhựa có lợi thế là đảm bảo cách ly bo mạch với vỏ máy, nhưng bất lợi là do nhẹ nên dễ rung gây nhiễu cơ học. Một giải pháp cho vấn đề này là damping bằng dynamat hoặc blue-tack (em đang dùng), hoặc đơn giản hơn thì dùng thạch cao hoặc đất sét ở chỗ tiếp xúc của chân nhựa với vỏ máy. Trông có hơi nhôm nhoam nhưng khá hiệu quả.
Sau khi ra khỏi transport thì bác nối dây với ổ cắm, ai có điều kiện thì nối với ổ cắm nordost sau đó ground box, abcxyz
4.5 EMI Filter (Rất quan trọng) trước biến áp nguồn
Nhiễu EMI từ nguồn AC tổng gây ra bởi các nguồn xung trong nhà là vấn đề rất nan giải với audio. Để giải quyết vấn đề này em và nhiều anh em đã sử dụng rất thành công lọc nguồn Schaffner FN2090 dưới 10A, tăng cường chất lượng âm thanh khá nhiều. Lưu ý, nếu đã dùng lọc nguồn thì phải dùng lọc nguồn thật tốt, có khả năng cản nhiễu cao (có thể xem datasheet của nhà sản xuất để biết thêm), không dùng đồ Tàu hay đồ có độ lọc kém dẫn đến lợi bất cập hại.
=======
5. Cải tiến hệ thống cấp nguồn cục bô trên bo Raspberry Pi
Một điểm yếu của con Pi là phần cấp nguồn cục bộ. Với một bo mạch có microprocessor như Pi, nếu dòng cấp phải thay đổi liên tục với sự thay đổi tầm cỡ 200mA thì đầu tiên ngay ở đầu vao bo mạch phải có ngay một số lượng điện dung cỡ 220uF hoặc lớn hơn ở dạng tụ polymer electrolytic hoặc tantalum (hiện nay được khuyến cáo sử dụng là polymer tantalum). Sau đó phân bố các nguồn thành phần đến từng vị trí lại phải thêm các tụ khác nữa. Ở chân nối đất của các con IC lại phải có tụ cỡ 100nF. Các tụ này phải có tiêu chí càng nhỏ càng tốt, ESR, ESL thấp và điện dung càng ít bị thay đổi bởi nhiệt độ cũng như tần số càng tốt. Trong bảng đánh giá thì tốt nhất là NP0/C0G (tuy nhiên đáng tiếc hiện nay vẫn chỉ có với điện dung rất bé), kế đến là X7R và Tantalum, kế đến là X5R, Y5V.
Ở trên bo Pi các bác sẽ thấy tổng số điện dung ở phần regulator chỉ có 100uF, phân bố trong bo cũng hầu như không có thêm mấy. Điều này không trách được vì Raspberry Pi là hãng đầu tiên, phí R&D lớn nên chuyện phải bớt xén linh kiện là chuyện thường.
Chúng ta có thể cải tiến bớt như sau, thay các tụ như sau:
C1, C163, C97, C98, C99, C100 : 47uF – Size 3216 – Code (Mouser lẫn digikey) T58A0476M010C0100 (Vishay)
C7, C8, C162, C3, C4: 47uF -Size 2012 – Code F381A476MSALZT(AVX)
Rất cám ơn bác @do_long_khach và bác @tru09x đã đi đầu thực hiện việc mod.
6. Nhìn lại và tự đánh giá (chương cuối)
Những điều trên có lẽ là đủ để làm ra một transport tốt. Có lẽ nhiều người bảo em là dạng overbuilt, tức là quá để tâm những cái nhỏ nhặt. Nhưng với kinh nghiệm của em, đồ high-end của Tây lông nó khủng không hẳn ở ý tưởng, mà ở chỗ những thằng kỹ sư làm ra các sản phẩm đó nó không bỏ qua những chi tiết vụn vặt. Bỏ qua một chi tiết vụn vặt chỉ làm giảm chất lượng một tí chút, có khi còn ko nhận thấy, nhưng bỏ qua nhiều chi tiết vụn vặt thì lại làm chất lượng sụt hẳn luôn. Trải nghiệm của em khi làm transport cũng vậy, khởi đầu chỉ là Pi + 502DAC + iFi iPower, mỗi bước tiến (isolatorPi, cấp nguồn riêng cho Pi và 502DAC hay cấp 3 nguồn cho Pi) chỉ làm thay đổi một chút chất lượng, có một số mod nhỏ như damping chân nhựa còn ko cảm thấy sự khác biệt. Nhưng đến cuối cùng, so lại với cái đầu (em có sẵn 1 con Pi khác chạy iFi iPower) để tham chiếu thì thấy thật sự khác hẳn về chất luôn. Nói là vịt hóa thiên nga thì có phần khoác lác, nhưng thật sự là bộ cơ bản chỉ ở mức khá, còn bộ chuẩn thì bắt đầu tiệm cận high end rồi.
Nói là tiệm cận high end, nhưng để đạt đến ngang tầm high end thật sự (Auralic Aries Femto trở lên) thì thật lòng mà nói chính em cũng ko tự sướng đến mức nói transport Pi đạt được. Có một số rào cản mà đồ diy ko thể vượt qua
Lý do đầu tiên nằm ở phần clock, đành rằng clock NDK trên 502DAC hay DigiOne, Kali rất là tốt, nhưng thật sự nó không thể bằng clock đầu bảng của Crystek trong Auralic Aries hay OCXO clock (trong Aurender hay stack dCS Vivaldi được)
Lý do thứ hai là phần cấp nguồn, như đã nói ở trên, để chuẩn nhất thì nguồn cấp phải đặt ngay cạnh tải của nó để giảm ảnh hưởng dây dẫn. Với transport Pi chúng ta đã hy sinh điều này để đổi lấy việc cấp nguồn sạch hơn. Nhưng sẽ khó có thể đối đầu với đồ hãng high end, họ tích hợp luôn bộ lọc PSU trên mạch. Dù những con IC mà hãng high end dùng ko bằng LT3042. đa phần hãng hay dùng dòng TPS7A4700, những với lợi thế gắn sát tải thì phần cấp nguồn cho linh kiện sẽ hơn việc dùng bo ngoài như chúng ta.
Lý do thứ ba là nhiễu nội tại trên Pi. Pi là một bo mạch chế tạo cho mục đích phổ thông với một không gian hẹp, thậm chí còn chơi 2 mặt nên nhiễu do các linh kiện trên Pi sinh ra lớn (kể cả nhiễu điện lẫn nhiễu nhiệt) và ko dễ tản đi. Độ nhiễu đó sẽ lớn hơn rất nhiều so với bo mạch của các transport high end được thiết kế và tối ưu cho audio. Chúng ta có thể che chắn nhưng phòng bênh bao giờ cũng hơn chữa bênh, nếu bo mạch chủ đươc thiết kế ít nhiễu thì bao giờ cũng hơn việc phải loay hoay che chắn nhiễu.
Vì những lý do đó, nên dù em rất tự sướng và hài lòng về transport Pi (giá đầu tư của em là 400 USD, trong khi ít nhất dưới 1200 USD theo em ko có cái gì tốt hơn), em vẫn khuyên các bác nào có điều kiện và đã có bộ dàn khủng thì vẫn nên mua transport high end để tận hưởng nhạc số một cách chuẩn chỉ nhất. Nguyên tắc là giá transport từ 1/3 đến 1/2 giá DAC.
Mặc dù em đã cố gắng vận dụng hết khả năng lẫn kiến thức để thực hiện, nhưng khả năng của một người có hạn. Nếu bác nào có thể có những ý tưởng cải tiến thêm nữa thì mong các bác comment để mọi người (trong đó có em) có thể học hỏi, làm transport Pi ngày càng tốt hơn
Trân trọng
P/S: Tổng kết dự án và chi phí cần chuẩn bị để hoàn thành (với nhiệm vụ làm transport xuất ra DAC rời) cho các bác có nhu cầu
Cấu hình tiêu chuẩn:
Raspberry Pi 2 hoặc Raspberry Pi 3: Giá ở VN dao động khoảng 1,1 triệu.
Allo DigiOne hoặc Allo DigiOne Signature: Có thể mua ở VN giá khoảng 2,3 triệu hoặc đặt trang chủ
https://www.allo.com/sparky/digione.html
Combo nguồn cấp 2 cho Raspberry Pi (chuyển điện từ tầm 6V DC về 1,8V, 3,3V và 5V) : 4 LT3045S PSU. Giá 80$ tầm 1,8 triệu. Khi mua bảo thằng bán làm đầu ra về 5V; 3,3V và 1,8V và 1,2V
http://www.ldovr.com/product-p/lt3045-s.htm
Combo nguồn cấp 1 cho Raspberry Pi (chuyển điện AC từ tầm biến áp 7,5V AC về 6V DC): bo LT1963 có bán rất nhiều ở VN, về thay con tụ Nover kém thành tụ chất lượng cao của Nichicon KG, Mundorf, Audio Note tùy tâm.
Cấp nguồn cho DigiOne (mod): LT1963 là giải pháp tốt, nhưng nếu dùng nguồn tốt hơn như Salas Reflektor, SuperTeddy, Walt Jung cũng không sao
2 Biến áp R-Core 7V 30W , giá 800K VND cho 2 chiêc
Ổ cắm IEC kết hợp EMI filter: 200K VND (cái này em ko rõ giá ở VN)
Một hộp nhôm làm vỏ: Có thể mua khoảng 600K VND cho đẹp, hoặc đồng nát vỏ ampli/CDP cũ cũng đươc
Tụ Tantalum Polymer để mod tụ trên Pi 250K
Tổng công: maximum 10 triệu
====
Nguồn shunt Reflektor mini của em lấy nguồn DC từ bo DC Flexy màu đen (bo có con tụ hóa màu xanh nước biển to bố tướng đó a). Bo DC Flexy lại lấy nguồn AC từ con R-Core thứ nhất, dây AC trăng và xanh nước biển
Còn bo Sigma 11 là bo màu xanh lá cây nằm ngang bằng với stack Pi và 502DAC đó bác, con này lấy nguồn AC từ R-Core 2, dây trằng và vàng, chắc em chụp ko rõ nên bác hiểu lầm
Nguồn Salas Reflektor có hai loại, loại Reflektor D
Con reflektor thường này lấy nguồn AC vào, tuy nhiên heat sink hạn chế nên chỉ có thể output tối đa 600mA
Con em đang dùng là Reflektor mini
Con reflektor mini này chỉ nhận nguồn DC in và mình phải tự túc heat sink nên dòng tối đa output có thể lên đến hơn 1A. Em mua con này hơn 1 năm trước vì định cấp nguồn cho Pi bằng con này, hổi đó chỉ định cấp nguồn qua GPIO 5V thôi nên cần dòng cao.
Cái bo Dc Flexy màu đen nằm phía sau Sigma 11 là con này
Con này có nhiệm vụ chuyển AC về DC raw.
====
Hướng dẫn cài đặt một Music server (NAS) sử dụng Raspberry Pi 3
Trong hệ thống UPnP, chúng ta có UPnP renderer là transport Pi, có control point (điểm điều khiển) là Linn Kinsky/ Kazoo, Bubble UPnP hay Lumin.
Vậy còn UPnP server (nơi chứa nhạc) thì sao? Ở post về UPnP phía trên, em đã trình bày cách cài Minimserver trên máy tính/laptop để biến nó thành một UPnP server. Cách này rất dễ dùng và tiện lợi cho tất cả mọi người. Đối với những bác đã đầu tư kha khá vào audio PC (fanless, nguồn linear,…) thì đây là cách rất hay để biến PC thành UPnP server. Tuy nhiên, đối với nhiều người, trong đó có em, vẫn đang dùng laptop/PC làm server chưa được đầu tư kĩ lưỡng cho audio, thì cách này về mặt “audiophile” mà nói vẫn có lỗ hổng.
Sau quá trình xây dựng transport Pi, em còn dư ra một con Raspberry Pi 3 và một con iFi iPower, nên em nảy ra ý tưởng làm một music server fanless để phục vụ việc làm UPnP server. Hóa ra ko hề phức tạp như em tưởng, dù không trực quan như trên windows. Lúc đầu em cũng sợ băng thông của Pi 3 ko đủ (do LAN và USB của Pi 3 cùng chung bus), nhưng hóa ra với việc streaming nhạc thuần thì vẫn thừa mứa. Em đã test nhạc từ 16-44,1 đên 24-192 suốt tối qua ko gặp vấn đề gì.
Sau đây em sẽ trình bày cách làm cụ thể với tranh ảnh
1. Lên trang chủ của Raspberry download Raspbian Jessie Lite về. Bản Lite là bản OS tối giản, dùng cho audio tốt hơn bản Pixel.
https://www.raspberrypi.org/downloads/raspbian/
Giải nén bằng winzip hoặc 7zip rồi burn vào thẻ nhớ bằng phần mềm Win32DiskImager như bên topic về Pi.
2. Kích hoạt tính năng kết nối qua ssh của Raspbian bằng cách sau
Vì lý do bảo mật nên Raspbian khóa tính năng ssh (kết nối qua Putty), do đó chúng ta cần mở bằng cách tạo một file không có định dạng tên ssh
Cách tạo file ssh như sau,
Đầu tiên vào control panel>file explorer options, sau đó bỏ chọn “hide extensions for known file types”, sau đó nhấn ok
Tiếp theo ra ngoài màn hình chính, chuột phải tìm đến New>Text Document, nó sẽ hiện ra một file mới để mình điền tên, với tên khởi đầu là “new text document.txt”, bỏ hết tât cả đi chỉ điền “ssh” vào tên file, nhấn ok, sẽ hiện ra bảng chọn với “if you change file …”, nhấn yes là ta có file ssh.
Copy file ssh đó vào thẻ nhớ đã được burn Raspbian
3. Cắm thẻ nhớ vào Pi 3, nối Pi 3 với router qua dây LAN, cắm điện để khởi động. Do đã có file ssh nên chúng ta có thể truy cập vào Pi qua ssh từ máy tính nối mang, ví dụ như chương trình Putty
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
Chỗ host name bác nhập địa chỉ Ip của Raspberry làm NAS vào rồi nhấn Open. Màn hình ssh hiện ra hỏi bác tên đăng nhập và mật khẩu: ở chỗ “login as:”, điền pi, rồi ấn Enter, nó sẽ hỏi tiếp password thì điền raspberry
Để đảm bảo bảo mật, ngay sau khi vào bằng password tiêu chuẩn xong thì nên lập tức đổi mật khẩu bằng cách nhập mã
passwd
current password sẽ là raspberry, nhập xong nhấn Enter
Enter new UNIX password: nhập password mới vào và nhấn enter
Retype new UNIX password: nhập lại đúng password mới nhập ở dòng trên, sau đó nhân enter sẽ được một dòng thống báo passwd: password updated successfully. Về sau truy cập vào Pi thì sẽ dùng password mới.
4. Bây giờ đến phần kết nối các ổ cứng chưa nhạc với Raspbian trên Pi.
Vì các ổ cứng hiện nay hầu hết đều là NTFS nên việc đầu tiên, cài đặt driver cho ổ NTFS bằng cách đánh câu lênh sau
sudo apt-get install ntfs-3g -y
rồi nhân OK.
Đợi Pi chạy xong phần cài đặt driver NTFS thì nối các ổ cứng vào USB của Pi 3, sau đó đánh dòng lệnh
sudo blkid
, sau đó nhấn Enter sẽ ra hình dạng như sau
Em cắm hai ổ cứng vào Pi khi đó sẽ hiện ra hai ổ cứng, môt cái ở địa chỉ /dev/sda1 với một tên UUID 54D8D96AD8D94ABE và một cái ở địa chỉ /dev/sdb1 với UUID là 884C86B24C869B18. Cả hai đều là ntfs.
Bây giờ chúng ta cần tạo ra 2 folder để mount hai ổ cứng vào, ví dụ như của em sẽ tạo ra folder /media/usbhdd và /media/usbhdd1 bằng các dòng lênh sau. Nhớ sau mỗi dòng đều nhấn enter
sudo mkdir /media/Music1 sudo chown -R pi:pi /media/Music1 sudo chmod -R 775 /media/Music1 sudo setfacl -Rdm g:pi:rwx /media/Music1 sudo setfacl -Rm g:pi:rwx /media/Music1 sudo mkdir /media/Music2 sudo chown -R pi:pi /media/Music2 sudo chmod -R 775 /media/Music2 sudo setfacl -Rdm g:pi:rwx /media/Music2 sudo setfacl -Rm g:pi:rwx /media/Music2
Đánh tiếp dòng lệnh
sudo nano /etc/fstab
sau đó thêm 2 dòng lênh sau để Raspberry Pi mount tự động hai ổ cứng kia khi khởi động.
Mẫu câu lênh sẽ là “địa chỉ trước khi mount của ổ cứng” “địa chỉ muốn mount ổ cứng tới” “định dạng ổ” defaults,umask=000,users 0 0.
Ví dụ như ổ cứng /dev/sda1 của em thì sẽ có dòng lênh là
/dev/sda1 /media/Music1 ntfs-3g defaults,umask=000,users 0 0
hay với ổ cứng /dev/sdb1 của em sẽ có dòng lệnh là
/dev/sdb1 /media/Music2 ntfs-3g defaults,umask=000,users 0 0
Sau khi hết các dòng lệnh cho từng ổ cứng nhấn Control + X, nó sẽ hỏi mình muốn lưu mấy dòng lênh đó không. Nhấn y để xác nhận, sau đó nhân 2 lần Enter để trở lại lúc trước. Đánh dòng lệnh sudo reboot để khởi động lại Raspberry Pi, sau đó mỗi lần khởi động thì Raspbian trên Pi sẽ tự động nhận và mount các ổ cứng trên, không phải làm lại các bước trên một lần nào nữa
Lưu ý, nếu dùng Pi 3 thì tắt luôn Wifi và Bluetooh đi để có chất lượng audio tốt nhất bằng cách sau
sudo nano /boot/config.txt
Sau khi vào chỗ File: /boot/config.txt thì thêm mấy dòng sau
# turn wifi and bluetooth off dtoverlay=pi3-disable-wifi dtoverlay=pi3-disable-bt
Sau đó nhấn Control +X, nó sẽ hỏi mình có muốn lưu không, gõ y, sau đó nhấn Enter 2 lần để quay lại màn hình ssh lúc đầu. Gõ sudo reboot và nhấn Enter để khởi động lại Pi là xong
=======
5. Cài đặt MinimServer lên Pi 3
Đầu tiên cài đặt Minimwatch lên trên PC/laptop để điều khiển Minimserver cho lần đầu tiên
http://minimserver.com/downloads/index.html
Nếu PC/laptop dùng hệ điều hành nào thì chọn file minimwatch tương ứng và cài vào
Tiếp theo tải MinimServer-0.8.4-linux-armhf.tar.gz về máy PC/laptop
Tải tiếp chương trình https://winscp.net/eng/index.php về và cài đặt vào máy. Chương trình này sẽ giúp chúng ta chuyển file MinimServer-0.8.4-linux-armhf.tar.gz từ PC vào Pi để cài đặt
Mở chương trình winscp ra và nhập địa chỉ IP của Pi vào, nhấn login, nó sẽ hỏi username và password, username sẽ là pi còn password là password mình vừa đổi lúc nãy.
Nhấn Enter, sau đó kéo file MinimServer-0.8.4-linux-armhf.tar.gz từ máy tính sang bên folder home/Pi.
Vào ssh qua Putty, đăng nhập vào Raspberry Pi.
Cài đặt java cho Pi 3 bằng dòng lệnh
sudo apt-get install oracle-java7-jdk
Nhập hai dòng lệnh sau để gọi file cài đăt
cd /home/pi tar xf MinimServer-0.8.4-linux-armhf.tar.gz
Nhập tiếp dòng lệnh sau để cài đặt minimserver.
minimserver/bin/setup
Lưu ý trong khi cài đặt nhớ chọn “automatic startup” để Minimserver luôn được khởi động sau khi Pi được bật
Nhập tiếp dòng lênh
minimserver/bin/startd
để đảm bảo minimserver vẫn hoạt động ngay cả khi ta tắt ssh trên PuTTy. Vây là xong công việc trên Pi.
Quay trở lại với minimwatch, khi đó chúng ta sẽ điều khiển các tính năng của minimserver trên Pi qua minimwatch trên PC/laptop.
Khởi động Minimwatch. Chuột phải vào biểu tượng Minimwatch, vào Properties>Packages> chọn minimstreamer-0.6.4 và nhấn install, sau đó nhấn relaunch.
Sau đó tìm đến Properties>Server>contentDir và điền địa chỉ mount của các ổ cứng chưa nhạc vào giống như hướng dẫn cân chỉnh minimserver của post trên
Với em thì contentDir sẽ là như sau
Nhấn Apply và quay lại biểu tượng minimwatch, chuột phải nhấn Rescan. Khi đó minimserver sẽ bắt đầu quét các ổ cứng. Đợi đến khi biểu tượng xanh lá cây trở lại là ok. Bây giờ minimserver đã quét xong và các bác có thể dùng Raspberry Pi 3 + minimserver như một UPnP server rồi đó. Tất cả các setup trên chỉ làm một lần. Các lần khởi động sau của Pi sẽ là tự động.
Với mức đầu tư khá khiêm tốn, Pi 3 + nguồn (iFi iPower hoặc LPS), chúng ta đã có một UPnP server fanless khá ổn cho việc nghe nhạc, ko cần dính đến PC hay laptop nữa. Đây sẽ là sự bổ sung tốt cho transport Pi
========
Link bài viết gốc: http://www.hdvietnam.com/threads/du-an-dau-tay-transport-nen-tang-raspberry-pi-chat-luong-cao.1319210/