DSPRelated.com
Forums

Free or low-cost DSP tools for the hobbyist?

Started by nrclark February 22, 2008
Steve Underwood wrote:
> Ron N. wrote: >> On Feb 22, 7:06 am, Jim Thomas <jtho...@bittware.com> wrote: >>> nrclark wrote: >>>> I'm a college student interested in doing some hobby DSP. I've had some >>>> classes in DSP theory, but none of them actually went into the hardware >>>> and tools available out there for embedded DSP hobby projects. >>>> What is a good platform for a hobbyist to do fairly simple DSP sorts of >>>> things ... >>> A PC is actually pretty good for this. >> >> I you want to experience the hardware and tools side of DSP, >> using a modern PC will rarely expose issues involving limited >> memory footprint, available processor cycles, interrupt >> latency, how fast a particular algorithm drains the battery, >> low level driver or direct hardware interfaces, & etc.; as >> well as tools issues such as development/OS compatibility >> issues; minor, seemingly legal, source code changes which >> result in the code not compiling, or building with a 10X code >> bloat or performance hit, & etc. >> >> And, yes, I've done some of the above for self-education and >> hobby purposes, writing audio DSP software for some of my >> PalmOS handhelds (although demoing one random >> experiment to an acquaintance ended up leading to several >> business opportunities... Learn something new, and you >> never know when it might come in useful.) > > The problem with using a chip sold as a DSP for education is you learn > mostly throw away knowledge. DSP on a PC is about basic signal > processing. Knowledge that will last a lifetime - remember, most basic > analogue signal processing knowledge carried through pretty well into > the DSP era,. Basic knowledge has staying power. Compare that to what > you learn with a DSP kit. You learn a bit about how architectures are > crafted to do polynomials real quick. You might also learn a bit about > how problems need to be structured to exploit the parallelism of the > hardfware, especially for a VLIW machine. What you do mostly, though, is > spend time with the messy ins and outs of a chip that will be obsolete > before graduation. > > Chip specific knowledge is only worth learning the week before you start > your first application with that chip.
You're by and large right, but with a caveat. Everyone who programs a computer should deal with at least on machine at the "bare iron" level. It can be a DSP, a 16-bit microcontroller, or something similar. The recent message about converting binary to hexadecimal to satisfy the needs of an algorithm show the reason it's an essential apprentice exercise. Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
nrclark schrieb:

> What are some good, low-cost ways for me to do some simple 16-bit DSP > stuff? I'd really love to have a little box that I could arbitrarily > program to contain different filters. :)
Check out the freescale soundbite board. You get their DSP-board for just 150 bucks. Ideal for hobbyists. Only drawback is, that you're limited to audio processing. Nils
On Feb 22, 7:09 pm, Steve Underwood <ste...@dis.org> wrote:
> Ron N. wrote: > > On Feb 22, 7:06 am, Jim Thomas <jtho...@bittware.com> wrote: > >> nrclark wrote: > >>> I'm a college student interested in doing some hobby DSP. I've had some > >>> classes in DSP theory, but none of them actually went into the hardware > >>> and tools available out there for embedded DSP hobby projects. > >>> What is a good platform for a hobbyist to do fairly simple DSP sorts of > >>> things ... > >> A PC is actually pretty good for this. > > > If you want to experience the hardware and tools side of DSP, > > using a modern PC will rarely expose issues involving limited > > memory footprint, available processor cycles, interrupt > > latency, how fast a particular algorithm drains the battery, > > low level driver or direct hardware interfaces, & etc.; as > > well as tools issues such as development/OS compatibility > > issues; minor, seemingly legal, source code changes which > > result in the code not compiling, or building with a 10X code > > bloat or performance hit, & etc.
...
> The problem with using a chip sold as a DSP for education is you learn > mostly throw away knowledge.
I agree. A lot of it will be throw away knowledge. But, to some degree, the experiences of having dealt with systems and tools far more constrained than a modern PC, and with many fewer layers of abstraction between you and the bits, are what allow you to do the following well in only a week:
> Chip specific knowledge is only worth learning the week before you start > your first application with that chip.
IMHO. YMMV. -- rhn A.T nicholson d.0.t C-o-M
"Ron N." <rhnlogic@yahoo.com> writes:

