Hi
I'm using Starterware 1.20.4.1 on a c6748 as a CDC device. I wrote my own code based on the CDC example. It works fine at high speed when connected to a PC, but when connected to custom hardware it fails almost immediately after the high-speed chirp. Most probably this is due to the quality of the connection, impedance mis-match, etc.
As a quick fix, I want to use full speed, which ought to be far less demanding on the connection. And it's fast enough for the application, so it could very well become a permanent fix.
I have rebuilt the usblib, adding my own code to clear the HSEN bit in the USB 'POWER' register (0x1e00401). But this doesn't work. After the call to USBDevConnect() the power register reads 0x50, (i.e. HSMODE=1) indicating the high-speed mode has been successfully negotiated - even though HSEN=0!
Then I saw this conversation: https://e2e.ti.com/support/dsp/tms320c6000_high_performance_dsps/f/115/t/355976
so I reverted to the original usblib, rebuilt drivers.lib instead, adding the line #define USB_MODE_FULLSPEED to usbphyGS60.c.
I wasn't hopeful, because it basically clears the HSEN bit, same as I had been doing in usblib. Sure enough, I still see HSMODE bit is set after connecting.
I have double checked that I'm linking in the newly built driver.lib, not the old one. So why do I still get HSMODE bit set?
Please can anyone help?