Author Topic: eZdsp devboard from TI anybody? (C5535 DSP, bought about 5-10 years ago)  (Read 1599 times)

0 Members and 1 Guest are viewing this topic.

Online RoGeorgeTopic starter

  • Super Contributor
  • ***
  • Posts: 6181
  • Country: ro
eZdsp USB C5535 devboard from TI is a devboard from about 10 years ago, sold as DSP board by Texas Instruments,  the board is in fact a SpectrumDigital product.

It was meant to be a TI DSP board to learn their TMS320C5535 DSP microcontroller.  This was about 10 years ago, cost about $70 or so (now listed as a $400 devboard).  It was around the CCSv4 era.

Back in the days, I didn't know much about DSP, and found not much support/tutorials for the eZdsp devboard, so the devboard ended in a drawer.

Now I need a 24 bits/192 kHz ADC (to measure the distortions of an audio Wienn bridge) and found the eZdsp old devboard and its DVD.  Still no resources and no tutorials, even less support than 10 years ago.  Any tutorial I found does not apply, and most of the docs/examples are now dead links.  I've managed to install the old TI proprietary Code Composer Studio CCSv4 in a Windows XP/32bits virtual machine, from the original DVD, and kind of stuck, no eZdsp board support, same as 10 years ago.

Am I missing something, or eZdsp was one of those rare devboard nobody bother to order/use?
Anybody knows, or have, any example code/project of how I could use the onboard codec to sample an audio signal at 24bits/192kHz with the eZdsp board, or any 101 good links please?

Online RoGeorgeTopic starter

  • Super Contributor
  • ***
  • Posts: 6181
  • Country: ro
