Raspberry Pi B+ & 2B

Overview

2B with DAC+The Raspberry Pi is a low cost, credit-card sized computer that plugs into a computer monitor or TV, and uses a standard keyboard and mouse. It’s capable of doing everything you’d expect a desktop computer to do, from browsing the internet and playing high-definition video, to making spreadsheets, word-processing, and playing games.

In MuBox, we aims at providing an ultimate CAS (computer as source) device for high-definition audio playback via integration with Hifiberry DAC+.

MuBox is officially tested on and supported for B+ and 2B boards. The followings is the specification of B+:

  1. Broadcom BCM2835 700MHz
  2. 512MB RAM
  3. MicroSD connection
  4. 10/100Mbps Ethernet Connector
  5. Standard micro USB connector 5V as a DC power
  6. 4 x USB 2.0 host ports
  7. HDMI connector
  8. combined audio/video out
  9. 40-pin expansion header , Camera interface port (CSI-2), LCD display interface port (DSI)

Raspberry Pi 2 Model B equips with Quad core Broadcom BCM2836 900MHz with 1GB RAM.

Older RPi versions (even back to 2011 initial model) could also run MuBox, but we still recommend B+ or 2B board for low-cost, high-quality audio playback.

Please refer to Raspberry Pi Models for product feature comparison.

MuBox on Raspberry Pi B+ and 2B

Some features is specifically tuned for Raspberry Pi B+/2B:

  1. Using standard Raspberry Pi supported kernel via rpi-update
  2. Integrated with Hifiberry DAC+

Installation

Please note that we only tests MuBox on Raspberry Pi B+ and 2B model.

Pre-requisite

1. You need a Linux machine (could be x86, ARM based or any architecture)
2. a uSD card and a compatible card reader

uSD card creation by script

Download the installation script to your Linux machine, insert uSD card to card reader attached to your Linux machine, login as root, and run:

# ./install-mubox-rpi.sh /dev/sdX

where /dev/sdX is your SD card device. If you are unsure, type "cat /proc/partitions" to list all available disk devices and partitions. The script will format your card, download and install rootfs, install kernel and bootloader, etc.

After the installation completes, eject the card, re-insert the card to RPi board and power-up the board. Be sure to read our getting started guide in cookbook section if you use MuBox for the first time!

Configure to work with HifiBerry DAC, Digi/Digi+, or Amp/AMP+

MuBox for RPi is pre-configured for Hifiberry DAC+. You must edit /boot/config.txt and change the following line:
From:


dtoverlay=hifiberry-dacplus

For DAC, to:

dtoverlay=hifiberry-dac

For Digi/Digi+, to:

dtoverlay=hifiberry-digi

For Amp/Amp+, to:

dtoverlay=hifiberry-amp

Configure to work with USB DAC

To configure RPi to run with the USB DAC, please make sure the following module configuration in /etc/modprobe.d/alsa-base.conf

## Make sure snd-usb-audio does not set to index=-2 or assign any index.  If it is defined, please comment out.
#options snd-usb-audio index=-2

Otherwise, USB DAC may be assigned by ALSA as second card, i.e. index 1,

# cat /proc/asound/cards
 1 [X20            ]: USB-Audio - XMOS USB Audio 2.0
                      XMOS XMOS USB Audio 2.0 at usb-bcm2708_usb-1.4, high speed

And require change the ALSA card to hw:1,0 in /etc/mpd.conf:

audio_output {
        type            "alsa"
        name            "My ALSA Device"
        device          "hw:1,0"
        ...
}

Configure to work with Soekris DAM1021 DAC

To configure RPi to run with the Soekris DAM1021 DAC,
1. in /boot/config.txt, comment out of remove the following line and add a line "device_tree=":

## Remove "device_tree_overlay=" or dtoverlay=, then 
##  add "device_tree=" for Soekris DAM1021 DAC:
#device_tree_overlay=overlays/hifiberry-dacplus-overlay.dtb 
#dtoverlay=hifiberry-dacplus
device_tree=

2. in /etc/modules add the following two lines:

snd_soc_pcm1794a
snd_soc_rpi_dac

and reboot.

Overclocking and reducing GPU memory

You may consider overclocking your RPi B+, by commenting out the following lines in /boot/config.txt and reboot:

#arm_freq=1100
#core_freq=500
#sdram_freq=500
#over_voltage=6
#temp_limit=80

This will boost the CPU to run at 1.1GHz. For 2B, 1.1GHz may be too high, you may just overclock all 4 cores to 1.0GHz instead.

Since all of the time MuBox runs headless, you can allocate less memory to GPU, e.g. reducing from 64MB to 16MB like below:

gpu_mem_512=16
gpu_mem_256=16