Home > Embedded Computing > Raspberry Pi version B+

Raspberry Pi version B+

November 12, 2014 Leave a comment Go to comments

Previously I wrote:

I had ordered a BBB for no other reason that it’s better looking than the Rpi 🙂

Well, no longer. I ordered the new version B+ because it is as good looking as the BeagleBone Black 🙂

DSC04829

DSC04367

Not really. The reason is because that there is a lot, lot more community development in the Pi than the Beagle. In fact if we just look at shipments, the Raspberry Pi sells almost 20 times the amount of BeableBone Black (over 3.8 million [link] vs 200,000 devices [link]). This is a huge advantage in the popularity front.

I had been a fan of the BeagleBone board [link] mainly because it is a higher performance board and had local storage. In addition (by design or by accident) the audio master clock uses an on-board 24.576 MHz clock from which it derives the frequencies for 48KHz sample rate material with integer division. There is also the capability of receiving the master clock from external sources and thus it is possible to feed it a higher quality 24.576 MHz and 22.5792 MHz clocks. There has been a clock board (and corresponding drivers) in the works since early this year, but nothing available yet as of this writing [link]

In contrast, there has been a much larger development effort in the RPi front as testified by the numerous I2S DAC boards that have become commercially available. Many of these companies are dedicated to building audio solutions first for the Raspberry Pi and then possible for other embedded platforms.

Here is a list of DAC boards available for the Raspberry Pi (versus none for the BeagleBone Black as of this writing)

COMPANY PRODUCT
PRICE DAC CHIP
COMMENTS
G2 Labs BerryNOS 1543 RED $125 Philips TDA1543 Balanced design, discrete output stage, power supply
BerryNOS mini $60 Philips TDA1543 Balanced design, discrete output stage
HIFIBerry HiFiBerry DAC €25 TI PCM5102A
HiFiBerry DAC+ €30 TI PCM5122 DAC volume control
IQAudio PiDAC $38 TI PCM5122 DAC volume control
PiDAC+ $42 TI PCM5122 DAC volume control, headphone amp
Saparel RaspiPlay3 $40 TI PCM5102A From Serbia
RaspiPlay4 [link] TBD TI PCM5122 DAC volume control, IR remote
Audiophonics I-Sabre DAC €25 ESS ES9023
I-Sabre DAC+ €43 ESS ES9023
Element 14 Wolfson Audio Card $35 Wolfson WM5102 Available through resellers. WM5102 is a complete audio system. The board implements line-in, line-out, speaker and headphone output and mic input. The board also includes a WM8804 providing SPDIF input and output, a digital microphone and expansion header for other Wolfson devices
TekDevice DACBerry2+ $45 TI PCM5102A
DACBerry3+ $51 ESS ES9023
HIFImeDIY ES9023 DAC $19 ESS ES9023 Lowest price!
DurioSound DurioSound $45 TI PCM5102A Has ultra low noise regulator (TPS7a47)
DurioSound Pro $70 TI PCM5102A Has ultra low noise regulator (TPS7a47) and Local Power Supply

Notes:

  1. Notice that the DAC chips used are the ones that can cope without a Master Clock. RPi I2S does not Master Clock, so the DACs synch on bitclock and generate their own master clock.
  2. Products using PCM 5122 can use the DAC’s internal volume control and therefore can be connected directly to an amplifier.
  3. There are companies such as diyinhk and curryman that are not listed because they do not specifically make DAC boards that conform to the RPi footprint but are fully functional as I2S DACs. Any I2S DAC that does not require master clock will work.

My Favorite ones are the HIFIBerry DAC+ and the IQAudio PiDAC+, both based on the PCM 5122 with “hardware” volume control (meaning using the volume control in the DAC itself)

hifiberrydacplus

[link]

pi-dac_plus

[link]

WHAT IS NEW IN THE B+

In the two years since we launched the current Raspberry Pi Model B, we’ve often talked about our intention to do one more hardware revision to incorporate the numerous small improvements people have been asking for. This isn’t a “Raspberry Pi 2″, but rather the final evolution of the original Raspberry Pi. Today, I’m very pleased to be able to announce the immediate availability, at $35 – it’s still the same price, of what we’re calling the Raspberry Pi Model B+. [link]