> On Feb 22, 7:06 am, Jim Thomas <jtho...@bittware.com> wrote: >> nrclark wrote: >> > I'm a college student interested in doing some hobby DSP. I've had some >> > classes in DSP theory, but none of them actually went into the hardware >> > and tools available out there for embedded DSP hobby projects. >> >> > What is a good platform for a hobbyist to do fairly simple DSP sorts of >> > things ... >> >> A PC is actually pretty good for this. > > I you want to experience the hardware and tools side of DSP, > using a modern PC will rarely expose issues involving limited > memory footprint, available processor cycles, interrupt > latency, how fast a particular algorithm drains the battery, > low level driver or direct hardware interfaces, & etc.; as > well as tools issues such as development/OS compatibility > issues; minor, seemingly legal, source code changes which > result in the code not compiling, or building with a 10X code > bloat or performance hit, & etc.
I agree that those types of lessons are valuable and not available under a PC environment. However, for someone who may be implementing a DSP algorithm for the first time in a language like C (as opposed to Matlab), it makes sense to limit the scope and difficulty of the task by using a PC environment in order to first gain some confidence in the fundamental implementation before tackling the more advanced problems you described. -- % Randy Yates % "Rollin' and riding and slippin' and %% Fuquay-Varina, NC % sliding, it's magic." %%% 919-577-9882 % %%%% <yates@ieee.org> % 'Living' Thing', *A New World Record*, ELO http://www.digitalsignallabs.com
On Sat, 23 Feb 2008 11:09:05 +0800, Steve Underwood <steveu@dis.org>
wrote:

  (snipped by Lyons)
> >The problem with using a chip sold as a DSP for education is you learn >mostly throw away knowledge. DSP on a PC is about basic signal >processing. Knowledge that will last a lifetime - remember, most basic >analogue signal processing knowledge carried through pretty well into >the DSP era,. Basic knowledge has staying power. Compare that to what >you learn with a DSP kit. You learn a bit about how architectures are >crafted to do polynomials real quick.
Hi Steve, Your words "Basic knowledge has staying power" sound to me like a universal truth. Neat! [-Rick-]
I appreciate everybody's feedback here. I'm not a novice to analog signal
processing or to DSP algorithms (implemented in MATLAB), but I've been
looking to get more nitty-gritty experience, and a small board is more
along the lines of my desired challenge than just writing C on a PC.
Especially considering how much of a time investment there would be in
learning soundcard driver syntax, which I don't know at all.

It's good to know that the Analog Devices kits don't expire after 90 days.


This Freescale kit looks like it might be right up my alley! Nils, have
you ever used one? How is it to program? Would you say it's "typical" of
the kind of hardware and software environment I might use professionally
in the future? How useful are the tools? Are they free? I see that they're
based on open-source software which is appealing to me if I were to ever
open a "garage shop" down the road.



>nrclark schrieb: > >> What are some good, low-cost ways for me to do some simple 16-bit DSP >> stuff? I'd really love to have a little box that I could arbitrarily >> program to contain different filters. :) > >Check out the freescale soundbite board. You get their DSP-board for >just 150 bucks. Ideal for hobbyists. Only drawback is, that you're >limited to audio processing. > > Nils > > > >
nrclark schrieb:

