User Guide for OSA Electronics models including: DACBerry ONE, DACBerry ONE Professional Audio Soundcard, Professional Audio Soundcard, Audio Soundcard, Soundcard
OSA DACBerry ONE Sound Card for Raspberry Pi, ASUS Tinker Board, Jets — makerelectronics
File Info : application/pdf, 28 Pages, 1.40MB
DocumentDocumentOSA DACBerry ONE+ User Guide This guide contains all the information you will need to run the OSA Electronics DACBerry ONE+. Assembly Use the nylon screws and standoffs to assembly the Raspberry Pi together with the DACBerry ONE+, as shown on the image below: Onboard Configuration By default, the DACBerry ONE+ board DAC PCM5142 acts as master device, and the WM8804 as slave device, together the Pi. PCM5142 default I2C address is 0x4D, WM8804 address is 0x3B. The PCM5142 can be also configured as slave device implementing your own driver. The WM8804 is set by default on Hardware mode, without any I2C connection. It will get the MCLK directly from the DAC and will reproduce files at same time as the PCM5142. Onboard, there are several solder jumpers to configure the modes of the WM8804. You can select between Hardware/Software mode; Slave/Master mode; AIF/SPDIF Rx modes and MCLK input selection. The two I2C solder jumper are by default disabled, allowing a correct communication between the Pi and the DAC, because the WM8804 has two pull-down resistors on I2C lines for Hardware mode. When switching to Software mode, both lines will have a pull-up resistors on I2C bus, allowing you to close the two solder jumpers enabling the communication. Board layout This is the board layout: Board modes Enable Hardware Mode of WM8804 (Default): · I2C control over WM8804 Disabled · WM8804 in Hardware Mode · WM8804 as Slave Device · WM8804 MCLK from PCM5142 SCLK This mode enables playing simoultaneously Analog and Digital using the same driver. Enable Software Mode of WM8804*: · I2C control over WM8804 Enabled · WM8804 in Sotware Mode · WM8804 as Master Device · WM8804 MCLK from itslef (You can use the default configuration if you plan to play Analog and Digital at same time) This mode disables playing simoultaneously Analog and Digital using the same driver. You can switch between them aplying different profiles, or you can also use both at same time (In that case, you will need to create your own driver). *IMPORTANT: Modify the board at your own risk. You will need some soldering skills and tools to do it. Jumper Settings The DACBerry ONE+ also offers you the option to have Digital Coax IN/Out using onboard RCA connectors or using an extension board/cable. To do that, take a look to the J2 jumper configuration. By default, jumpers are located on the LEFT and RIGHT position: Change them to the following position in order to use Digital Coax In and Out: If you use the onboard RCA connectors for digital purpose, you can still use the 3.5mm jack for analog audio output or for optical input. In case you want to use an external board or cable with RCA connectors in the end, this is the J2 pinout: You will also need to take the GND from J1 connector. SDBTM Connector DACBerry ONE+ is one of the first boards to include this standard created by OSA Electronics. SDB Interface is a mix of Sound and Data signals together in the same Bus. The A1 revision uses SDBTM 1.0 (like DACBerry PRO), and A2 Revision the SDBTM 1.1. This is the SDBTM connector on ONE+ board: SDBTM 1.0 GPIO SDBTM 1.1 GPIO Quick Install There is an easy way to install support for DACBerry ONE+ on Raspbian/Raspberry Pi OS. Just run the following code from your Raspberry Pi with Internet connectivity: curl https://www.osaelectronics.com/get/dboneplus.sh | bash You may need to reboot once. After rebooting, everything should work! *NOTE: If quick install doesn't work at all, or want to follow step by step instructions, please refer to the Retropie part. Volumio Instructions Volumio has already official support for this board, so to get it working you need to use the "OSA DACBerry ONE+" profile. *IMPORTANT: In order to make it works properly, is recommended to do a fresh install of Volumio and use lastest version. Airplay Volumio is a perfect choice if you want to stream music from your Apple devices. Step 1 Open Volumio and navigate trought "Network" in Settings Panel, and connect to your WiFi network. Step 2 Inside "Network" settings, locate "Hotspot Settings" tab and enable it if it's not. Restart. Step 3 Go to your desired Apple (or Windows) device and open iTunes if you are using a computer, or open the "control center" if using a phone/tablet. Go to the "Airplay" icon and select "Volumio". Step 4 That's it! Enjoy streaming music! Adding password to your Airplay device With the Airplay feature activated, everybody will have access to your device and will be able to play music on it. If you want to add a password to it, follow these instructions. Step 1 Open an SSH connection to your Pi, if you can't connect at all, enable it on volumio.local/dev. Then, type the following line to open up the template for the shairport config file in a text editor: sudo nano /volumio/app/plugins/music_service/airplay_emulation/shairport-sync.conf.tmpl Step 2 In the "general" section, add a password, like this: general = { name = "${name}"; log_verbosity = 0; password = "<your airplay password here>"; }; Save the file as usual and reboot. Step 3 Connect to your device, you should be prompted for a password when airplaying to it. moOde Instructions moOde Audio Player is one of a range of audio playback solutions that supports DACBerry boards. You can follow these instructions in order to install and configure it. It does not offer a "ready to use" image like other distributions. Instead it uses an image of the operating system (Raspbian) as basis and then a script for automatic installation. *IMPORTANT: In order to make it works properly, is recommended to do a fresh install of moOde and use lastest version. Installation Step 6 The following command executes the script. If you have not been connected to the internet two commands earlier, than simply NOTHING will happen here. If you had been online the installation wizard will be started. sudo ./mosbuild.sh Now a wizard will help you to do some setup: Make the following choices: · Write OS build directly to the boot SDCard? -> y · Do you have a backup of your boot SDCard? -> y · Enter Current Date (YYYY-MM-DD) -> enter date · Make corrections -> n · Use a proxy server for Internet access -> n · Use a WIFI instead of Ethernet? -> n (Switching to WIFI should be done later when moOde is running.) · Proceed with build -> y · Power off the Pi -> y · Wait for about 10 seconds until the green LED on Pi stops blinking. Then unplug the power cable and replug it. All you have to do now is to wait. The Pi is downloading and compiling, so how long you have to wait is mostly depending on the CPU speed of your Pi. This may be several hours. Configuration Step 1 Direct your web browser to http://moode, http://moode.local or the device's IP address. Then, click the menu icon in the top right corner and select Configure. Step 2 Now, select the Audio icon. Choose the HiFiBerry DAC+ board from the I2S audio device drop-down list and click SET. Step 3 Restart the device and enjoy your music! OSMC Instructions KODI OSMC team is already working to add official support on next release, but meanwhile, you can follow these steps to make it work: *IMPORTANT: In order to make it works properly, is recommended to do a fresh install of OSMC and use lastest version. To get it working using the RCA Output and Optical/Coax at same time, you need to use the "Hifiberry DAC Plus" profile. Retropie Instructions As for Raspbian Jessie, just run the following code from your Raspberry Pi with Internet connectivity: curl https://www.osaelectronics.com/get/dboneplus.sh | bash The next step is to edit the raspi modules list with: sudo nano /etc/asound.conf This file should be blank! Just copy and paste the following text into the file: pcm.dacberry { type softvol slave.pcm "plughw:0" control.name "PCM" control.card 0 } pcm.!default { type plug slave.pcm "dacberry" } ctl.!default { type hw card 0 } Save the file as usual and reboot: sudo reboot Now to check everything is as expected, just type: amixer aplay -l You should see something like that: pi@retropie:~ $ amixer Simple mixer control 'DSP Program',0 Capabilities: enum Items: 'FIR interpolation with de-emphasis' 'Low latency IIR with de-emphasis' 'High attenuation with de-emphasis' 'Fixed process flow' 'Ringing-less low latency FIR' Item0: 'Low latency IIR with de-emphasis' Simple mixer control 'Analogue',0 Capabilities: pvolume Playback channels: Front Left - Front Right Limits: Playback 0 - 1 Mono: Front Left: Playback 1 [100%] [0.00dB] Front Right: Playback 1 [100%] [0.00dB] Simple mixer control 'Analogue Playback Boost',0 Capabilities: volume Playback channels: Front Left - Front Right Capture channels: Front Left - Front Right Limits: 0 - 1 Front Left: 0 [0%] [0.00dB] Front Right: 0 [0%] [0.00dB] Simple mixer control 'Auto Mute',0 Capabilities: pswitch Playback channels: Front Left - Front Right Mono: Front Left: Playback [on] Front Right: Playback [on] Simple mixer control 'Auto Mute Mono',0 Capabilities: pswitch pswitch-joined Playback channels: Mono Mono: Playback [on] Simple mixer control 'Auto Mute Time Left',0 Capabilities: enum Items: '21ms' '106ms' '213ms' '533ms' '1.07s' '2.13s' '5.33s' '10.66s' Item0: '21ms' Simple mixer control 'Auto Mute Time Right',0 Capabilities: enum Items: '21ms' '106ms' '213ms' '533ms' '1.07s' '2.13s' '5.33s' '10.66s' Item0: '21ms' Simple mixer control 'Clock Missing Period',0 Capabilities: enum Items: '1s' '2s' '3s' '4s' '5s' '6s' '7s' '8s' Item0: '1s' Simple mixer control 'Deemphasis',0 Capabilities: pswitch pswitch-joined Playback channels: Mono Mono: Playback [on] Simple mixer control 'Digital',0 Capabilities: pvolume pswitch Playback channels: Front Left - Front Right Limits: Playback 0 - 207 Mono: Front Left: Playback 207 [100%] [0.00dB] [on] Front Right: Playback 207 [100%] [0.00dB] [on] Simple mixer control 'Max Overclock DAC',0 Capabilities: volume volume-joined Playback channels: Mono Capture channels: Mono Limits: 0 - 40 Mono: 0 [0%] Simple mixer control 'Max Overclock DSP',0 Capabilities: volume volume-joined Playback channels: Mono Capture channels: Mono Limits: 0 - 40 Mono: 0 [0%] Simple mixer control 'Max Overclock PLL',0 Capabilities: volume volume-joined Playback channels: Mono Capture channels: Mono Limits: 0 - 20 Mono: 0 [0%] Simple mixer control 'Volume Ramp Down Emergency Rate',0 Capabilities: enum Items: '1 sample/update' '2 samples/update' '4 samples/update' 'Immediate' Item0: '1 sample/update' Simple mixer control 'Volume Ramp Down Emergency Step',0 Capabilities: enum Items: '4dB/step' '2dB/step' '1dB/step' '0.5dB/step' Item0: '4dB/step' Simple mixer control 'Volume Ramp Down Rate',0 Capabilities: enum Items: '1 sample/update' '2 samples/update' '4 samples/update' 'Immediate' Item0: '1 sample/update' Simple mixer control 'Volume Ramp Down Step',0 Capabilities: enum Items: '4dB/step' '2dB/step' '1dB/step' '0.5dB/step' Item0: '1dB/step' Simple mixer control 'Volume Ramp Up Rate',0 Capabilities: enum Items: '1 sample/update' '2 samples/update' '4 samples/update' 'Immediate' Item0: '1 sample/update' Simple mixer control 'Volume Ramp Up Step',0 Capabilities: enum Items: '4dB/step' '2dB/step' '1dB/step' '0.5dB/step' Item0: '1dB/step' pi@retropie:~ $ pi@retropie:~ $ aplay -l **** List of PLAYBACK Hardware Devices **** card 0: IQaudIODAC [IQaudIODAC], device 0: IQaudIO DAC HiFi pcm512x-hifi-0 [] Subdevices: 0/1 Subdevice #0: subdevice #0 pi@retropie:~ $ GPIO usage of DACBerry series boards Many of you may would like to add some additional hardware components to your Raspberry Pi. We provide this documentation to help you with this. However: · We do not guarantee interoperability with any other add-on card. Even if another card is not using the same GPIOs, there are many other things that might prevent interoperability. The Raspberry Pi GPIOs are not designed as a bus system (even the I2C bus can't be simply used by multiple cards as there might or might not be the right pull-up resistors on every I2C slave). · Soldering on the DACBerry boards voids warranty. There is no replacement for boards that have been modified. · There is no support from us. You can ask questions in our forums. There are already interesting projects and other users might help you. · Do not use more than a few mA from the 3.3V line. If your circuit requires 3.3V, use the 5V power rail of the Raspberry Pi with an additional voltage regulator. · Pin 27 and 28 are always reserved for an ID EEPROM on the Raspberry Pi. Independently which card you use, these pins are always reserved and should never be used to connect external components. DACBerry 400 Series · GPIOs 2-3 (Pins 3, 5) are used by our products for configuration. If you are experienced with I2C, you might add other slave devices. If you are a novice, we don't recommend this at all. · GPIOs 18-21 (Pins 12, 35, 38 and 40) are used for the sound interface. You can't use them for any other purpose. · GPIO 26 (Pin 37) is used for Board reset function. You can't use it for any other purpose. DACBerry AMP and AMP+ · GPIOs 2-3 (Pins 3, 5) are used by our products for configuration. If you are experienced with I2C, you might add other slave devices. If you are a novice, we don't recommend this at all. · GPIOs 18-21 (Pins 12, 35, 38 and 40) are used for the sound interface. You can't use them for any other purpose. DACBerry AMP² · GPIOs 2-3 (Pins 3, 5) are used by our products for configuration. If you are experienced with I2C, you might add other slave devices. If you are a novice, we don't recommend this at all. · GPIOs 14-15 (Pins 8,10) are used for MIDI interface. You can't use them for any other purpose. · GPIOs 18-21 (Pins 12, 35, 38 and 40) are used for the sound interface. You can't use them for any other purpose. · GPIO 22 (Pin 15) is used for Mute function. You can't use it for any other purpose. DACBerry AMP² SE · GPIOs 2-3 (Pins 3, 5) are used by our products for configuration. If you are experienced with I2C, you might add other slave devices. If you are a novice, we don't recommend this at all. · GPIOs 14-15 (Pins 8,10) are used for MIDI interface. You can't use them for any other purpose. · GPIOs 18-21 (Pins 12, 35, 38 and 40) are used for the sound interface. You can't use them for any other purpose. · GPIO 22 (Pin 15) is used for Mute function. You can't use it for any other purpose. DACBerry ONE · GPIOs 2-3 (Pins 3, 5) are used by our products for configuration. If you are experienced with I2C, you might add other slave devices. If you are a novice, we don't recommend this at all. · GPIOs 18-21 (Pins 12, 35, 38 and 40) are used for the sound interface. You can't use them for any other purpose. · GPIO 23 (Pin 16) is used for IR function. You can't use it for any other purpose. DACBerry ONE+ · GPIOs 2-3 (Pins 3, 5) are used by our products for configuration. If you are experienced with I2C, you might add other slave devices. If you are a novice, we don't recommend this at all. · GPIOs 18-21 (Pins 12, 35, 38 and 40) are used for the sound interface. You can't use them for any other purpose. · GPIO 22 (Pin 15) is used for Mute function. You can't use it for any other purpose. · GPIO 23 (Pin 16) is used for IR function. You can't use it for any other purpose. DACBerry PRO/PRO+ · GPIOs 2-3 (Pins 3, 5) are used by our products for configuration. If you are experienced with I2C, you might add other slave devices. If you are a novice, we don't recommend this at all. · GPIOs 14-15 (Pins 8,10) are used for MIDI interface. You can't use them for any other purpose. · GPIOs 18-21 (Pins 12, 35, 38 and 40) are used for the sound interface. You can't use them for any other purpose. · GPIO 22 (Pin 15) is used for Mute function. You can't use it for any other purpose. DACBerry RDY/RDY+ · GPIOs 2-3 (Pins 3, 5) are used by our products for configuration. If you are experienced with I2C, you might add other slave devices. If you are a novice, we don't recommend this at all. · GPIOs 18-21 (Pins 12, 35, 38 and 40) are used for the sound interface. You can't use them for any other purpose. · GPIO 23 (Pin 16) is used for IR function. You can't use it for any other purpose. Raspberry Pi GPIO layout For your reference, this image shows the GPIO layout for models listed: · Pi Zero & Pi Zero W · Pi 400 · Pi 4 Model B · Pi 3 Model B+ · Pi 3 Model B · Pi 2 Model B · Pi Model B+ · Pi Model A+