There are a million reviews on the Raspberry Pi. Here is one more but with a slant towards diyaudio…

New Layout (and more I/O pins)

DSC04828

I2SPins-001

Notice that the I2S pins are right next to a GND pin. This is particularly good as you can easily use twisted pairs (for noise immunity) when connecting to a DAC

List of integrated circuits [link]

Label Device Description
U1 BCM2835 SoC comprising ARM Processing core and Video Core. Data Sheet
U2 LAN9514 4 USB 2.0 Hub and 10/100 Ethernet controller. Data Sheet
U3 PAM2306AYPKE Dual DC-DC Switching converter. Data Sheet
U4 APX803-46SAG Brownout detector (reset generator)  Data Sheet
U5 AP7115-25SEG 150 mA Linear Regulator. 50 uV noise (Video DAC)  Data Sheet
U6 N.U.
U7 N.U.
U8 ESD5384 ESD protection for HDMI. Data Sheet
U9 AP2331W Current limited switch (for HDMI hot plug) Data Sheet
U10 AP7115-25SEG 150 mA Linear Regulator. 50 uV noise. (PWM Audio Driver supply) Data Sheet
U11 NC7WZ16 Ultra High Speed dual buffer. (PWM Driver) Data Sheet
U12 N.U.
U13 AP2553W6 USB current limited power switch (for hot plug). Data Sheet
U14 DMMT5401 Matched PNP transistors. Data Sheet

Board schematic here: [link]

The audio jack is also a composite AV jack

avjack

More USB Ports

DSC04830

New USB/Network Chip (to support the 4 USB ports)

DSC04831

The USB powerchain has a proper limiting switch and will not brown out the board if USB devices are plugged in when powered (or even if they try to take too much current or there is a fault like a power short). Default allowed USB current across 4 ports is 600mA, but can be increased to 1.2A via a config.txt parameter if a good quality 2A PSU is used. I have tried a few different USB hard disks and they all power fine directly from the Pi at the 1.2A setting. [link]

To increase power to 1.2A you add the following line in /boot/config.txt[link]

  • max_usb_current=1 (newer software)
  • safe_mode_gpio=4 (older software)

The 5V for the USB ports is provided directly by the 5V of the input supply. The schematic below shows the 5V sourced from Power In. There is a 2A fuse a diode-like low-drop polarity protection circuit and an over-voltage zener.

RPiPower2

Therefore a better quality power supply is required. Here is an excellent post on choosing and evaluating 5V charger/supply [link]

I like the Orico DCX-2U. It has two USB outputs: 1×2.4A, 1×1.5A. The 2.4A output is plenty for a “fully loaded” RPi

High Efficiency Switching Supply (power consumption is reduced by between 0.5W and 1W)

DSC04839

The DC-DC Switching supply is the PAM2306AYPKE. This device supplies the 3.3v and 1.8v supplies. The switching frequency is 1.5MHz (which can easily removed by the LC filters on the outputs).

RPiPower1

MicroSD Card Slot

There are many theories as to why the SD card was replaced with the micro SD card. I think it is probably lower cost.

DSC04834

BETTER ANALOG AUDIO

According to the people from Raspberry Pi, the audio in the B+ model has been improved. The audio circuit (AUDIO out) incorporates a dedicated low-noise power supply (the input to this power supply is the external 5V supply). According to this comment [link]:

The B+ does not use use a switching regulator for its PWM driver, that would indeed be a bad design choice, instead it uses the AP7115-25SEG [link] low drop regulator with high power supply rejection ratio. It creates a noise free 2.5V for the NC7WZ16 PWM driver, the output of which is attenuated and filtered with two 100 Ohm resistors, and a 100 nF capacitor, so the output is 50 Ohm, and can reach 1.25Volt p/p.

U10 is the linear regulator and U11 is the “PWM Driver”

DSC04836

Whether this audio is “better” or not, it does not concern us. Take a look at this post [link].

WHAT’S THE SAME?

Same SoC (Same ARM processor and GPU and 512MB of RAM)

512MB

Unlike the BeagleBone Black, there is no local memory for storage. The s/w runs out of the microSD card.

Same external 19.2 MHz crystal