> This Freescale kit looks like it might be right up my alley! Nils, have > you ever used one? How is it to program? Would you say it's "typical" of > the kind of hardware and software environment I might use professionally > in the future? How useful are the tools? Are they free? I see that they're > based on open-source software which is appealing to me if I were to ever > open a "garage shop" down the road.
I haven't used it myself, but I know a lot of audio and synth diy hobbyists who bought such a kit over the last two month and are tinkering around with it. I had a brief look at the DSP, and it has most of the ingredients that separates it from a general purpose CPU. The DSP is a special purpose one and aimed at audio, so it is a bit more constrained than the big general purpose DSP's. However, the devkit costs a *lot* less than what you pay for a TI DM6446 devkit for example (that's the one I work on at work). The compiler is - as far as I know - a modified GCC compiler, and as a GPL software free. The DSP is used in the Line6 Tonecore guitar stompbox modules btw. They have a little development kit as well. Costs a bit more but it's in the same ballpark. I'd say: go for it, make yourself familiar with the DSP, build something impressive with it and you will have a *great* door-opener if you want to get a job as an embedded programmer one day.
"Rick Lyons" <R.Lyons@_BOGUS_ieee.org> wrote in message 
news:cah1s3l1phrmphogvlpgejsghl0blbigdf@4ax.com...
> On Sat, 23 Feb 2008 11:09:05 +0800, Steve Underwood <steveu@dis.org> > wrote: > > (snipped by Lyons) >> >>The problem with using a chip sold as a DSP for education is you learn >>mostly throw away knowledge. DSP on a PC is about basic signal >>processing. Knowledge that will last a lifetime - remember, most basic >>analogue signal processing knowledge carried through pretty well into >>the DSP era,. Basic knowledge has staying power. Compare that to what >>you learn with a DSP kit. You learn a bit about how architectures are >>crafted to do polynomials real quick. > > > Hi Steve, > Your words "Basic knowledge has staying power" > sound to me like a universal truth. Neat! > > [-Rick-] > >
FORTRAN knowledge also... ;-) --Phil Martel
On Feb 22, 7:09&#4294967295;pm, Steve Underwood <ste...@dis.org> wrote:
> Ron N. wrote: > > On Feb 22, 7:06 am, Jim Thomas <jtho...@bittware.com> wrote: > >> nrclark wrote: > >>> I'm a college student interested in doing some hobby DSP. I've had some > >>> classes in DSP theory, but none of them actually went into the hardware > >>> and tools available out there for embedded DSP hobby projects. > >>> What is a good platform for a hobbyist to do fairly simple DSP sorts of > >>> things ... > >> A PC is actually pretty good for this. > > > I you want to experience the hardware and tools side of DSP, > > using a modern PC will rarely expose issues involving limited > > memory footprint, available processor cycles, interrupt > > latency, how fast a particular algorithm drains the battery, > > low level driver or direct hardware interfaces, & etc.; as > > well as tools issues such as development/OS compatibility > > issues; minor, seemingly legal, source code changes which > > result in the code not compiling, or building with a 10X code > > bloat or performance hit, & etc. > > > And, yes, I've done some of the above for self-education and > > hobby purposes, writing audio DSP software for some of my > > PalmOS handhelds (although demoing one random > > experiment to an acquaintance ended up leading to several > > business opportunities... &#4294967295;Learn something new, and you > > never know when it might come in useful.) > > The problem with using a chip sold as a DSP for education is you learn > mostly throw away knowledge. DSP on a PC is about basic signal > processing. Knowledge that will last a lifetime - remember, most basic > analogue signal processing knowledge carried through pretty well into > the DSP era,. Basic knowledge has staying power. Compare that to what > you learn with a DSP kit. You learn a bit about how architectures are > crafted to do polynomials real quick. You might also learn a bit about > how problems need to be structured to exploit the parallelism of the > hardfware, especially for a VLIW machine. What you do mostly, though, is > spend time with the messy ins and outs of a chip that will be obsolete > before graduation. > > Chip specific knowledge is only worth learning the week before you start > &#4294967295; your first application with that chip. > > Steve- Hide quoted text - > > - Show quoted text -
There's probabaly a 10000 to one ratio of people who know basic signal theory vs someone who can build a small DSP board with, say a gyro, and tape it to a football and process and display it's motion in a meaningful way. That type of knowledge is priceless.
steve wrote:
> On Feb 22, 7:09 pm, Steve Underwood <ste...@dis.org> wrote: >> Ron N. wrote: >>> On Feb 22, 7:06 am, Jim Thomas <jtho...@bittware.com> wrote: >>>> nrclark wrote: >>>>> I'm a college student interested in doing some hobby DSP. I've had some >>>>> classes in DSP theory, but none of them actually went into the hardware >>>>> and tools available out there for embedded DSP hobby projects. >>>>> What is a good platform for a hobbyist to do fairly simple DSP sorts of >>>>> things ... >>>> A PC is actually pretty good for this. >>> I you want to experience the hardware and tools side of DSP, >>> using a modern PC will rarely expose issues involving limited >>> memory footprint, available processor cycles, interrupt >>> latency, how fast a particular algorithm drains the battery, >>> low level driver or direct hardware interfaces, & etc.; as >>> well as tools issues such as development/OS compatibility >>> issues; minor, seemingly legal, source code changes which >>> result in the code not compiling, or building with a 10X code >>> bloat or performance hit, & etc. >>> And, yes, I've done some of the above for self-education and >>> hobby purposes, writing audio DSP software for some of my >>> PalmOS handhelds (although demoing one random >>> experiment to an acquaintance ended up leading to several >>> business opportunities... Learn something new, and you >>> never know when it might come in useful.) >> The problem with using a chip sold as a DSP for education is you learn >> mostly throw away knowledge. DSP on a PC is about basic signal >> processing. Knowledge that will last a lifetime - remember, most basic >> analogue signal processing knowledge carried through pretty well into >> the DSP era,. Basic knowledge has staying power. Compare that to what >> you learn with a DSP kit. You learn a bit about how architectures are >> crafted to do polynomials real quick. You might also learn a bit about >> how problems need to be structured to exploit the parallelism of the >> hardfware, especially for a VLIW machine. What you do mostly, though, is >> spend time with the messy ins and outs of a chip that will be obsolete >> before graduation. >> >> Chip specific knowledge is only worth learning the week before you start >> your first application with that chip. >> >> Steve- Hide quoted text - >> >> - Show quoted text - > > There's probabaly a 10000 to one ratio of people who know basic signal > theory vs someone who can build a small DSP board with, say a gyro, > and tape it to a football and process and display it's motion in a > meaningful way. That type of knowledge is priceless.
There is probably a 10000:1 ratio between the number of people who can quote you a few concepts from their college course on DSP, and those who can build a real physical system. However, its pretty much the same ratio between those who can quote the course and those that put together a real working application on a PC. Its real ability that is priceless. Steve