Jump to content
  • The Computer Audiophile
    The Computer Audiophile

    Geek Speak: How To Build A BeagleBone Black MPD Music Server

    thumb.jpgWarning the following article contains some geeky stuff. What follows is a step by step guide to building a tiny 2.4" x 0.82" x 3.54" Linux music server. It's not rocket science and the instructions make the process fairly easy, but the article isn't for everybody. Thanks to CA readers K-man and Richard Dale for additional information and tweaks for setting up the BeagleBone Black so it runs great. Please note there are many ways to setup and configure the BBB. This is just one way using either Mac OS X or Windows. Readers are encouraged to leave comments with additional tips, tricks, and tweaks. I will update this article accordingly.[PRBREAK][/PRBREAK]

     

    1-Pixel.png

     

     

     

    1-Pixel.png

     

     

    opening.jpg

     

     

     

    1-Pixel.png

     

     

     

     

    Introduction

    The new $45 BeagleBone Black motherboard has excited many computer audio entusiasts. This tiny board has enough power and ports to run a Linux based MPD music server. In addition, Logic Supply has released a new BeagleBone Black case in a very cool orange color as well as a more traditional black. The case is made specifically for the BBB. All the ports line up perfectly and the finished product with BBB inside looks really neat. I attached the four rubber feet to the bottom of my Logic Supply case and the BBB sits nicely on any of my audio components without scratching itself or the other device. The case is made of sturdy metal, unlike the plastic options available heretofore. If you have a BBB or are going to pick one up I'd pick up the Logic Supply case as well.

     

    bbb-board.jpg

     

     

    1-Pixel.png

     

     

    Here is a list of requirements and step by step instructions for the BBB-MPD server running Linux from the built-in eMMC flash drive.

     

     

     

    Requirements:

     

     

     

    1-Pixel.png

     

     

    Step By Step Mac

     

    - Connect the MicroSD card using an adapter to a Mac or PC.

    - Open Disk Utility (Applications > Utilities > Disk Utility), select select all volumes under the MicroSD card, then select Unmount. In my example the volume is named 8GB. (Image Link ex.png)

    - Install The Unarchiver (App Link ex.png)

    - Download the Debian Wheezy image (Direct Link ex.png). During the download if asked a question about the file extension .img or .xz, click "Use .xz" (Image Link ex.png)

    - Double-click the downloaded Debian Wheezy image. This will open The Unarchiver and automatically extract the needed image file (BBB-eMMC-flasher-debian-7.4-2014-03-27.img)

    - Open the Terminal app (Applications > Utilities > Terminal)

    - Type -> sudo su (without the arrow ->)

    - Enter your password if asked.

    - Type -> diskutil list

    - Take note of the disk number of the MicroSD card connected to your computer. My MicroSD card is listed as /dev/disk1. The MicroSD card should be easily identifiable by its small size. My MicroSD card is listed as 7.9 GB (Image Link ex.png)

    - Type -> sudo dd if=

    - Drag the Debian Wheezy image file on to the Terminal window to automatically fill in the path to the file (Image Link ex.png) You can also type this in manually if desired.

    - After dropping the image file on to the Terminal window the command line should read something like this >> dd if=/Users/chris/Desktop/BBB-eMMC-flasher-debian-7.4-2014-03-27.img (Image Link ex.png).

    - Make sure there is a single space after the path to the Debian Wheezy image file entered in the previous steps.

    - Type -> of=

    - Then enter the disk number of your MicroSD card. In my case this is /dev/disk1

    - The text should look something like this of=/dev/disk1 (Image Link ex.png).

    - Make sure there is a single space after the path to your MicroSD card entered in the previous steps.

    - Type -> bs=1m

    - The entire line should now look something like this >> dd if=/Users/chris/Desktop/BBB-eMMC-flasher-debian-7.4-2014-03-27.img of=/dev/disk1 bs=1m

    - Here is an image of my Terminal (Image Link ex.png)

    - Hit Enter on your keyboard and wait for the image to be written to the MicroSD card. This will take several minutes and appear like your computer is stuck. Please wait for the command to finish.

    - Once the image has been written to the MicroSD card the Terminal window will list something like this

    700+0 records in

    700+0 records out

    734003200 bytes transferred in 393.606273 secs (1864816 bytes/sec) (Image Link ex.png)

    - If you receive an error message stating "Resource busy" (Image Link ex.png) you likely skipped step 2. Please unmount the volume and try again.

    - Open Disk Utility (Applications > Utilities > Disk Utility), select the MicroSd card, click Eject or Eject Disk via the right-click menu.

    - Place the MicroSD card into the BeagleBone Black's MicroSD card slot.

    - Hold down the small Boot Switch / Button ex.png while connecting the power supply to the board.

    - As soon as one of the User LEDs illuminates, release the Boot Switch / Button.

    - The User LEDs should continue flashing while the MicroSD card image is copied to the on-board eMMC flash memory. The process should take about five minutes.

    - When all four User LEDs are illuminated steady, pull the power supply from the board and remove the MicroSD card.

    - Connect an Ethernet cable to the board and re-connect the power supply.

    - The BeagleBone Black will boot into Debian Linux.

    - Install the LanScan application from the App Store Link ex.png

    - Open LanScan and click Lan your Scan.

    - Once the network scan has completed locate the BeagleBone Black's IP address. The vendor will be listed as Texas Instruments. My BeagleBone Black's IP address is 10.0.1.179 (Image Link ex.png)

    - Open the Terminal app (Applications > Utilities > Terminal)

    - Type -> sudo su

    - Enter your password if asked.

    - Type -> ssh root@

    - After the @ symbol type the IP address of your BeagleBone Black and hit enter. Mine looks like this ssh [email protected] (Image Link ex.png)

    - You should receive a message about the authenticity of the of and the RSA key fingerprint. Type the entire word YES and hit enter.

    - You'll then be asked for the root password to login to the BeagleBone Black. Enter root as the password.

    - Here is an image of the entire login sequence (Image Link ex.png)

    - From here the Mac OS X and Windows configuration is the same because the work is done on the BeagleBone Black. Skip to the BeagleBone Black OS configuration.

     

     

     

     

     

     

     

    Step By Step Windows

     

    - Connect the MicroSD card using an adapter to a Mac or PC.

    - Install 7-Zip Link ex.png

    - Install Win32 Disk Image Link ex.png

    - Download the Debian Wheezy image (Direct Link ex.png).

    - Right-click the downloaded Debian Wheezy image. Select 7-Zip in the right-click menu, then select Extract Here. The file BBB-eMMC-flasher-debian-7.4-2014-03-27 will appear next to the downloaded image when the extraction is complete. (Image Link ex.png)

    - Open Win32 Disk Imager

    - Make sure the MicroSD card drive letter is selected under Device (Image Link ex.png)

    - Select the small folder to the left of the Device drive letter and browse to the file extracted using the 7-Zip program. You will need to click the drop-down arrow above the Cancel button (lower right) and select *.* to show all files (Image Link ex.png). (The Debian Wheezy image is extract without the .img file extension). Once *.* is selected you can select the file BBB-eMMC-flasher-debian-7.4-2014-03-27 that was extracted using the 7-Zip program. Don't select the .xz compressed file. (Image Link ex.png)

    - Click the Write button and Yes to any popup questions.

    - Eject the MicroSd card when Win32 Disk Imager finishes writing the image.

    - Place the MicroSD card into the BeagleBone Black's MicroSD card slot.

    - Hold down the small Boot Switch / Button ex.png while connecting the power supply to the board.

    - As soon as one of the User LEDs illuminates, release the Boot Switch / Button.

    - The User LEDs should continue flashing while the MicroSD card image is copied to the on-board eMMC flash memory. The process should take about five minutes.

    - When all four User LEDs are illuminated steady, pull the power supply from the board and remove the MicroSD card.

    - Connect an Ethernet cable to the board and re-connect the power supply.

    - The BeagleBone Black will boot into Debian Linux.

    - Download the PuTTY application Link ex.png

    - Download the Advanced IP Scanner application Link ex.png

    - Open Advanced IP Scanner and click the Scan button.

    - Once the network scan has completed locate the BeagleBone Black's IP address. The manufacturer will be listed as Texas Instruments. My BeagleBone Black's IP address is 10.0.1.179 (Image Link ex.png)

    - Open the PuTTY application and enter the IP address of your BeagleBone Black. I've entered 10.0.1.179 (Image Link ex.png)

    - Click Open, then click Yes to the PuTTY Security Alert (Image Link ex.png)

    - Enter root at the login prompt (Image Link ex.png)

    - Enter root as the password.

    - The screen should look like this (Image Link ex.png)

    - From here the Mac OS X and Windows configuration is the same because the work is done on the BeagleBone Black. Skip to the BeagleBone Black OS configuration.

     

     

     

     

     

     

    BeagleBone Black OS configuration.

     

    After using PuTTY or the OS X Terminal app to connect via SSH to the BeagleBone Black you'll need to run several commands to update and configure the BBB as an MPD server.

     

    - Type -> apt-get update

    - Hit Enter and wait for the update to complete.

    - Type -> apt-get upgrade -y

    - Hit Enter and wait for the upgrade to complete.

    - Type -> reboot

    - Hit Enter and wait for the BBB to restart

    - Reconnect to the BBB via SSH using PuTTY or OS X Terminal app as described above.

    - Type -> apt-get install mpd ncmpc alsa-base cifs-utils -y

    - Wait for the installation to complete.

    - Type -> apt-get remove apache2 -y

    - Wait for the removal to complete.

    - Type -> apt-get autoremove -y

    - Wait for the removal to complete.

    - Type -> mkdir /mnt/music

    - Type -> nano /etc/fstab

    - Hit the down arrow to the botom of the file that was opened with the previous command.

    - You will need the IP address of your NAS drive on which your music collection is stored. Use the aforementioned IP scanning tools if necessary. You will also need the Share name of the folder on your NAS. For example when I connect to my NAS I use the IP address 10.0.1.18 and the Share name is Audio. Audio is just a folder on the NAS.

    - Add the following line to the bottom of this opened file (nano /etc/fstab), substituting your NAS IP and Share name rather than using my information. Replace the ********* with the actual password to your NAS Share. Here is an image of my file (Image Link ex.png)

    //10.0.1.18/Audio/Music /mnt/music cifs defaults,username=admin,password=********** 0 0

    - After entering this information press Control O (Control key plus the letter O) then his enter to save the file.

    - Hit Control X (Control key plus the letter X) to close the file.

    - Type -> mount -a

    - Type -> nano /etc/mpd.conf

    - Make the following changes to the mpd.conf file that was opened with the previous command.

    Remove the # symbol in front of the following lines

    zeroconf_enabled "yes"

    zeroconf_name "BBB Music Player"

    mixer_type "hardware"

    bind_to_address

     

    Change the line -> bind_to_address "localhost"

    to -> bind_to_address "0.0.0.0"

     

    Change the line -> music_directory "/var/lib/mpd/music"

    to -> music_directory "/mnt/music"

     

    Find the Alsa Audio Output section and make it look like this, placing # symbols in front of the bottom four options and changing the device to hw:1,0. The name can be changed to USB DAC or anything else if you'd like.

     

    audio_output {

    type "alsa"

    name "USB DAC"

    device "hw:1,0" # optional

    # format "44100:16:2" # optional

    # mixer_device "default" # optional

    # mixer_control "PCM" # optional

    # mixer_index "0" # optional

    }

    - After entering this information press Control O (Control key plus the letter O) then his enter to save the file.

    - Hit Control X (Control key plus the letter X) to close the file.

    - Type -> nano /etc/modprobe.d/alsa-base.conf

    - Arrow to the bottom of the file and add the following text -> options snd-usb-audio nrpacks=1

    - After entering this information press Control O (Control key plus the letter O) then his enter to save the file.

    - Hit Control X (Control key plus the letter X) to close the file.

    - Type -> nano /etc/inittab

    - Place the # symbol in fron of the following lines

     

    1:2345:respawn:/sbin/getty 38400 tty1

    2:23:respawn:/sbin/getty 38400 tty2

    3:23:respawn:/sbin/getty 38400 tty3

    4:23:respawn:/sbin/getty 38400 tty4

    5:23:respawn:/sbin/getty 38400 tty5

    6:23:respawn:/sbin/getty 38400 tty6

     

    - After entering this information press Control O (Control key plus the letter O) then his enter to save the file.

    - Hit Control X (Control key plus the letter X) to close the file.

    - Type -> nano /etc/default/cpufrequtils

    - Add the following text -> GOVERNOR="performance"

    - After entering this information press Control O (Control key plus the letter O) then his enter to save the file.

    - Hit Control X (Control key plus the letter X) to close the file.

    - Type ncmpc

    - Once the app opens hit Control U (Control key plus the letter U) to update the MPD database with all the music stored on your NAS. This may take awhile depending on how much music you have and how fast your network and NAS are.

    - Hit the letter Q to exit the ncmpc window. The Database update will continue.

    - NCMPC can be used to play music, but the interface is pretty crude compared to MPoD on the iPhone or MPaD on the iPad.

     

    Remote Control

    - Install MPoD or MPaD from the app store

    MPoD Link ex.png

    MPaD Link ex.png

     

    If using MPoD, open the app and select the target looking icon in the upper left corner of the Now Playing window. You should see the your server listed. Select the server and tap the Done button. Second, select the gear icon next to the target icon on the Now Playing Screen. Then select Refresh Local Cache to populate the app with the database of music stored on your NAS and available to the server. Now you'll be able to browse through the bottom of the app selecting Artist, Album, Song, and more.

     

    [ATTACH=CONFIG]6521[/ATTACH] [ATTACH=CONFIG]6519[/ATTACH] [ATTACH=CONFIG]6520[/ATTACH]

     

     

     

     

     

     

     

    Please let me know if you find errors in this guide. I will keep it updated as appropriate. Tips, tricks, and tweaks are also encouraged!

     

     

     

     

    1-Pixel.png

     

     

     

     

    Image Gallery

     

    [ATTACH=CONFIG]6515[/ATTACH][ATTACH=CONFIG]6512[/ATTACH][ATTACH=CONFIG]6509[/ATTACH][ATTACH=CONFIG]6516[/ATTACH][ATTACH=CONFIG]6513[/ATTACH][ATTACH=CONFIG]6510[/ATTACH][ATTACH=CONFIG]6507[/ATTACH][ATTACH=CONFIG]6514[/ATTACH][ATTACH=CONFIG]6511[/ATTACH][ATTACH=CONFIG]6508[/ATTACH][ATTACH=CONFIG]6517[/ATTACH][ATTACH=CONFIG]6518[/ATTACH]

     

     

    1-Pixel.png




    User Feedback

    Recommended Comments



    I'll try my Dragon Fly this weekend. It should work, but the DF has had issues with Linux.

     

    What DAC do you currently use? Is there a list of working DACs for this project?

    Share this comment


    Link to comment
    Share on other sites

    This sounds really interesting, and at a price point one cannot refute.

     

    I do understand that this is very open as far as options go, and the basically the sky's the limit, but I'm more wondering as to the basics of the systems you are reviewing/reporting on.

     

    So does this BBB unit just replace the CAPS/NUC, or the NAS internal server software, or both? Do I still require the Renderer or do I only require only an outboard DAC between the BBB to the amplification?

     

    For the system I am interested in I was looking at the Cambridge Audio Stream Magic 6 as it is about 1/2 the cost of the Linn Sneaky, and I'm not sure I could tell the difference. I also use a Synology DS213. My home network is on a ASUS RT-N56U router and I have an ASUS 8-port gigabit switch in there too.

     

    I'm not sure which is better for my application: all data through ethernet and to avoid USB/Optical or otherwise.

     

    Heck. the more stuff you review, the more confused I get!!! ;)

     

    Any input from you guys would be appreciated.[h=3][/h]

    Share this comment


    Link to comment
    Share on other sites

    This sounds really interesting, and at a price point one cannot refute.

     

    I do understand that this is very open as far as options go, and the basically the sky's the limit, but I'm more wondering as to the basics of the systems you are reviewing/reporting on.

     

    So does this BBB unit just replace the CAPS/NUC, or the NAS internal server software, or both? Do I still require the Renderer or do I only require only an outboard DAC between the BBB to the amplification?

     

    For the system I am interested in I was looking at the Cambridge Audio Stream Magic 6 as it is about 1/2 the cost of the Linn Sneaky, and I'm not sure I could tell the difference. I also use a Synology DS213. My home network is on a ASUS RT-N56U router and I have an ASUS 8-port gigabit switch in there too.

     

    I'm not sure which is better for my application: all data through ethernet and to avoid USB/Optical or otherwise.

     

    Heck. the more stuff you review, the more confused I get!!! ;)

     

    Any input from you guys would be appreciated.

    The BBB is a computer that connects to a DAC via USB. It's the same concept as the CAPS Lagoon. All storage is on a NAS. This unit doesn't do upnp and doesn't compete with any upnp /DLNA products.

    Share this comment


    Link to comment
    Share on other sites

    Have you tried to juggle with period_time, buffer_time and nrpacks settings?

    I have seen you have set your snd-usb-audio to nrpacks=1, that is your blocks of audio data are sent every 1ms which corresponds to a high number of IRQs. Have you tried for example nrpacks=20?!

    Share this comment


    Link to comment
    Share on other sites

    Have you tried to juggle with period_time, buffer_time and nrpacks settings?

    I have seen you have set your snd-usb-audio to nrpacks=1, that is your blocks of audio data are sent every 1ms which corresponds to a high number of IRQs. Have you tried for example nrpacks=20?!

     

    Thanks for the explanation of what the 'nrpacks=1' setting means. It comes from me, as I needed to add it to my Raspberry Pi ALSA settings stop ALSA logging huge numbers of warning messages. I assumed that because it was a good idea for the Raspberry Pi, it would be a good idea to use it for the BeagleBone and I suggested that K-Man tried it who it turn suggested it to Chris.

     

    Is there a means of measuring the best setting? Would a setting that works best for 16/44 audio be the best setting for 24/192 audio? Or would it be best removed altogether?

    Share this comment


    Link to comment
    Share on other sites

    The BBB is a computer that connects to a DAC via USB. It's the same concept as the CAPS Lagoon. All storage is on a NAS. This unit doesn't do upnp and doesn't compete with any upnp /DLNA products.

    The way Chris set up the Beagle Bone Black doesn't make it a UPnP renderer, but you could install different software to allow this (you'd have to Google and research). Equally you could install software to create a Squeezebox compatible renderer.

     

    Eloise

    Share this comment


    Link to comment
    Share on other sites

    Thanks a lot for the comprehensive tutorial.

     

    I'm on the same route but I'll use Cubieboard since Beagle is not available in my country and Cubie has a SATA port which is a big plus for me (too lazy to setup a NAS box). Currently collecting references all over the web while waiting my board delivery.

     

    The way Chris set up the Beagle Bone Black doesn't make it a UPnP renderer, but you could install different software to allow this (you'd have to Google and research). Equally you could install software to create a Squeezebox compatible renderer.

     

    Eloise

     

    With Mopidy + Rygel, a Linux box can serve as a complete UPNP box for music . They add another layer on top of MPD as UPNP front end (Mopidy as server, Rygel as renderer). Controlled via Android Bubble UPNP, that will be a match made in heaven.

    Share this comment


    Link to comment
    Share on other sites

    Maybe when they get up to around 2Ghz multicore CPUs and 2 GB of RAM etc. these little boards will be more than toys.

    Share this comment


    Link to comment
    Share on other sites

    Maybe when they get up to around 2Ghz multicore CPUs and 2 GB of RAM etc. these little boards will be more than toys.

    You may want to check out the Wandboard with 1 GHz four core processor and 2 GB of RAM.

    Share this comment


    Link to comment
    Share on other sites

    Thanks a lot for the comprehensive tutorial.

     

    I'm on the same route but I'll use Cubieboard since Beagle is not available in my country and Cubie has a SATA port which is a big plus for me (too lazy to setup a NAS box). Currently collecting references all over the web while waiting my board delivery.

     

     

     

    With Mopidy + Rygel, a Linux box can serve as a complete UPNP box for music . They add another layer on top of MPD as UPNP front end (Mopidy as server, Rygel as renderer). Controlled via Android Bubble UPNP, that will be a match made in heaven.

     

    I think you are suggesting an interesting configuration. To me a great advantage of these cheap ARM servers is that you can play around with configurations without spending much money only a bit of time. I have tried comparing SMB with NFS on my file server and decided I preferred NFS.

     

    At some point I would like to give UPNP a go and I did come across Mopidy which sounds interesting. However, if you are using it with an MPD client such as MPod or MPDroid I would assume the tablet sends commands directly to Mopidy to tell it to play a track. Whereas if you were using it with an UPNP client on the tablet or phone, the client would send commands to the UPNP server like Rygel, which in turn would stream the music to the renderer running on the BeagleBone.

     

    Also I would assume that the extra gstreamer middleware layer that Mopidy uses might have an effect on the sound compared with the simpler straight to ALSA route that MPD uses. The best thing to do is to try both out and see how they sound and how convenient they are to use, and I would be interested to hear of anyone who has got a configuration working like you suggest, and how it sounds in practice.

    Share this comment


    Link to comment
    Share on other sites

    Thanks for the explanation of what the 'nrpacks=1' setting means. It comes from me, as I needed to add it to my Raspberry Pi ALSA settings stop ALSA logging huge numbers of warning messages. I assumed that because it was a good idea for the Raspberry Pi, it would be a good idea to use it for the BeagleBone and I suggested that K-Man tried it who it turn suggested it to Chris.

     

    Is there a means of measuring the best setting? Would a setting that works best for 16/44 audio be the best setting for 24/192 audio? Or would it be best removed altogether?

    With 'nrpacks=1' setting you dicrease latency, but if you want to keep CPU usage at minimum and let the USB controller do the work, you need large buffers and large nrpacks. For async usb there are some limits imposed by the usb-audio driver preparing new URB (groups of USB packets submitted to the USB controller at once).

    With USB 2.0 you have to take into account that each frame is sent every 125-microseconds.

     

    Under those terms you need to find the best combination of nrpacks and period time to avoid xruns.

     

    I do not know how technical you want to go on these pages. A good starting point to have a general idea is this phofman's post: Linux Audio the way to go!? - Page 92 - diyAudio

     

    Yes, it is possible to trace system reaction to various settings by using strace application.

    Share this comment


    Link to comment
    Share on other sites

    Need some help please. I don't have a NAS so I have enabled SMB on my Mac. I have another Mac and I have been able to connect to my Mac with SMB enabled using the NetBIOS name in the WINS tab in the settings. This doesn't work for mounting on the BBB. I do have an IP address that I get in the File Sharing tab. Is there a way to get the proper address I should be using for my iTunes directory, which is stored on an external drive. Been stuck here for a while. Feel so close, but I keep getting these mount errors. Thanks.

    Share this comment


    Link to comment
    Share on other sites

    Add your music folder to the shared folders in the sharing settings. The name of this folder will be the share name, for example //10.0.1.111/music

     

    Let us know if that helps.

    Share this comment


    Link to comment
    Share on other sites

    I believe that is how I have it set up. I know I'm doing something wrong. I'll keep trying, don't want to turn this comment section into a personal help board. Thanks for the suggestions.

    Share this comment


    Link to comment
    Share on other sites

    Thanks very much for this informative guide. I've setup a Pogoplug using ArchLinux to do the same thing but unfortunately, there are no good squeezebox or MPD server for ArchLinux. So will definitely look at a BBB as an option. Would be great if you could also provide a negative list of DACs that will NOT work with this system? Also, any good android MPD clients that you would recommend?

    Share this comment


    Link to comment
    Share on other sites

    I believe that is how I have it set up. I know I'm doing something wrong. I'll keep trying, don't want to turn this comment section into a personal help board. Thanks for the suggestions.

     

    Don't worry just keep asking for help. If you have a question or problem the chances are great that many others do as well.

    Share this comment


    Link to comment
    Share on other sites

    My guess is it's a mounting issue and I seem to find an infinite number of answers when searching. It's possible it has to do with the syntax of how I'm referring to the SMB share on my Mac. I see that there are others on this thread that were looking to do the same thing with their Macs instead of using a NAS. If any of you have had success, any recommendations on what you were able to do to get it to work?

    Share this comment


    Link to comment
    Share on other sites

    My guess is it's a mounting issue and I seem to find an infinite number of answers when searching. It's possible it has to do with the syntax of how I'm referring to the SMB share on my Mac. I see that there are others on this thread that were looking to do the same thing with their Macs instead of using a NAS. If any of you have had success, any recommendations on what you were able to do to get it to work?

    I got it working using OS X 10.8.4. Here are the details.

     

    line in fstab:

    //10.0.1.54/Desktop /mnt/music cifs user=my_short_username,password=mypassword,nounix,sec=ntlmssp,noperm,rw

     

    My Sharing settings:

     

     

    sharing-1.png

    6673-article-geek-speak-how-build-beaglebone-black-mpd-music-server-sharing-1.png

    6672-article-geek-speak-how-build-beaglebone-black-mpd-music-server-sharing-2.png

    sharing-2.png

    Share this comment


    Link to comment
    Share on other sites

    Wow, I would have never have been able to figure that out. Took a few tries, but I was eventually able to mount my drive. Couldn't be anymore pleasantly surprised by this whole project. My Halide works fine as well. Only place where I'm stuck a bit is I can't get MPD to control the volume. I see it at the minimum level on my iPad and can't work the slider, so output is set at the maximum. Normally this wouldn't be a problem, except I run a passive preamp with no remote volume.

     

    Thanks Chris for all your help.

    Share this comment


    Link to comment
    Share on other sites

    Thir article triggered me enough to order a Beaglebone Black. It will be compared to my Windows 7 & / JRiver 17 system which I use now.

     

    As my HTPC is also used as our general purpose PC with Outlook/Office, Lightroom, Nik sofware and more I feel a clean dedicated setup will be more convenient as my HTPC is only on when needed, while the beaglebone can be switched on all the time.

     

    In other discussions some comparable systems like CuBox are mentioned which seems to do the job well.

    Why is the Beaglebone black used here ? Becuase you think it is best suited for the job (with a very low price) or is it because this system has most issues already solved setting it up correctly as appears in your extensive setup description ?

     

    What is your experience / expectations compared to a Windows / JRiver setup in sound quality ?

    Share this comment


    Link to comment
    Share on other sites

    Just have to ask. Library updates fine, and MPAD is connected. The only thing I'm having problems with now is the player is stuck on pause. If I hit play it just goes back to pause immediately. USB DAC is listed as an output. Not sure what has changed. Lots to still learn I see.

    Share this comment


    Link to comment
    Share on other sites

    Silverarrows,

     

    It would mean your Beaglebone failed to recognize your DAC, or it has moved to another position in the devices list.

     

    Try typing the following:

     

    aplay -L

     

    The 2 default devices listed would be Beaglebone Ti and your DAC, in their positions 0:0 or 1:0. If your DAC is not listed, then it will be a connection issue. If it is listed, re-edit /etc/mpd.conf and look for the ALSA Audio Output section:

     

     

    [left][color=#3E3E3E]audio_output {[/color]
    [color=#3E3E3E]type "alsa"[/color]
    [color=#3E3E3E]name "USB DAC"[/color]
    [color=#3E3E3E]device "hw:[b]card_name[/b],0" # optional[/color]
    [color=#3E3E3E]# format "44100:16:2" # optional[/color]
    [color=#3E3E3E]# mixer_device "default" # optional[/color]
    [color=#3E3E3E]# mixer_control "PCM" # optional[/color]
    [color=#3E3E3E]# mixer_index "0" # optional[/color]
    [color=#3E3E3E]}[/color][/left]
    
    

     

    Where card_name is from the aplay -L command (NOT the device name). If you change your DAC, then you will need to re-edit it.

    Share this comment


    Link to comment
    Share on other sites

    Forgot to mention this:

     

    To get the 'aplay' command working, you need to install the alsa-utils package:

     

    sudo apt-get install alsa-utils

    Share this comment


    Link to comment
    Share on other sites

    For the past 2 weeks I have been using Logitech Media Server on the Synology NAS, and running Squeezelite on the Beaglebone Black. It gives a great performance, and takes fewer steps to set up. That does mean taking MPD out of the equation, so I’ll write out a set of instructions elsewhere (new blog entry) if anyone is interested in trying this alternative configuration. The Squeezebox Controller app for the iPhone/iPad works similarly to MPoD/mPaD for remote.

     

    Upon further experimenting with networking, I get the best results sending the data between NAS and Beaglebone wirelessly with an Airport Extreme and Express combo. I had always been skeptical with wireless transmission in audio, but on balance less ‘noise’ is heard compared to the wired setup.

    Share this comment


    Link to comment
    Share on other sites




    Guest
    This is now closed for further comments




×
×
  • Create New...