DSC04833

  1. November 26, 2014 at 18:21

    Interesting overview, thanks 🙂

    Audiophonics actually just listed a DAC specifically for the B+ which also does both analogue and I2S out: http://www.audiophonics.fr/en/kits-modules-diy-dac/audiophonics-dac-sabre-es9023-i2s-vers-analogique-24bit192khz-v20-p-9341.html

    /U.

    • BlgGear
      November 27, 2014 at 02:02

      Thanks. Do you mean I2S input?. If it provides I2S output then it just passing the I2S of the Rpi…
      Like your blog. I am also a slowdiyer… 🙂

      • November 27, 2014 at 22:02

        Yes, of course it is an I2S input. Thanks for that – and for the comments of course 🙂

        /U.

  2. SauceBoss
    November 26, 2014 at 18:44

    Why nobody camed with DAC for Pi with ASRC? That would be a solution for poor signal coming from it.

    • BlgGear
      November 27, 2014 at 02:03

      The ES9023 has a built in ASRC… But a board with a separate ASRC chip would cost more money 🙂

      • ChrisMmm
        November 30, 2014 at 22:45

        Are you sure the ES9023 has a built in ASRC? I can find no documentation to that effect. OTOH the ES9013K2M does.

      • BlgGear
        December 3, 2014 at 01:04

        I think so. It can run synchronously with a master clock signal or asynchronously with a local 50 MHz clock.

  3. Derek
    November 27, 2014 at 22:53

    The B+ works well with the ESS 9018K2M as well. I have tried it with an ESS 9023 and the TI PC5102A (all i2S boards from diyinhk) but the K2M is a definite step up. Added bonus is the Hifiduino implementation elsewhere on this site. Makes a compact, fine sounding front end utilising the 32-bit volume control built in to the K2M – plus an LCD. I used the Volumio 1.51 software with the K2M (and some mods to a few files as documented on the Volumio site) and my ‘first listen’ feeling is the B+ with I2S sounds better than an Alix 2d2 with USB-to-I2S XMOS out to the K2M. Only caveat is that DSD files drop out badly on the B+ – not sure why yet but the 1.51 software is still young. Everything from 16/44.1 to 24/192 plays fine.

  4. BlgGear
    November 29, 2014 at 17:34

    Thanks for the tip. I believe the changes to Volumio are documented here: http://volumio.org/forum/es9018k2m-t1218-20.html and here: http://volumio.org/forum/es9018k2m-based-streaming-solution-t2087.html

    I’ve copied it here for easy reference:

    Volumio 1.4, 1.5 and 1.51 needs to be tricked to play music through the ES9018K2M. If you select a generic DAC driver, you cannot use it for audio output directly using the GUI.

    I did apply the following settings to make it work:

    File: /etc/modules
    snd_soc_core
    snd_soc_bcm2708_i2s
    bcm2708_dmaengine
    snd_soc_pcm1794a
    snd_soc_rpi_dac

    File: /etc/asound.conf
    pcm.!default {
    type hw card 0
    }
    ctl.!default {
    type hw card 0
    }

    File: /etc/mpd.conf
    audio_output {

    type “alsa”
    name “Output”
    device “hw:0,0”
    mixer_control “Playback Digital”
    mixer_device “hw:0”
    mixer_index “0”
    dsd_usb “yes”

    }

    After that the I2S driver for the RPI-DAC can be used, and the audio output is set to sndrpirpidac.

  5. December 30, 2014 at 16:58

    Great blog and sterling work. PM me sometime.

    gordon@iqaudio.com

  6. tom
    April 27, 2015 at 09:21

    What is with this DAC: Mamboberry Hi-Fi DAC+ (192kHz/24bit)?
    Digital eXtreme Definition DXD 352.8 kHz playback in Raspberry PI 2 !

    http://www.collybia.com/dac/

  7. September 14, 2016 at 16:27

    taco catering los angeles

  8. September 14, 2016 at 17:36

    elo boosting

  9. November 18, 2016 at 20:57

    Yet another (High End) Raspberry Pi DAC board, TauDAC: 2 x 8741 in mono mode, ultra low noise clocks and linear voltage regulators, Lundahl output transformers.

    http://taudac.com

  1. March 2, 2015 at 16:02

Leave a comment