Untangled the must have install steps for the eZdsp C5535 USB devboard made by "Spectrum Digital", on a WinXP:

    - no Internet connection required, not even for CCS (Code Composer Studio) license
    - from the DVD that came with the board install
        - "D:\setup_CCS_4.2.4.00033.exe" into default location, "C:\Program Files\Texas Instruments"
            - the C5500 compiler and XDS100 emulator (TI's JTAG) are a must have option
        - "D:\install_images\emulation\sd_targets\SetupEZDSP5535.exe" into ccs4 folder "C:\Program Files\Texas Instruments\ccs4"
        - as a side note, at each start CCS will scan the folders at the same level with "ccs4" folder, and offer to install any components it might see there

    - at this point a license was added for the CCS, and also the board support files and project examples in
        - C:\Program Files\Texas Instruments\ccsv4\emulation\boards\ezdsp5535_v1\tests

    - now you can start CCS and create a new target configuration file for the eZdsp board
        - choose emulator "Texas Instruments XDS100v2 USB Emulator" (their JTAG)
        - choose devboard model "EZDSP5535"
        - click save

    - connect the USB (the big one, for the JTAG interface, not the mini USB connector), drivers will be installed automatically, offline, no Internet required
   
    - to add project examples, use import project from
        - C:\Program Files\Texas Instruments\ccsv4\emulation\boards\ezdsp5535_v1\tests
        - DO NOT COPY the projects in the local workspace, unless you know how to add the proper include and libs paths to the compiler and linker (from project properties), this is because the example projects have some paths specified relative to their own location
        - click the Debug icon, and the imported project should compile, open the debugger, connect to the JTAG and download the binaries
        - click the Run icon to run the imported project




(if, for example the CCS is installed in C:\TI, then in the imported example project, add to the project properties:
        - manually add in the "C5500 Compiler" -> "Include Options"
            - "C:\TI\ccsv4\emulation\boards\ezdsp5535_v1\include"
            - "C:\TI\ccsv4\emulation\boards\ezdsp5535_v1\c55xx_csl\inc"
           
        - manually add in the "C5500 Linker" -> "File Search Path" -> "Add <dir> to library search path"
            - "C:\TI\ccsv4\emulation\boards\ezdsp5535_v1\lib"
            - "C:\TI\ccsv4\emulation\boards\ezdsp5535_v1\c55xx_csl\ccs_v4.0_examples\cslVC5505\Debug"
            - "C:\TI\ccsv4\tools\compiler\c5500\lib"
)




Later edit:

- eZdsp board is not supported on Linux
- their onboard JTAG is in fact a FTDI based JTAG, with FT2232HL, so it might be possible to use the board from Linux
- might be possible to use the board as a generic FTDI based JTAG for other boards and other devices
- the board has an uSD demo card to turn the eZdsp board into an external USB soundcard when connected to a PC using the mini-USB connector (tested under both Linux and Windows, no drivers required and no internet connection required)
« Last Edit: April 24, 2021, 07:45:15 pm by RoGeorge »
 

Offline RoadRunner

  • Frequent Contributor
  • **
  • Posts: 378
  • Country: de
I also got involved with eZdsp board with the hope of learning DSP programming and signal processing. Maybe i got tempted by the fact many old test equipment uses them. Bought many boards for ~70$ quite a few years back.
I did do few small projects with them just to get to know the architecture here are two them published https://github.com/circuitvalley/TMS320_DSP https://www.circuitvalley.com/search/label/TMS320

I quickly found out these are old piece of tech pretty much useless now. Nobody uses them they are way too low-powered way too overpriced buggy CCS support for most of the devices. Even there toolchain and standard C library has bug even with basic thing like handling of charter array.

Everybody has moved onto ARM, Depending on architecture you chose ARM implements all of DSP features/instructions, runs faster, has hundreds of different device/vendors to chose from, pretty low power, comparatively  low cost and world class software support.
I have sold all the DSP board i had except for one broken one that need main BGA chip replaced.

I do not see any point why would any one will use them. Expect You just want use them for the sake of using them. That is how i got into using them.

 
The following users thanked this post: RoGeorge

Online RoGeorgeTopic starter

  • Super Contributor
  • ***
  • Posts: 6181
  • Country: ro
Nice blog!   :-+

I do not see any point why would any one will use them.

I wanted to sample an audio signal with an external soundcard, so to avoid catching noises from inside the desktop.  Was hoping to find a demo that I can modify to grab the 24bits/192kHz samples and crunch the data later on a PC.

I didn't find any demo of how to get the raw ADC data into PC, but I found out my eZdsp devboard came with a demo that turns it into an USB soundcard with local volume control.  No soundcard drivers required, works on any OS.

Good to turn normal headphones into USB headphones, so I won't have to crawl under the desk to plug the audio jacks.   

Also found as very handy the two push buttons on the devboard.  They act as up/down/mute buttons for the audio level.  The volume buttons are active as long as the eZdsp is plugged to the PC, even when the eZdsp is not selected as the default card, probably a bug.

But I took that as a feature, and now I can change the speaker's volume while sitting at the soldering bench.   ;D
« Last Edit: April 29, 2021, 05:08:18 pm by RoGeorge »
 

Offline The_Next_Theranos

  • Contributor
  • Posts: 19
  • Country: us
Was hoping to find a demo that I can modify to grab the 24bits/192kHz samples and crunch the data later on a PC.
I, too, have one of these C5535 devices in the drawer and am wondering if I can still use it. Did you ever figure out how to get 24 bit/192 kHz recording working on the C5535 DSP board? This was promised ten years ago (https://e2e.ti.com/support/processors-group/processors/f/processors-forum/244827/usb-to-i2s-interface-24-bits-192khz) but never seems to have been released.

I did find this post about the C5505 with some instructions on how to use a register to change the sampling rate from 48 kHz to 192 kHz (https://e2e.ti.com/support/processors-group/processors/f/processors-forum/11111/audio-passthrought-code-for-ezdsp). No idea if this works on the C5535 or not, because the previous link said that for the C5535, "modification to the ASRC algorithm" might be required.

I was thinking if the C5535 can be made to work with stereo recording in 24 bits at 192 kHz, it could make for a decent SDR with high dynamic range due to the bit depth.
 

Online RoGeorgeTopic starter

  • Super Contributor
  • ***
  • Posts: 6181
  • Country: ro
My understanding is 24bits/192kHz recording doesn't work properly, and that has something to do with the onboard audio codec (TLV320AIC3204, or shortly said AIC3204).  AIC3204 is the audio codec, where all the ADC/DAC and antialiasing filtering happens.  On the eZdsp board, AIC3204 is the little chip sitting near the mic/headphones jacks.

C5535 is the microcontroller, just that it has hardware DSP capabilities.  C5535 usually only send/receive unaltered I2S data to the AIC3204, and additionally C5535 can apply some DSP effects if wanted.

The problem at 24/192 is with the AIC3204, not with C5535.  To make things even more confusing, AIC3204 has its own DSP hardware locally, inside the AIC3204 chip, and independent of the other DSP hardware found inside the C5535 chip.  The DSP inside the AIC3204 is not that flexible, and the datastream can not be redirected to entirely avoid the AIC3204 DSP (or at least that was my understanding back then).

Long story short, AIC3204 might work to record 24/192, but in a crippled way and I still don't know if the digital filtering embedded in AIC3204 will permit the full bandwidth of 96kHz audio to be passed to the I2S datastream.

I suspect (but I didn't try) the AIC3204 will only let pass maximum 24kHz audio bandwidth (as if it were in 48kHz sampling), no matter the 24/192 settings, because of the digital filtering following the ADC, filtering that can not be configured to let pass the full 96kHz bandwidth.  In the end I've moved to another project, never got 24/192 working, never measured the audio bandwidth recorded in the I2S samples.

Back then I've saved two links about supposedly working settings for 24/192 recording, but didn't get it how to make them work, see if these are of any help:
https://e2e.ti.com/support/audio-group/audio/f/audio-forum/96699/tlv320aic3254-adc-performance-in-192khz
https://e2e.ti.com/support/audio-group/audio/f/audio-forum/354873/tlv320aic3204-frequency-response-at-192khz-processing-for-adc

If you get a working 24/192 recording from AIC3204, please post the results.

Offline The_Next_Theranos

  • Contributor
  • Posts: 19
  • Country: us
My understanding is 24bits/192kHz recording doesn't work properly, and that has something to do with the onboard audio codec

Thanks for the detailed reply. I appreciate it. I'll review the links you provided.

My goal however is to play with and learn about DSP and SDR, not to fight with ten-year-old unsupported technology.  :-\ So given the sad state of support for 24 bit/192 kHz recording, and the sad state of support for the eZdsp in general, perhaps it's just time to move on...

That's a shame. The eZdsp is a cute little unit.

Anyway, I'll check out your links. Maybe in another ten years, I'll have something to report.  ;D
 

Online RoGeorgeTopic starter

  • Super Contributor
  • ***
  • Posts: 6181
  • Country: ro
For SDR tinkering, you can start with a RTL-SDR board (this is Rx only), search for RTL-SDR or R820T.  They are about $10-$20, and designed as USB dongles for radio/TV receiving.  This website has a lot of info about RTL-SDR and other types of SDRs:  https://www.rtl-sdr.com/

Or, if you want a bigger devboard that can go upto 6GHz and has both Rx and Tx, get a PlutoSDR (ADALM-PLUTO from Analog Devices), has various online classes based on it, open hardware and software, and has a free DSP/SDR book.
https://www.analog.com/en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/adalm-pluto.html

Offline The_Next_Theranos

  • Contributor
  • Posts: 19
  • Country: us
For SDR tinkering, you can start with a RTL-SDR board (this is Rx only), search for RTL-SDR or R820T.

I've already got one. ;D But as you know, the ADC in those units is only 8 bits. I was thinking it might be possible to use the eZdsp to make a 24-bit SDR which should (theoretically) blow the RTL-SDR out of the water with a vastly superior dynamic range (rough calculation: 24 bits * 6 dB / bit = 144 dB dynamic range?!  :o ).

Might be easier just to buy a new 24/192-capable USB sound card, though I'm not sure if consumer-grade USB sound cards really achieve the quoted performance or not. A well-known brand like Creative might actually achieve its stated specs (e.g. https://www.amazon.com/Creative-BlasterX-Headphone-Surround-Amplifier/dp/B018JUPY3A/), for a price of $100. But at that price point, it might make more sense just to purchase a higher-end SDR like the $169 Airspy HF+ Discovery: https://airspy.com/airspy-hf-discovery/ .
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf