This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320C5535: Help using the cdc module of the c5000 csl on TMS320C5535

Part Number: TMS320C5535


I'm working on a project at work that requires me to use the USB peripheral of the TMS320C5535 to transmit large amounts of data very quickly,

for reasons I wont explain in details here, the other peripherals which can serve that function (namely the UART, SPI, and I2C if your creative enough)

are already used by the system for other purposes and those cant be used for this task.

I'm working with version 3.01 of the c5000 csl and version 5.42.1.09 of DSP/BIOS and my ide is CCS6.

Now my problem is that no matter what I do, the USB peripheral doesn't seem to work at all. as far as I know ive done everything required for it to work and yet whenever I'm trying to send anything,

either by loading the values into the FIFO myself and setting the flags in the register or by calling the csl functions to do that for me, there doesn't seem to be any response what so ever,

the results from using USBView to monitor the activity on the usb port:

[Port4] FailedEnumeration :  Unknown USB Device (Device Descriptor Request Failed)


Is Port User Connectable:         yes
Is Port Debug Capable:            no
Companion Port Number:            0
Companion Hub Symbolic Link Name:
Protocols Supported:
 USB 1.1:                         yes
 USB 2.0:                         yes
 USB 3.0:                         no

       ---===>Device Information<===---

ConnectionStatus:                  FailedEnumeration
Current Config Value:              0x00  -> Device Bus Speed: Low
Device Address:                    0x00
Open Pipes:                           0
*!*ERROR:  No open pipes!

          ===>Device Descriptor<===
*!*ERROR:  bLength of 0 incorrect, should be 18
bLength:                           0x00
bDescriptorType:                   0x00
bcdUSB:                          0x0000
bDeviceClass:                      0x00
*!*ERROR:  Device enumeration failure

and from my own debugging effort it seems that the device simply enters suspend mode immidiatly regardless of what happens,

and on top of that, the usb interrupt wont ever trigger more then twice for some reason, and never happens after longer then a couple milliseconds after the USB interrupts are enabled.

I've been stuck in confusing situation for a couple days now and would highly appreciate a working example of code that uses the cdc module, including whatever changes to the .tcf file where made to accommodate it. I haven't found any example relating to the usb, or the TMS320C5535 for that matter, with CCS6, DSP/BIOS nor with C5000 CSL API, so I could realy use one to base myself on.

  • Hi Nadav,


    As I'm seeing in your post you are using very old CSL release - version 3.01 of the c5000 csl. I suggest you to switch to CSL v3.08 first and try the CDC example located at C:\ti\c55_lp\c55_csl_3.08\ccs_v6.x_examples\usb\CSL_USB_CdcExample.



    BR
    Tsvetolin Shulev

  • sadly, I cant do that.
    the project I'm working on is a continuation of another project that was made by another company, and I fear it wont work with a newer version. I will try this however.
    also, I accidentally clicked on "this resolved my issue", how do I cancel that?