I would like to see DSPdap with an AVR32 instead of Texas DSP, because It have a GCC compiler version (I think that Texas DSP don't have a GCC port, right?!! - after I would like to have RockBox for it :-)
Had you thought in having RockBox for DSPdap instead of write your software?
Please see this message at RockBOx forum to read more about my idea.
Thank you for sharing you work ;-) :-)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The essence of the DSPdap project is to build your own DSP based hardware and software for a digital audio player.
But now-a-days the general uCs are becoming powerful enough to do audio/video processing in software. so building an open source player using such uCs makes sense.
Rockbox is a great project. Aren't there any open sourced hardware players supporting Rockbox?
-Roger.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
"But now-a-days the general uCs are becoming powerful enough to do audio/video processing in software. so building an open source player using such uCs makes sense." -> yes, It makes sense but software becomes to complex! In my opinion, It's a bad option to make such complex software alone, we should work together.
"Rockbox is a great project. Aren't there any open sourced hardware players supporting Rockbox?" -> No :-( - but a Open player like DSPdap could be working with Rockbox, no?
Why did you chose a TI dsp? because of the samples? I prepfer to pay for an AVR and have free/open tools, that works on linux, for example.
What tools do you use for TMS320VC5507?
"The essence of the DSPdap project is to build your own DSP based hardware and software for a digital audio player." I am looking for a Open hardware player for RockBox, because RockBox plays MP3, FLAC, OGG, etc... looks to me that DSPdap is limited for MP3, maybe because you alone can't coding all that is needed for FLAC and others...
What about a plastic case for DSPdap? and any online store for assembly kit? or all player already assembled?
This is just my thoughts.
Good luck for DSPdap ;-) :-)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
->"yes, It makes sense but software becomes to complex! In my opinion, It's a bad option to make such complex software alone, we should work together."
Definitely, we should work together. ;-) We should now be looking at selecting the right processor for the next version of DSPdap and freeze it's functional specs. The current version lacks an LCD display.
->"a Open player like DSPdap could be working with Rockbox, no?"
we will need to evaluate this. i haven't gone through Rockbox in detail but can you help me with the following points
-Do Rockbox codec impementations use only fixed point math?
-Is Rockbox codec implementation purely in C or is it assembly optimized for any particular processor?
-What kernel does Rockbox use?
-Is there a well defined device driver architecture in the Rockbox kernel so that we can easily write drivers for peripherals?
the most important point is real-time operation of most of the codecs on the 16-bit DSP. we should not spend time for hand optimizing them.
->"Why did you chose a TI dsp? because of the samples? I prepfer to pay for an AVR and have free/open tools, that works on linux, for example.
i selected the DSP because
-it comes with an easy to use DSP/BIOS kernel. (i did not know much about linux at that time.)
-i had prior experience with c54x DSP and had already ported the mp3 codec for that.
-it had most of the peripherals integrated. with good peripheral support drivers. USB peripheral driver was also available.
-very well documented.
why do you prefer AVR32 ? Can Rockbox codecs run in real time on an AVR32?
->"What tools do you use for TMS320VC5507?"
-Code composer studio (Eval)
-USBIO (Eval)
-HHD USB Monitor (Eval)
Now even i prefer to use free/open tools. :-)
->"I am looking for a Open hardware player for RockBox, because RockBox plays MP3, FLAC, OGG, etc... looks to me that DSPdap is limited for MP3, maybe because you alone can't coding all that is needed for FLAC and others..."
We need to first evaluate if the codecs will work in real-time with TMS320VC5507. I am not sure of that.
->"What about a plastic case for DSPdap? and any online store for assembly kit? or all player already assembled?"
No plastic case yet. :-( This is something we should be working on too.
-roger.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
"Definitely, we should work together. ;-) We should now be looking at selecting the right processor for the next version of DSPdap and freeze it's functional specs. The current version lacks an LCD display." We are also doing that, and selecting a LCD.
"-Do Rockbox codec impementations use only fixed point math?
-Is Rockbox codec implementation purely in C or is it assembly optimized for any particular processor?
-What kernel does Rockbox use?
-Is there a well defined device driver architecture in the Rockbox kernel so that we can easily write drivers for peripherals?"
Eheh, I am new at Rockbox and I don't have good knowledge of electronics not in programing :-)
C and assembly for each processor. Own micro kernel. Not well defined device driver, I think, or more or less, sholud I say.
Please join us at IRC channel, forum and wiki.
We are just 2 people right now working for that hardware player, we are confident for AVR32.
We have same goals as DSPdap, we will probable use the same DAC after seeing the info of DSPdap :-)
We often hang out on #rockbox over at irc.freenode.net (freenode was once known as openprojects.net, see their web site for more information). Since there is a great deal of technical discussion, we log these sessions for later reference.
Will this code work on TMS320-5509 and TMS320-6713 DSP'S?
Let me get this straight, you can write the code in CCS eval and not need to pay the big bucks??
Tks,
ER
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The code will work on c5509. You may at the most have to re-configure the peripherals. This can be easily done using the DSP/BIOS GUI config utility in CCS.
The c6713b is a floating point dsp. the DSPdap code uses only fixed-point math and so will not effectively utilize the ability of c6713b. the code being in C could be compiled for c6713b though. again you will have to re-configure the peripherals accordingly.
ccs eval is fully functional software during the eval period. as long as u are using it for eval/hobby purposes and not selling the product, i don't think TI should have a problem. ;)
rgds,
Roger.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi Roger,
Had two quick questions. One do you think this would work on an SD card with some of them being up there in
speed? Two, I'm still interested in a blank PCB, do you have one?
Thanks,
Enrique
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Yes, you can interface an SD/MMC card using the expansion port. It needs only 6 lines to achieve the highest speed mode (4-bit). For MP3 you don't need that much speed, but for raw PCM audio recording/playback please ensure that it fits the speed requirement.
You will have to develop software to support the SD card.
We don't have bare PCBs in stock with us. We will have to get the PCB made for you.
1 Bare PCB, 2 sided PTH, with silkscreen and legend $25 + Shipping extra.
If you have a requirement of more than one PCB we can provide you the PCBs a bit cheaper. You see it is hard to convince the PCB guys to make low quantity PCBs.
rgds,
Roger.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I am Privat Pilot, electronic engineer and 51 years old. I think most pilots with an age of more than 50 have more or less problems in hearing; for me personal it is.
When flying I am wearing a high quality headset with active noise suppression, but the radio signal is ofter very bad and some controllers are hard to understand.
So, I am looking for ways to improve the audio quality in flight, to filter the radio audio signal in a way it is done by the hearing aid shops. There is nothing like this on the market, right now.
Your project is more or less what I am looking for.
For first tests I would like to have an audio equalizer running.
Is your HW available assembled ? Or are there some PCBs I could use ?
I've worked about 15 in realtime programmiing of some uC, also build some uC based hardware; but I have never programmed a DSP nor soldered SMD.
Thanx for your answer.
Best regards
Thomas
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I'm glad to see your interest in DSPdap. I'm surprised that there is no commercially available solution for the problem you are facing.
Can we solve the issue by mere filtering?
The DSPdap board can do any kind of audio processing. It has a line-in port and a headphone out port. It is not hard to get an equalizer running on it.
Unfortunately i don't have any assembled boards with me. I could support you with bare PCBs though.
If you are not experienced with soldering i would suggest you to buy DSP starter kit boards from TI. You should get them under $500. This saves you the hassles of soldering and also gives you better Debugging options.
For your question: As I know, and I've googled a lot, there is no electronics on the market for "old" pilots. The answer therefor is quite easy: each pilot needs a doctors approval every year or every second year, the medical. So nobody admits to the doctor having hearing problems; but most of the older people have.
And there a lot pilots in the air older than 50, because they have the money to fly :-)
So, my idea is to have first a good headset working and second to filter the radio signal, as it is done by hearing aid devices too.
For my experience: if the radio system of the air traffic controller is designed with accoring newest technology (filtering, etc) I have no problesm to understand. If the equipment is very old, like in the eastern parts of Europe, it is hard for me to follow. Also I have more problems with fewale controllers. On the other hand I had never problems to communicate with phone or mobile.
So my idea is
- to bandpass the frequecies according phone bandwidth (300Hz - 3 Khz)
- to increase the higher frequencies (I need this according to my ear weakness)
It's a quit simple approach.
To do it in practical I would like to start with a PC with soundcard and some software (witten in C?) and do some test flights.
Second could be to put the same SW into a DSP, like a startKit or your board and improve testing with different pilots.
Third could be some prototypes (baed on your PCB?), 5 to 10, used by a bigger group of pilots.
After that, we need to think about marketing the concept :-) May AOPA, THE pilots association worldwide is willing to support us.
At the moment I am not shure, if me approach will work. I think I need a test bench to have first draft result form real flights. We ahve an big advantage: I am my own guinea pig :-))
So, what do you think about using a PC for the first tests ?
Can you give me some hints regarding the software setup for the PC and in general?
Can we use the results of the first tests in a real DSL HW, like yours ?
Are you interested doing some cooperation with me ?
What do you think ?
Best regards
Thomas
Ps:
I am German and flying in Europe
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Now it makes sense. You want a device that can bandpass and equalize the radio signal (i.e. audio signal received by radio). More importantly, you want the equalization to be programmable as per pilot's preference.
You have precisely mentioned the way we should do it.
1) Do a proof of concept using PC/laptop. We use the line in port to feed in the audio signal received via radio. Use software to do the filtering and equalization. Use the line out port to listen to the processed audio.
2) port the software to a DSP starter kit and evaluate it.
3) build a custom hardware that will do the job and fit in the space and power constraints.
The DSPdap hardware can definitely be used as it is. We can modify it to better suit the application in terms of space and design.
To start with step 1, all we need is a PC with a sound card and a C compiler.
The test results of step 1 are valid for steps 2 and 3.
I am willing to co-operate in whatever way i can.
regards,
Roger.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi Roger,
I was off for some days and unable to answer ....
Yes, the way you've described is the way I would like to proceed.
To have some samples of air traffic communication to play around with in the future, I am about to collect live records using a laptop with sound card and SW (I am trying http://www.audiograbber.com-us.net/ at the moment)and a portable radio or the intercom system of our airplane.
What I need next is your support to setup a SW platform on the pc. I am playing around with dev-c++, but do not know what's the best way to setup the DSP SW.
In former times I worked with C in embedded systems, but not on the PC; so I am a litte bit unclear how to manage the soundcard HW, WAV-Files, filters, etc. And I do not have a clear picture how to organize multitaking on the PC, so that the audio prozessing and other things on the PC, like file IO, human interface (Keyboard, mouse, screen) can work together.
Any hints ?
Any example programms to start with ?
BG
Thomas
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Since you are already acquainted with C it should not be difficult. DevC++ IDE should be fine I guess. I've not used it before. I personally prefer Visual Studio 6 if I'm on a Windows platform.
We can keep the application simple by not using any GUI or sophisticated controls. We can build a simple command line application instead, that is operated by keyboard only. This will save us a lot of time and we can focus on the DSP algorithm.
There are 2 things to deal with.
1) Platform dependent stuff. (audio input read, audio output write, user controls)
2) Platform independent stuff. (DSP algorithm)
Multitasking is very easy. all we need to do is create 2 threads. one is the user interface thread, which accepts user input and displays some visual output. The second is the sound processing thread which does 3 things in a loop: read input sound, process as per user provided parameters, write output sound.
I'll write some reference code that will do platform dependent stuff. You can try to focus more on the DSP algorithm.
-roger.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
is there Visual Studio 6 available for free ? I have seen "Visual C++ 2008 Express Edition" at MS for free; is it also usable ? I would like to use the same tool as you.
I don't need any GUI; I am admin to some Linux servers, all with ASCII console. So your approch with the command line is fine;
By the way : Windows or Linux for our project ? May be Windows has the better support for the sound card ?
Multitasking is understood; but I have no experience on the PC with that.
So your approach is fine with me. Let's go ....:-)
I will try to get some samples of ATC radio in the next days. I will do a flight tomorrow and my be I can start with sampling; I am just waiting for the wires.
BG
Thomas
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Yes, we can use "Visual C++ 2008 Express Edition". It is a 87MB download. I too will get a copy for me.
I would love to develop on Linux, but the issue is that the DSP tools are available only for Windows. So we'll have to stick to Windows for now.
"Yes, we can use "Visual C++ 2008 Express Edition". It is a 87MB download. I too will get a copy for me.
I would love to develop on Linux, but the issue is that the DSP tools are available only for Windows. So we'll have to stick to Windows for now."
Which DSP tools? Do you mean the TI dev tools or DSP tools in general. There are plenty of DSP tools and libraries available in linux, and octave which is cross platform is Linux/Win/Mac.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Sorry, 87MB is just the installer. The individual components are downloaded later. I guess I will stick to Visual C++ 6.0. The code that we write will also work on Visual C++ 2008 Express. You can get a copy for you.
regards,
Roger.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I do not have any experience with online PCB vendors, so cannot suggest you any. I get my PCBs done through a local fabricator. I suggest you try searching in your locality. try the yellow pages. In case you need DSPdap PCBs, i can supply you directly.
regards,
roger.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Can you give me an overview of how i would integrate a monochrome LCD with the DSP and allow browsing. Also if i want to use SD card insead of CF card, how would i go about doing that?
Thanks.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Both LCD and SD card can be interfaced to the existing DSPdap board using the Expansion port P3.
LCD:
----
2 types are possible. 16x2 Character module or Graphic dot matrix module (e.g. 128x64).
16x2 character:
~~~~~~~~~~~~~~
Most 16x2 character LCD modules support 4-bit parallel mode. This requires at least 6 lines to operate. We can use the GPIO lines available on the expansion port (P3 on DSPdap PCB). In case you fall short of I/O lines, you can use a SPI port expander as shown here http://www.ljcv.net/projects/picnet1-spilcd/index.html
dot matrix:
~~~~~~~~~~~
Most dot matrix LCDs have an integrated controller like S6B1713 that supports both parallel and serial (SPI) interfaces. refer to the LCD controller datasheet. http://www.lcd-module.de/eng/pdf/zubehoer/s6b1713.pdf
The problem with dot matrix is that UI design is complicated and you may fall short of memory in the dspdap v0.1.1.
You will also have to build the back-light driving circuit externally.
SD/MMC:
-------
There are 2 options
option 1:
~~~~~~~~
The 5507 DSP does not have an integrated SD/MMC controller. However all SD cards support the standard SPI interface. (4 wires required. CS#, SCLK, SDO, SDI) and 1 optional GPIO for CD (card detect). You will have to write some code to access the SD card. A good place to start is to refer to some working code. Check out how they interface an SD card to MSP430 micro-controller with schematics and source code in C. http://focus.ti.com/mcu/docs/mcusupporttechdocsc.tsp?sectionId=96&tabId=1502&abstractName=slaa281b
option 2:
~~~~~~~~~
We can opt for a 5509A DSP which is pin compatible with 5507. 5509A has 2 SD/MMC controllers on McBSP1 and McBSP2. See the 5509A datasheet and this application note to see how to use it http://www.ti.com/litv/pdf/spru593a
-roger.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi all,
Please do write in any suggestions or comments about this project so that it can be improved further.
Any doubts and queries are welcome!!
regards,
DSPdap team.
Hello!!
I would like to see DSPdap with an AVR32 instead of Texas DSP, because It have a GCC compiler version (I think that Texas DSP don't have a GCC port, right?!! - after I would like to have RockBox for it :-)
Had you thought in having RockBox for DSPdap instead of write your software?
Please see this message at RockBOx forum to read more about my idea.
Thank you for sharing you work ;-) :-)
Hello,
The essence of the DSPdap project is to build your own DSP based hardware and software for a digital audio player.
But now-a-days the general uCs are becoming powerful enough to do audio/video processing in software. so building an open source player using such uCs makes sense.
Rockbox is a great project. Aren't there any open sourced hardware players supporting Rockbox?
-Roger.
Hello Roger and thanks for your time.
"But now-a-days the general uCs are becoming powerful enough to do audio/video processing in software. so building an open source player using such uCs makes sense." -> yes, It makes sense but software becomes to complex! In my opinion, It's a bad option to make such complex software alone, we should work together.
"Rockbox is a great project. Aren't there any open sourced hardware players supporting Rockbox?" -> No :-( - but a Open player like DSPdap could be working with Rockbox, no?
Why did you chose a TI dsp? because of the samples? I prepfer to pay for an AVR and have free/open tools, that works on linux, for example.
What tools do you use for TMS320VC5507?
"The essence of the DSPdap project is to build your own DSP based hardware and software for a digital audio player." I am looking for a Open hardware player for RockBox, because RockBox plays MP3, FLAC, OGG, etc... looks to me that DSPdap is limited for MP3, maybe because you alone can't coding all that is needed for FLAC and others...
What about a plastic case for DSPdap? and any online store for assembly kit? or all player already assembled?
This is just my thoughts.
Good luck for DSPdap ;-) :-)
hello,
Thanks for your interest. :-)
->"yes, It makes sense but software becomes to complex! In my opinion, It's a bad option to make such complex software alone, we should work together."
Definitely, we should work together. ;-) We should now be looking at selecting the right processor for the next version of DSPdap and freeze it's functional specs. The current version lacks an LCD display.
->"a Open player like DSPdap could be working with Rockbox, no?"
we will need to evaluate this. i haven't gone through Rockbox in detail but can you help me with the following points
-Do Rockbox codec impementations use only fixed point math?
-Is Rockbox codec implementation purely in C or is it assembly optimized for any particular processor?
-What kernel does Rockbox use?
-Is there a well defined device driver architecture in the Rockbox kernel so that we can easily write drivers for peripherals?
the most important point is real-time operation of most of the codecs on the 16-bit DSP. we should not spend time for hand optimizing them.
->"Why did you chose a TI dsp? because of the samples? I prepfer to pay for an AVR and have free/open tools, that works on linux, for example.
i selected the DSP because
-it comes with an easy to use DSP/BIOS kernel. (i did not know much about linux at that time.)
-i had prior experience with c54x DSP and had already ported the mp3 codec for that.
-it had most of the peripherals integrated. with good peripheral support drivers. USB peripheral driver was also available.
-very well documented.
why do you prefer AVR32 ? Can Rockbox codecs run in real time on an AVR32?
->"What tools do you use for TMS320VC5507?"
-Code composer studio (Eval)
-USBIO (Eval)
-HHD USB Monitor (Eval)
Now even i prefer to use free/open tools. :-)
->"I am looking for a Open hardware player for RockBox, because RockBox plays MP3, FLAC, OGG, etc... looks to me that DSPdap is limited for MP3, maybe because you alone can't coding all that is needed for FLAC and others..."
We need to first evaluate if the codecs will work in real-time with TMS320VC5507. I am not sure of that.
->"What about a plastic case for DSPdap? and any online store for assembly kit? or all player already assembled?"
No plastic case yet. :-( This is something we should be working on too.
-roger.
"Definitely, we should work together. ;-) We should now be looking at selecting the right processor for the next version of DSPdap and freeze it's functional specs. The current version lacks an LCD display." We are also doing that, and selecting a LCD.
"-Do Rockbox codec impementations use only fixed point math?
-Is Rockbox codec implementation purely in C or is it assembly optimized for any particular processor?
-What kernel does Rockbox use?
-Is there a well defined device driver architecture in the Rockbox kernel so that we can easily write drivers for peripherals?"
Eheh, I am new at Rockbox and I don't have good knowledge of electronics not in programing :-)
C and assembly for each processor. Own micro kernel. Not well defined device driver, I think, or more or less, sholud I say.
Please join us at IRC channel, forum and wiki.
We are just 2 people right now working for that hardware player, we are confident for AVR32.
We have same goals as DSPdap, we will probable use the same DAC after seeing the info of DSPdap :-)
Description of our project:
http://www.rockbox.org/twiki/bin/view/Main/RockBoxPlayer
We often hang out on #rockbox over at irc.freenode.net (freenode was once known as openprojects.net, see their web site for more information). Since there is a great deal of technical discussion, we log these sessions for later reference.
http://forums.rockbox.org/
Lets join forces and make a Free/Open hardware player!!
Thank you.
Will this code work on TMS320-5509 and TMS320-6713 DSP'S?
Let me get this straight, you can write the code in CCS eval and not need to pay the big bucks??
Tks,
ER
Hi ER,
The code will work on c5509. You may at the most have to re-configure the peripherals. This can be easily done using the DSP/BIOS GUI config utility in CCS.
The c6713b is a floating point dsp. the DSPdap code uses only fixed-point math and so will not effectively utilize the ability of c6713b. the code being in C could be compiled for c6713b though. again you will have to re-configure the peripherals accordingly.
ccs eval is fully functional software during the eval period. as long as u are using it for eval/hobby purposes and not selling the product, i don't think TI should have a problem. ;)
rgds,
Roger.
Hi Roger,
Had two quick questions. One do you think this would work on an SD card with some of them being up there in
speed? Two, I'm still interested in a blank PCB, do you have one?
Thanks,
Enrique
Hi Enrique,
Yes, you can interface an SD/MMC card using the expansion port. It needs only 6 lines to achieve the highest speed mode (4-bit). For MP3 you don't need that much speed, but for raw PCM audio recording/playback please ensure that it fits the speed requirement.
You will have to develop software to support the SD card.
We don't have bare PCBs in stock with us. We will have to get the PCB made for you.
1 Bare PCB, 2 sided PTH, with silkscreen and legend $25 + Shipping extra.
If you have a requirement of more than one PCB we can provide you the PCBs a bit cheaper. You see it is hard to convince the PCB guys to make low quantity PCBs.
rgds,
Roger.
Dear Roger,
I've just found your project, great.
I am Privat Pilot, electronic engineer and 51 years old. I think most pilots with an age of more than 50 have more or less problems in hearing; for me personal it is.
When flying I am wearing a high quality headset with active noise suppression, but the radio signal is ofter very bad and some controllers are hard to understand.
So, I am looking for ways to improve the audio quality in flight, to filter the radio audio signal in a way it is done by the hearing aid shops. There is nothing like this on the market, right now.
Your project is more or less what I am looking for.
For first tests I would like to have an audio equalizer running.
Is your HW available assembled ? Or are there some PCBs I could use ?
I've worked about 15 in realtime programmiing of some uC, also build some uC based hardware; but I have never programmed a DSP nor soldered SMD.
Thanx for your answer.
Best regards
Thomas
Dear Thomas,
I'm glad to see your interest in DSPdap. I'm surprised that there is no commercially available solution for the problem you are facing.
Can we solve the issue by mere filtering?
The DSPdap board can do any kind of audio processing. It has a line-in port and a headphone out port. It is not hard to get an equalizer running on it.
Unfortunately i don't have any assembled boards with me. I could support you with bare PCBs though.
If you are not experienced with soldering i would suggest you to buy DSP starter kit boards from TI. You should get them under $500. This saves you the hassles of soldering and also gives you better Debugging options.
$395
http://focus.ti.com/docs/toolsw/folders/print/tmdsdsk5510.html
$495
http://focus.ti.com/docs/toolsw/folders/print/tmdsdsk5509.html
regards,
Roger.
Hi Roger,
thanx for your rapid answer.
For your question: As I know, and I've googled a lot, there is no electronics on the market for "old" pilots. The answer therefor is quite easy: each pilot needs a doctors approval every year or every second year, the medical. So nobody admits to the doctor having hearing problems; but most of the older people have.
And there a lot pilots in the air older than 50, because they have the money to fly :-)
So, my idea is to have first a good headset working and second to filter the radio signal, as it is done by hearing aid devices too.
For my experience: if the radio system of the air traffic controller is designed with accoring newest technology (filtering, etc) I have no problesm to understand. If the equipment is very old, like in the eastern parts of Europe, it is hard for me to follow. Also I have more problems with fewale controllers. On the other hand I had never problems to communicate with phone or mobile.
So my idea is
- to bandpass the frequecies according phone bandwidth (300Hz - 3 Khz)
- to increase the higher frequencies (I need this according to my ear weakness)
It's a quit simple approach.
To do it in practical I would like to start with a PC with soundcard and some software (witten in C?) and do some test flights.
Second could be to put the same SW into a DSP, like a startKit or your board and improve testing with different pilots.
Third could be some prototypes (baed on your PCB?), 5 to 10, used by a bigger group of pilots.
After that, we need to think about marketing the concept :-) May AOPA, THE pilots association worldwide is willing to support us.
At the moment I am not shure, if me approach will work. I think I need a test bench to have first draft result form real flights. We ahve an big advantage: I am my own guinea pig :-))
So, what do you think about using a PC for the first tests ?
Can you give me some hints regarding the software setup for the PC and in general?
Can we use the results of the first tests in a real DSL HW, like yours ?
Are you interested doing some cooperation with me ?
What do you think ?
Best regards
Thomas
Ps:
I am German and flying in Europe
Hi Thomas,
Now it makes sense. You want a device that can bandpass and equalize the radio signal (i.e. audio signal received by radio). More importantly, you want the equalization to be programmable as per pilot's preference.
You have precisely mentioned the way we should do it.
1) Do a proof of concept using PC/laptop. We use the line in port to feed in the audio signal received via radio. Use software to do the filtering and equalization. Use the line out port to listen to the processed audio.
2) port the software to a DSP starter kit and evaluate it.
3) build a custom hardware that will do the job and fit in the space and power constraints.
The DSPdap hardware can definitely be used as it is. We can modify it to better suit the application in terms of space and design.
To start with step 1, all we need is a PC with a sound card and a C compiler.
The test results of step 1 are valid for steps 2 and 3.
I am willing to co-operate in whatever way i can.
regards,
Roger.
Hi Roger,
I was off for some days and unable to answer ....
Yes, the way you've described is the way I would like to proceed.
To have some samples of air traffic communication to play around with in the future, I am about to collect live records using a laptop with sound card and SW (I am trying http://www.audiograbber.com-us.net/ at the moment)and a portable radio or the intercom system of our airplane.
What I need next is your support to setup a SW platform on the pc. I am playing around with dev-c++, but do not know what's the best way to setup the DSP SW.
In former times I worked with C in embedded systems, but not on the PC; so I am a litte bit unclear how to manage the soundcard HW, WAV-Files, filters, etc. And I do not have a clear picture how to organize multitaking on the PC, so that the audio prozessing and other things on the PC, like file IO, human interface (Keyboard, mouse, screen) can work together.
Any hints ?
Any example programms to start with ?
BG
Thomas
Hi Thomas,
Since you are already acquainted with C it should not be difficult. DevC++ IDE should be fine I guess. I've not used it before. I personally prefer Visual Studio 6 if I'm on a Windows platform.
We can keep the application simple by not using any GUI or sophisticated controls. We can build a simple command line application instead, that is operated by keyboard only. This will save us a lot of time and we can focus on the DSP algorithm.
There are 2 things to deal with.
1) Platform dependent stuff. (audio input read, audio output write, user controls)
2) Platform independent stuff. (DSP algorithm)
Multitasking is very easy. all we need to do is create 2 threads. one is the user interface thread, which accepts user input and displays some visual output. The second is the sound processing thread which does 3 things in a loop: read input sound, process as per user provided parameters, write output sound.
I'll write some reference code that will do platform dependent stuff. You can try to focus more on the DSP algorithm.
-roger.
Hi Roger,
is there Visual Studio 6 available for free ? I have seen "Visual C++ 2008 Express Edition" at MS for free; is it also usable ? I would like to use the same tool as you.
I don't need any GUI; I am admin to some Linux servers, all with ASCII console. So your approch with the command line is fine;
By the way : Windows or Linux for our project ? May be Windows has the better support for the sound card ?
Multitasking is understood; but I have no experience on the PC with that.
So your approach is fine with me. Let's go ....:-)
I will try to get some samples of ATC radio in the next days. I will do a flight tomorrow and my be I can start with sampling; I am just waiting for the wires.
BG
Thomas
Hi Thomas,
Yes, we can use "Visual C++ 2008 Express Edition". It is a 87MB download. I too will get a copy for me.
I would love to develop on Linux, but the issue is that the DSP tools are available only for Windows. So we'll have to stick to Windows for now.
A good article for accessing sound hardware on windows is here. I'll use it as reference.
http://www.borg.com/~jglatt/tech/lowaud.htm
regards,
Roger.
"Yes, we can use "Visual C++ 2008 Express Edition". It is a 87MB download. I too will get a copy for me.
I would love to develop on Linux, but the issue is that the DSP tools are available only for Windows. So we'll have to stick to Windows for now."
Which DSP tools? Do you mean the TI dev tools or DSP tools in general. There are plenty of DSP tools and libraries available in linux, and octave which is cross platform is Linux/Win/Mac.
Hi Thomas,
Sorry, 87MB is just the installer. The individual components are downloaded later. I guess I will stick to Visual C++ 6.0. The code that we write will also work on Visual C++ 2008 Express. You can get a copy for you.
regards,
Roger.
dear Roger,
can you help me with some online PCB manufacturers, where they can make the PCB for me?
Zoli
dear Zoli,
I do not have any experience with online PCB vendors, so cannot suggest you any. I get my PCBs done through a local fabricator. I suggest you try searching in your locality. try the yellow pages. In case you need DSPdap PCBs, i can supply you directly.
regards,
roger.
Hi Roger,
Can you please provide me with information for ordering raw PCBs from you.
My email is kike69@hotmail.com.
Tks,
Enrique
Roger,
Can you give me an overview of how i would integrate a monochrome LCD with the DSP and allow browsing. Also if i want to use SD card insead of CF card, how would i go about doing that?
Thanks.
Hello,
Both LCD and SD card can be interfaced to the existing DSPdap board using the Expansion port P3.
LCD:
----
2 types are possible. 16x2 Character module or Graphic dot matrix module (e.g. 128x64).
16x2 character:
~~~~~~~~~~~~~~
Most 16x2 character LCD modules support 4-bit parallel mode. This requires at least 6 lines to operate. We can use the GPIO lines available on the expansion port (P3 on DSPdap PCB). In case you fall short of I/O lines, you can use a SPI port expander as shown here
http://www.ljcv.net/projects/picnet1-spilcd/index.html
dot matrix:
~~~~~~~~~~~
Most dot matrix LCDs have an integrated controller like S6B1713 that supports both parallel and serial (SPI) interfaces. refer to the LCD controller datasheet.
http://www.lcd-module.de/eng/pdf/zubehoer/s6b1713.pdf
The problem with dot matrix is that UI design is complicated and you may fall short of memory in the dspdap v0.1.1.
You will also have to build the back-light driving circuit externally.
SD/MMC:
-------
There are 2 options
option 1:
~~~~~~~~
The 5507 DSP does not have an integrated SD/MMC controller. However all SD cards support the standard SPI interface. (4 wires required. CS#, SCLK, SDO, SDI) and 1 optional GPIO for CD (card detect). You will have to write some code to access the SD card. A good place to start is to refer to some working code. Check out how they interface an SD card to MSP430 micro-controller with schematics and source code in C.
http://focus.ti.com/mcu/docs/mcusupporttechdocsc.tsp?sectionId=96&tabId=1502&abstractName=slaa281b
option 2:
~~~~~~~~~
We can opt for a 5509A DSP which is pin compatible with 5507. 5509A has 2 SD/MMC controllers on McBSP1 and McBSP2. See the 5509A datasheet and this application note to see how to use it
http://www.ti.com/litv/pdf/spru593a
-roger.