Discussion:
Getting started with DSP programming on the beagleboard xm
nick
2013-02-09 18:48:17 UTC
Permalink
Hi everyone,

I am new to the beagleboard xm and would like to start doing DSP
programming on it. I have successfully installed a minimal ubuntu 12.10
with a kernel that has the DSP bridge driver enabled. I have my own audio C
code that I wrote to run on a Linux box with ALSA and I am familiar with
general TI assembly. I would like to do a number of things:

1. Install ALSA on my beagleboard XM and have it control the sound system
Is this just "sudo apt-get install alsa" ? Or is there more to the story
2. Write a simple FIR filter function in TI assembly and run it on the
beagleboard. The idea is to for example speak into a microphone and have
all audio above 2KHZ filtered and the filtered signal fed out to speakers
connected to the beagleboard xm. This is trivial in C on a normal Linux
box. But how do I do it on the beagleboard xm. I understand some kind of
IPC has to happen between the code running on the ARM chip and that on the
DSP.
-What tools do I need to compile the above
-Are there any examples of how to code the C64 chip on the beagleboard
xm and have it communicate with a thread on the ARM core?

Thanks

Nick
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
For more options, visit https://groups.google.com/groups/opt_out.
kli
2013-02-10 15:51:46 UTC
Permalink
Hy Nick

I dont work with Ubuntu on my BeagleBoard so i am not quite sure which alsa
packages you need but i guess that you will need to install alsa-base and
alsa-utils

*sudo apt-get install alsa-base alsa-utils*
*
*
check whether there is the alsa device with
*
*
*aplay -l*
*
*
and you should get something like
*
*
***** List of PLAYBACK Hardware Devices ****
card 0: omap3beagle [omap3beagle], device 0: TWL4030 twl4030-0 []
Subdevices: 1/1
Subdevice #0: subdevice #
*
*
*
now you can test alsa with

*aplay -vv someFile.wav*
*
*
*If there is no sound maybe some channels are muted or the level is very
low and you can adjust it with *
*
*
*alsamixer*
*
*
*
*
*A simple FIR filter should be able to be implemented in an ALSA
application on the ARM only. Maybe also the NEON Data Engine could be
interesting for you as it would gain performance and avoid the IPC between
the ARM and the DSP.*

