Audio Cape and Debian

I know little of linux and not that up on audio, but in the process of building an app that uses both. (Java app that works fine in windows).

I just bought the audio cape and a bit surprised at the lack of any docs or links to how-to. In fact, not really sure which is the mic in and headphone out.

I’m sure this thing works, but not sure what I need to do to get it working.

Ive tried aplay, alsa, alsamixer and nothing seems to know the board is present. Using debian for the beagle board

Is there some kind of configuration that is needed to make this work? Or, is there any docs for this board (Rev B) that explain what needs to be done?

Appreciate any help.

aplay -vv file.wav Seems to do something, but no audio from either of the ports.

thx

e

I know little of linux and not that up on audio, but in the process of building an app that uses both. (Java app that works fine in windows).

I just bought the audio cape and a bit surprised at the lack of any docs or links to how-to. In fact, not really sure which is the mic in and headphone out.

I’m sure this thing works, but not sure what I need to do to get it working.

Ive tried aplay, alsa, alsamixer and nothing seems to know the board is present. Using debian for the beagle board

Is there some kind of configuration that is needed to make this work? Or, is there any docs for this board (Rev B) that explain what needs to be done?

Appreciate any help.

aplay -vv file.wav Seems to do something, but no audio from either of the ports.

What kernel version are you using?

You need to install the Audio Device Tree
BB-BONE-AUDI-02-00A0.dts

You will find that here
http://elinux.org/CircuitCo:Audio_Cape_RevB

Regards,
John

I appreciate the response - but how in the world do you install a device tree? Been searching all over the place and find billions of references to how to compile one, but struggling with what to do with the one that is already compiled.

Also - the very limited docs seem to indicate this is already installed

The current Debian images have the required patches and will play audio normally.

there are zero other docs to help someone that just wants to use this rather than become a linux guru.

I appreciate the response - but how in the world do you install a device tree? Been searching all over the place and find billions of references to how to compile one, but struggling with what to do with the one that is already compiled.

Also - the very limited docs seem to indicate this is already installed

The current Debian images have the required patches and will play audio normally.

there are zero other docs to help someone that just wants to use this rather than become a linux guru.

Since you did not specify your kernel version, it is hard to respond. However, assuming you are using V3.8.13, do the following:

Make sure the compiled BB-BONE-AUDI-02-00A0.dtbo file is installed under the /firmware folder

export SLOTS=/sys/devices/bone_capemgr.*/slots
echo BB-BONE-AUDI-02 > $SLOTS

If you want to enable the Audio DT permanently, add it to your uEnv.txt file.

Regards,
John

getting closer but not quite there.

To get the version information lsb_release -a return

`
root@beaglebone:~# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 7.4 (wheezy)
Release: 7.4
Codename: wheezy

`

Step 1 copy the audio device tree overlay (source) to /lib/firmware
Step 2 copile the device tree overlay - good instructions here https://learn.adafruit.com/introduction-to-the-beaglebone-black-device-tree?view=all#compiling-an-overlay
dtc -O dtb -o BB-BONE-AUDI-02-00A0.dtbo -b 0 -@ BB-BONE-AUDI-02-00A0.dts

Step 3 export SLOTS=/sys/devices/bone_capemgr.*/slots
echo BB-BONE-AUDI-02 > $SLOTS
This will produce an error
-bash: echo: write error: File exists

issue the command “dmesg” to see what kind of error this causes

`
666.089997] bone-capemgr bone_capemgr.9: slot #7: ‘Override Board Name,00A0,Override Manuf,BB-BONE-AUDI-02’
[ 666.090265] bone-capemgr bone_capemgr.9: slot #7: Requesting part number/version based 'BB-BONE-AUDI-02-00A0.dtbo
[ 666.090319] bone-capemgr bone_capemgr.9: slot #7: Requesting firmware ‘BB-BONE-AUDI-02-00A0.dtbo’ for board-name ‘Override Board Name’, version ‘00A0’
[ 666.097465] bone-capemgr bone_capemgr.9: slot #7: dtbo ‘BB-BONE-AUDI-02-00A0.dtbo’ loaded; converting to live tree
[ 666.098183] bone-capemgr bone_capemgr.9: slot #7: BB-BONE-AUDI-02 conflict P9.31 (#5:BB-BONELT-HDMI)
[ 666.107973] bone-capemgr bone_capemgr.9: slot #7: Failed verification

`

