Difference between revisions of "BBB Audio Cape RevB Getting Started"
(play and record audio) |
m |
||
Line 1: | Line 1: | ||
− | This guide is intended to walk through the basic instructions on how to get your Audio Cape working. If you have any question, please email support@circuitco.com. | + | This guide is intended to walk through the basic instructions on how to get your Audio Cape working. If you have any question, please email [mailto:support@circuitco.com support@circuitco.com]. |
Line 7: | Line 7: | ||
− | The instructions below are performed | + | The instructions below are performed under following kernel and may vary for different kernel versions. |
<code> | <code> | ||
root@beaglebone:~# uname -a | root@beaglebone:~# uname -a |
Revision as of 12:01, 16 May 2014
This guide is intended to walk through the basic instructions on how to get your Audio Cape working. If you have any question, please email support@circuitco.com.
To purchase the Audio Cape please visit BoardZoo.com
To purchase the BeagleBone Black please visit BeagleBoard.org
The instructions below are performed under following kernel and may vary for different kernel versions.
root@beaglebone:~# uname -a
Linux beaglebone 3.8.13-bone47 #1 SMP Fri Apr 11 01:36:09 UTC 2014 armv7l GNU/Linux
Contents
Load the device tree file
Ensure your BBB is connected to the internet. Download the provided device tree file and decompress it. You may end up doing something like this:
root@beaglebone:~# wget http://elinux.org/images/1/10/BB-BONE-AUDI-02-00A0.zip
root@beaglebone:~# unzip BB-BONE-AUDI-02-00A0.zip
If you don't have unzip installed. Run as root:
root@beaglebone:~# apt-get update
root@beaglebone:~# apt-get install unzip
Compile the device tree file and move it to /lib/firmware:
root@beaglebone:~# dtc -O dtb -o BB-BONE-AUDI-02-00A0.dtbo -b 0 -@ BB-BONE-AUDI-02-00A0.dts
root@beaglebone:~# mv BB-BONE-AUDI-02-00A0.dtbo /lib/firmware
Since this Audio Cape uses the same audio signal from the onboard HDMI interface, you need to disable the audio portion of the HDMI by edit the uEnv.txt at /boot/uboot. Add this line to the uEnv.txt file:
optargs=capemgr.disable_partno=BB-BONELT-HDMI
Reboot your BBB. Log in and check the capemgr:
root@beaglebone:~# cat /sys/devices/bone_capemgr*/slots
0: 54:PF---
1: 55:PF---
2: 56:PF---
3: 57:PF---
4: ff:P-O-L Bone-LT-eMMC-2G,00A0,Texas Instrument,BB-BONE-EMMC-2G
5: ff:P-O-- Bone-Black-HDMI,00A0,Texas Instrument,BB-BONELT-HDMI
6: ff:P-O-L Bone-Black-HDMIN,00A0,Texas Instrument,BB-BONELT-HDMIN
Note that the "virtual cape" BB-BONELT-HDMIN is loaded instead of the BB-BONELT-HDMI. The difference between the two "capes" is that the BB-BONELT-HDMIN does not include the audio portion. Now load the DT file for Audio Cape:
root@beaglebone:~# echo BB-BONE-AUDI-02 > /sys/devices/bone_capemgr*/slots
root@beaglebone:~# cat /sys/devices/bone_capemgr*/slots
0: 54:PF---
1: 55:PF---
2: 56:PF---
3: 57:PF---
4: ff:P-O-L Bone-LT-eMMC-2G,00A0,Texas Instrument,BB-BONE-EMMC-2G
5: ff:P-O-- Bone-Black-HDMI,00A0,Texas Instrument,BB-BONELT-HDMI
6: ff:P-O-L Bone-Black-HDMIN,00A0,Texas Instrument,BB-BONELT-HDMIN
7: ff:P-O-L Override Board Name,00A0,Override Manuf,BB-BONE-AUDI-02
The Audio Cape is now loaded.
Play Audio Files
Before playing an audio file, you may need to set the volume and configuration of the codec. Download the asound.state file to /etc/var/alsa.
root@beaglebone:~# cd /var/lib/alsa
root@beaglebone:~# wget https://raw.githubusercontent.com/CircuitCo/BeagleBone-Audio/files/asound.state
You may need to reboot your BBB (and load the Audio Cape DT file again if required).
Play a WAVE file
To play a WAVE file (say sample.wav), run:
root@beaglebone:~# aplay sample.wav
Record an audio input
To record an audio input, you can use a male-to-male audio cable to connect from an audio source (phone, lapotp, etc) to the audio input connector on the Audio Cape. Run the command below
root@beaglebone:~# arecord -r 441000 -f S16_LE input.wav
Play the recorded file:
root@beaglebone:~# aplay input.wav