An easy way to use the DSP on the BeagleBoard is to use the C6EZ tools (
http://processors.wiki.ti.com/index.php/C6EZ_Tools) which are included in
the DVSDK from TI (http://processors.wiki.ti.com/index.php/DVSDK_4.x_FAQ).
In the DVSDK you find several examples of how to work with the various
frameworks.
The package manager in Angstrom has support for several TI packages but i
donŽt know about ubuntu.

*There exist also support for developing with MATLAB but as far as i know
it works on the ARM only.*

I could send you a paper (BSc) which i wrote about that topic, but it is
also my first experience and for sure not perfect.


regards
Wendelin

*
*
*
*
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
For more options, visit https://groups.google.com/groups/opt_out.
n***@public.gmane.org
2013-02-11 13:40:22 UTC
Permalink
Thanks for the reply Wendelin. I actually want to do the whole 9 yards ie
IPC between the arm and the DSP. This way I will get more control over what
exactly I am doing with the DSP.

Let me check out the links you sent me. And yes, I would appreciate being
able to see what you did for your project.
Post by kli
Hy Nick
I dont work with Ubuntu on my BeagleBoard so i am not quite sure which
alsa packages you need but i guess that you will need to install alsa-base
and alsa-utils
*sudo apt-get install alsa-base alsa-utils*
*
*
check whether there is the alsa device with
*
*
*aplay -l*
*
*
and you should get something like
*
*
***** List of PLAYBACK Hardware Devices ****
card 0: omap3beagle [omap3beagle], device 0: TWL4030 twl4030-0 []
Subdevices: 1/1
Subdevice #0: subdevice #
*
*
*
now you can test alsa with
*aplay -vv someFile.wav*
*
*
*If there is no sound maybe some channels are muted or the level is very
low and you can adjust it with *
*
*
*alsamixer*
*
*
*
*
*A simple FIR filter should be able to be implemented in an ALSA
application on the ARM only. Maybe also the NEON Data Engine could be
interesting for you as it would gain performance and avoid the IPC between
the ARM and the DSP.*
An easy way to use the DSP on the BeagleBoard is to use the C6EZ tools (
http://processors.wiki.ti.com/index.php/C6EZ_Tools) which are included in
the DVSDK from TI (http://processors.wiki.ti.com/index.php/DVSDK_4.x_FAQ).
In the DVSDK you find several examples of how to work with the various
frameworks.
The package manager in Angstrom has support for several TI packages but i
donŽt know about ubuntu.
*There exist also support for developing with MATLAB but as far as i know
it works on the ARM only.*
I could send you a paper (BSc) which i wrote about that topic, but it is
also my first experience and for sure not perfect.
regards
Wendelin
*
*
*
*
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
For more options, visit https://groups.google.com/groups/opt_out.
kli
2013-02-14 14:02:28 UTC
Permalink
Well i donŽt know whether there is some kind of copy-right from the
university on my thesis so i would prefer to send it by e-mail but i could
not find your address in the forum. You can contact me on
wklimann-***@public.gmane.org

regards
wendelin
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
For more options, visit https://groups.google.com/groups/opt_out.
bizulk
2013-02-14 14:51:33 UTC
Permalink
Depending on what you're expecting from the dsp you may consider the
gst-dsp project.
Regards,
Selso.
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
For more options, visit https://groups.google.com/groups/opt_out.
Dan Lopez
2013-02-14 17:16:57 UTC
Permalink
Check this:

http://elinux.org/EBC_Exercise_18_Using_the_DSP_for_Audio_Processing

You might want to look at the course chapters for more info, downloads...
etc.

http://elinux.org/ECE497_Calendar_and_Exercises

Regards,
Daniel
Post by nick
Hi everyone,
I am new to the beagleboard xm and would like to start doing DSP
programming on it. I have successfully installed a minimal ubuntu 12.10
with a kernel that has the DSP bridge driver enabled. I have my own audio C
code that I wrote to run on a Linux box with ALSA and I am familiar with
1. Install ALSA on my beagleboard XM and have it control the sound system
Is this just "sudo apt-get install alsa" ? Or is there more to the story
2. Write a simple FIR filter function in TI assembly and run it on the
beagleboard. The idea is to for example speak into a microphone and have
all audio above 2KHZ filtered and the filtered signal fed out to speakers
connected to the beagleboard xm. This is trivial in C on a normal Linux
box. But how do I do it on the beagleboard xm. I understand some kind of
IPC has to happen between the code running on the ARM chip and that on the
DSP.
-What tools do I need to compile the above
-Are there any examples of how to code the C64 chip on the
beagleboard xm and have it communicate with a thread on the ARM core?
Thanks
Nick
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
For more options, visit https://groups.google.com/groups/opt_out.
Mark A. Yoder
2013-02-15 16:56:52 UTC
Permalink
Also check out [1]. It gives the big picture.

--Mark

[1] http://elinux.org/Category:ECE497
Post by Dan Lopez
http://elinux.org/EBC_Exercise_18_Using_the_DSP_for_Audio_Processing
You might want to look at the course chapters for more info, downloads...
etc.
http://elinux.org/ECE497_Calendar_and_Exercises
Regards,
Daniel
Post by nick
Hi everyone,
I am new to the beagleboard xm and would like to start doing DSP
programming on it. I have successfully installed a minimal ubuntu 12.10
with a kernel that has the DSP bridge driver enabled. I have my own audio C
code that I wrote to run on a Linux box with ALSA and I am familiar with
1. Install ALSA on my beagleboard XM and have it control the sound system
Is this just "sudo apt-get install alsa" ? Or is there more to the story
2. Write a simple FIR filter function in TI assembly and run it on the
beagleboard. The idea is to for example speak into a microphone and have
all audio above 2KHZ filtered and the filtered signal fed out to speakers
connected to the beagleboard xm. This is trivial in C on a normal Linux
box. But how do I do it on the beagleboard xm. I understand some kind of
IPC has to happen between the code running on the ARM chip and that on the
DSP.
-What tools do I need to compile the above
-Are there any examples of how to code the C64 chip on the
beagleboard xm and have it communicate with a thread on the ARM core?
Thanks
Nick
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
For more options, visit https://groups.google.com/groups/opt_out.
Nick Othieno
2013-02-19 01:20:08 UTC
Permalink
Thank you everyone. Mark's lectures on the beagleboard proved very
enlightening. I have decided to take that direction.

@Mark: Network interfaces do not seem to be working with the Angstrom image
from your site. Is it a problem with how the kernel was compiled?

Nick
Post by Mark A. Yoder
Also check out [1]. It gives the big picture.
--Mark
[1] http://elinux.org/Category:ECE497
Post by Dan Lopez
http://elinux.org/EBC_Exercise_18_Using_the_DSP_for_Audio_Processing
You might want to look at the course chapters for more info, downloads...
etc.
http://elinux.org/ECE497_Calendar_and_Exercises
Regards,
Daniel
Post by nick
Hi everyone,
I am new to the beagleboard xm and would like to start doing DSP
programming on it. I have successfully installed a minimal ubuntu 12.10
with a kernel that has the DSP bridge driver enabled. I have my own audio C
code that I wrote to run on a Linux box with ALSA and I am familiar with
1. Install ALSA on my beagleboard XM and have it control the sound
system Is this just "sudo apt-get install alsa" ? Or is there more to the
story
2. Write a simple FIR filter function in TI assembly and run it on the
beagleboard. The idea is to for example speak into a microphone and have
all audio above 2KHZ filtered and the filtered signal fed out to speakers
connected to the beagleboard xm. This is trivial in C on a normal Linux
box. But how do I do it on the beagleboard xm. I understand some kind of
IPC has to happen between the code running on the ARM chip and that on the
DSP.
-What tools do I need to compile the above
-Are there any examples of how to code the C64 chip on the
beagleboard xm and have it communicate with a thread on the ARM core?
Thanks
Nick
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
For more options, visit https://groups.google.com/groups/opt_out.
Nirav shah
2013-04-03 04:54:09 UTC
Permalink
i am working on beagleboard rev -c . I have installed ubuntu on it. I have
a webcam microsoft VX -5000 connected to it.

I can successfully capture an image using the webcam and send it across but
i am unable to record audio. I can see the webcam as input device when i do
arecord -l

I use the arecord command and the a .wav file is created . Just when i try
to play that file in a player (vlc) . there is no sound.
Post by nick
Hi everyone,
I am new to the beagleboard xm and would like to start doing DSP
programming on it. I have successfully installed a minimal ubuntu 12.10
with a kernel that has the DSP bridge driver enabled. I have my own audio C
code that I wrote to run on a Linux box with ALSA and I am familiar with
1. Install ALSA on my beagleboard XM and have it control the sound system
Is this just "sudo apt-get install alsa" ? Or is there more to the story
2. Write a simple FIR filter function in TI assembly and run it on the
beagleboard. The idea is to for example speak into a microphone and have
all audio above 2KHZ filtered and the filtered signal fed out to speakers
connected to the beagleboard xm. This is trivial in C on a normal Linux
box. But how do I do it on the beagleboard xm. I understand some kind of
IPC has to happen between the code running on the ARM chip and that on the
DSP.
-What tools do I need to compile the above
-Are there any examples of how to code the C64 chip on the
beagleboard xm and have it communicate with a thread on the ARM core?
Thanks
Nick
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
For more options, visit https://groups.google.com/groups/opt_out.
l***@public.gmane.org
2013-04-11 12:51:06 UTC
Permalink
Did any of you ever tried to access the Beagleboards DSP via Simulink or
Matlab Embedded Coder? I have the Beagleboard Simulink Support Package
installed and I can already run a Modell on the board and do have real time
access to variables and signal scopes. The only problem is that the code is
run on the ARM instead of the DSP which is kind of against my Bachelor
Thesis Conditions.

Any help would be highly appreciated!

Regards,

Lenni
--
For more options, visit http://beagleboard.org/discuss
---
You received this message because you are subscribed to the Google Groups "BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/***@public.gmane.org
For more options, visit https://groups.google.com/groups/opt_out.
Loading...