This error state there is a conflict with BB-BONELT-HDMI

need to disable that

nano /boot/uboot/uEnv.txt
optargs=capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN

Remove the # from in front of this line

Audio now works

BUT

The sd card is no longer there.

What I would really like is for the SD card AND audio to work.

Again - thanks for the help,

getting closer but not quite there.

To get the version information lsb_release -a return

`
root@beaglebone:~# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 7.4 (wheezy)
Release: 7.4
Codename: wheezy

`

Step 1 copy the audio device tree overlay (source) to /lib/firmware
Step 2 copile the device tree overlay - good instructions here https://learn.adafruit.com/introduction-to-the-beaglebone-black-device-tree?view=all#compiling-an-overlay
dtc -O dtb -o BB-BONE-AUDI-02-00A0.dtbo -b 0 -@ BB-BONE-AUDI-02-00A0.dts

Step 3 export SLOTS=/sys/devices/bone_capemgr.*/slots
echo BB-BONE-AUDI-02 > $SLOTS
This will produce an error
-bash: echo: write error: File exists

issue the command “dmesg” to see what kind of error this causes

`
666.089997] bone-capemgr bone_capemgr.9: slot #7: ‘Override Board Name,00A0,Override Manuf,BB-BONE-AUDI-02’
[ 666.090265] bone-capemgr bone_capemgr.9: slot #7: Requesting part number/version based 'BB-BONE-AUDI-02-00A0.dtbo
[ 666.090319] bone-capemgr bone_capemgr.9: slot #7: Requesting firmware ‘BB-BONE-AUDI-02-00A0.dtbo’ for board-name ‘Override Board Name’, version ‘00A0’
[ 666.097465] bone-capemgr bone_capemgr.9: slot #7: dtbo ‘BB-BONE-AUDI-02-00A0.dtbo’ loaded; converting to live tree
[ 666.098183] bone-capemgr bone_capemgr.9: slot #7: BB-BONE-AUDI-02 conflict P9.31 (#5:BB-BONELT-HDMI)
[ 666.107973] bone-capemgr bone_capemgr.9: slot #7: Failed verification

`

This error state there is a conflict with BB-BONELT-HDMI

need to disable that

nano /boot/uboot/uEnv.txt
optargs=capemgr.disable_partno=BB-BONELT-HDMI,BB-BONELT-HDMIN

Remove the # from in front of this line

Audio now works

BUT

The sd card is no longer there.

What I would really like is for the SD card AND audio to work.

BTW, you only need to disable BB-BONELT-HDMI. BB-BONELT-HDMIN will not conflict with your audio cape. I can only imagine that you must have some typo in uEnv.txt, because nothing you did will affect the SDCard. Maybe you should recreate your SDCard and update the uEnv.txt file on the boot partition of the SDCard.

Regards,
John

Well, what ever I did, I fixed when I only disabled BB-BONELT-HDM (rather than both).

Things are working well now. Thanks so much for the help.

Hi,

where did you buy it? How much did it cost?

Cheers

I got mine from http://boardzoo.com/index.php/new-products/bone-audio.html#.U2_-VFd7_uw boardzoo.com Cost $29.95

Few other notes:

I will likely need to modify this board to include an audio amp to drive a speaker and an on-board mic.

I tried to play audio directly from Java - don’t think it’s gonna work without some indepth knowledge of the Linux and the Java audio. My most likely solution will be to simply execute an external program (most likely madplay).
aplay will only play wav files, I would rather use mp3 due to space.

I’ve installed maplay using

apt-get install madplay
(i’ve tried mpg123 - but didn’t seem to work and did not want to fight that battle

Good luck. I know very little of Linux, so this was a bit frustrating form me, I hope my notes help
I’m not entirely sure yet, but think I will execute (from Java) lame to record.

I got mine from http://boardzoo.com/index.php/new-products/bone-audio.html#.U2_-VFd7_uw boardzoo.com Cost $29.95

Few other notes:

I will likely need to modify this board to include an audio amp to drive a speaker and an on-board mic.

Use amixer to modify the volume. Start with arecord and aplay to confirm that your audio is working before using java.

If you have a microphone, play music from say your iPhone or Android device.
arecord -r 44100 -c 1 -f S16_LE -t wav -vv -d 25 example.wav
aplay example.wav

Regards,
John