• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Digital Signal Processors (DSP) » C5000 Ultra Low Power DSP » C5000 Ultra Low Power DSP Forum » TMDX5515EZDSP, CSL_USB_CdcExample_Out - can't open COM port
Share
C5000 Ultra Low Power DSP
  • Forum
  • Announcements
Options
  • Subscribe via RSS
Top 6 Wiki Links
  • C5000 Main Wiki
  • C5000 Software
  • C5515 Boot-Image Programmer
  • CSL (including CSL 3.00)
  • C5000 Connected Audio Framework
  • Porting C5000 Teaching ROM to C5535 eZdsp
  • TMDX5515EZDSP, CSL_USB_CdcExample_Out - can't open COM port

    TMDX5515EZDSP, CSL_USB_CdcExample_Out - can't open COM port

    This question is not answered
    Thodin
    Posted by Thodin
    on Aug 08 2011 05:46 AM
    Intellectual300 points

    Hello. I use 5515 EZDSP with Code Composer Studio Ver. 4.1.02002 from the disk from the box and TMS320C55XXCSL-LOWPWR-2.50.00.00. I built and started CSL_USB_CdcExample_Out in Release configuration. I got C5515 CDC ACM device (COM11), but HyperTerminal says that it can't open this COM port. Can anybody help me to solve this problem?

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    All Replies
    • Michael Risley
      Posted by Michael Risley
      on Aug 08 2011 10:04 AM
      Expert4620 points

      Thodin,

      This connection issue is on the Windows side. Have you verified that COM11 is the correct Port within your Windows Device Manager?

      HyperTerminal cannot open this COM port because it either does not exist or it is being used by another application.

      Thank You,
      Michael Risley
      Texas Instruments

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Thodin
      Posted by Thodin
      on Aug 08 2011 11:11 AM
      Intellectual300 points

      Hello Michael.

      No, everything is ok on the Windows side, COM port exists and not used by another application.

      I can print something from CSL_CDC_REQUEST_SET_LINE_CODING and CSL_CDC_REQUEST_GET_LINE_CODING cases of "csl_cdc.c" when HyperTerminal try to open COM port. I see that Windows makes 4 CSL_CDC_REQUEST_GET_LINE_CODING requests, then 1 CSL_CDC_REQUEST_SET_LINE_CODING request and then 2 CSL_CDC_REQUEST_GET_LINE_CODING requests. But Windows gets wrong information from DSP in answer on CSL_CDC_REQUEST_GET_LINE_CODING requests so it tells to HyperTerminal that it can't open COM port.

      I can also see that DSP gets line coding information from wrong fields in CSL_CDC_REQUEST_SET_LINE_CODING case.

       

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Michael Risley
      Posted by Michael Risley
      on Aug 08 2011 17:03 PM
      Expert4620 points

      Thodin,

      Were you able to install the C5515_CDC_ACM.inf file successfully?

      Thank You,
      Michael Risley
      Texas Instruments

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Thodin
      Posted by Thodin
      on Aug 08 2011 22:23 PM
      Intellectual300 points

      Yes, I installed C5515_CDC_ACM.inf file successfully.

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Thodin
      Posted by Thodin
      on Aug 09 2011 09:31 AM
      Intellectual300 points

      The problem is in getting SET LINE CODING request and answering on it. Sometimes, but hardly ever, DSP gets this request properly and answers to Windows properly.

      Handling of this request is in case CSL_CDC_REQUEST_SET_LINE_CODING in file "csl_cdc.c".

      I added printf of usbSetup.bmRequestType, usbSetup.bRequest, usbSetup.wValue, usbSetup.wIndex, usbSetup.wLength into this case in DSP program. Then I try to open this port on Windows as 9600, 8N1. Usually DSP prints 0xa1, 0x21, 0x0, 0x0, 0x7, but it is next request GET LINE CODING, it is not data from SET LINE CODING request. Sometimes I can see 0x80, 0x25, 0x0, 0x0, 0x6308. It is right data, 9600, 8N1, which must be after SET LINE CODING request. But it happens hardly ever so Windows can't set line coding.

       

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Michael Risley
      Posted by Michael Risley
      on Aug 09 2011 10:03 AM
      Expert4620 points

      I was able to get this test echoing on my system. Below are the steps I took:

      • Plug USBstick into PC & USB cable from J1 to PC.
      • Open C55 Low Power Chip Support Library v2.50.00\c55xx_csl\ccs_v4.0_examples\cslVC5505 as a CCS Project. Build it.
      • Open csl_general.h in C55 Low Power Chip Support Library v2.50.00\c55xx_csl\inc . Comment out line #157, "#define C5515_EVM". Also, verify that Line 127, "#define CHIP_C5505_C5515" is NOT commented.
      • Open C55 Low Power Chip Support Library v2.50.00\c55xx_csl\ccs_v4.0_examples\usb\CSL_USB_CdcExample as a CCS Project. Build it.
      • Create a new target config. Texas Instruments XDS100v2 USB Emulator, USBSTK5515.
      • Right click this config, click "Launch Selected Configuration".
      • Click "Connect To Target"
      • Click "Load Program", and select CDC example.out
      • Click "Run". The first time doing this will run the windows device driver wizard. Browse to the project folder & select the .inf file. This will register an additional COM device as "C5515 CDC ACM device". This is the COM# that you want to connect to using HyperTerm.
      • Your CCS Console should now display "USB SUSPEND Callback"
      • Open HyperTerminal. Connect to the corresponding COM#. 9600, 8, None, 1, None.
      • Tpying will echo back.


      I verified this with both HyperTerminal and TeraTerm. Hopefully these steps will help you pinpoint the issue. Let me know if this works.

      Thank You,
      Michael Risley
      Texas Instruments

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Thodin
      Posted by Thodin
      on Aug 10 2011 02:44 AM
      Intellectual300 points

      I tried to do these steps. In my sourses "#define C5515_EVM" is on line 159, not 157, so maybe you have different files.

      One more problem: it works only if I build Release configuration of library and CDC test. If I build Debug configuration and run it, I get unknown USB device with  PID 0 and VID 0 on Windows instead of "C5515 CDC ACM device".

      I still can't open C5515 CDC ACM device (COM11) on my desktop computer, but if I connect J1 to laptop, I can open C5515 CDC ACM device COM port there with HyperTerminal and get echo back on typing.

      My desktop computer and laptop have the same OSs - Win XP SP3, but laptop is much slower. I think it is the reason why it works. Laptop built on Celeron M 1500MHz CPU, desktop on Core 2 Duo E8400 @ 3.00GHz. So I think if you try to connect J1 to faster computer you will have the same problems.

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Thodin
      Posted by Thodin
      on Aug 10 2011 03:24 AM
      Intellectual300 points

      It also started to work on my desktop after I disabled USB2.0 in BIOS. So something wrong happens in CSL_CDC_REQUEST_SET_LINE_CODING case in file "csl_cdc.c" when Windows computer works fast.

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Michael Risley
      Posted by Michael Risley
      on Aug 10 2011 10:50 AM
      Expert4620 points

      It may be possible that we are using different versions. I am running v2.10 of the C55XCSL_LOWPOWER library. http://focus.ti.com/docs/toolsw/folders/print/sprc133.html

      Interesting that it works fine on your laptop. I did the test on a laptop, XPsp3 Core2. Its a long shot, but have you tried another terminal program, such as TeraTerm?

      Thank You,
      Michael Risley
      Texas Instruments

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Thodin
      Posted by Thodin
      on Aug 10 2011 11:27 AM
      Intellectual300 points

      I wanted to try Teraterm, but it suppotrs only COM1-COM4, I can't assign such numbers to "C5515 CDC ACM device". Maybe my Teraterm is too old.

      But I don't think another terminal program will work with this COM port because terminal program doesn't know anything about USB. Also I wrote that HyperTerm works on my desktop when USB works slowly, in USB 1.1 mode.

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Michael Risley
      Posted by Michael Risley
      on Aug 10 2011 11:37 AM
      Expert4620 points

      TeraTerm will support everything HyperTerm will. Regardless if it is USB - it should show up on the list because the driver configures it as a COM device. My "c5515 CDC ACM device" was configured for COM41 on my laptop, and it worked with both TT & HT, USB2.0. I have TeraTerm v4.63, and I think 4.7 is out now. I'm unsure why you are seeing success when running USB slowly on your desktop. I will have to contact others and look into that.

       

      Thank You,
      Michael Risley
      Texas Instruments

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Thodin
      Posted by Thodin
      on Aug 10 2011 12:01 PM
      Intellectual300 points

      I can't try new Tereterm now because I'm at home. Here is evening. I'll try it tomorrow morning.

      If you have a computer with CPU 3GHz or more somewhere near, please try to connect J1 to it.

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Thodin
      Posted by Thodin
      on Aug 11 2011 09:33 AM
      Intellectual300 points

      I tried new TeraTerm 4.70. It opens my COM11 and echo test works with it. 

      But I analized USB exchange using Device Monitoring Studio. Setting line parameters in case of TeraTerm also goes wrong but Teraterm doesn't worry about it, so it works.

      This is wrong part of scenario: Host sends Set Line Coding request (0x20) with data "80 25 00 00 00 00 07". Device (DSP) answers with Status 0xc0000004
      (don't know what does it mean, but good status - 0x00000000). Then host sends Get Line Coding request (0x21) and gets answer with data "A1 21 00 00 00 00 07". It is wrong answer, because device has to send "80 25 00 00 00 00 07" back.

      000018: Class-Specific Request (DOWN), 11.08.2011 17:56:24.562 +0.0
      Destination: Interface, Index 0
      Reserved Bits: 0
      Request: 0x20
      Value: 0x0
      Send 0x7 bytes to the device

       80 25 00 00 00 00 07


      000019: Control Transfer (UP), 11.08.2011 17:56:24.562 +0.0. Status: 0xc0000004
      Pipe Handle: 0x899254e8

      Setup Packet
       21 20 00 00 00 00 07 00                           ! ......
      Recipient: Interface
      Request Type: Class
      Direction: Host->Device
      Request: 0x20 (Unknown)
      Value: 0x0
      Index: 0x0
      Length: 0x7

      000020: Class-Specific Request (DOWN), 11.08.2011 17:56:24.562 +0.0
      Destination: Interface, Index 0
      Reserved Bits: 0
      Request: 0x21
      Value: 0x0
      Get 0x7 bytes from the device

      000021: Control Transfer (UP), 11.08.2011 17:56:24.562 +0.0. Status: 0x00000000
      Pipe Handle: 0x899254e8

       A1 21 00 00 00 00 07                          
      Setup Packet
       A1 21 00 00 00 00 07 00   
      Recipient: Interface
      Request Type: Class
      Direction: Device->Host
      Request: 0x21 (Unknown)
      Value: 0x0
      Index: 0x0
      Length: 0x7

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Ming Wei
      Posted by Ming Wei
      on Aug 16 2011 11:40 AM
      Intellectual2055 points

      Hi Thodin,

      There are a few things can make the example code went wrong:

      1. The Code Generation Tool (CGT) version: Please make sure your CGT is 4.3.6 and above. We have seen some issues with USB on CGT 4.3.5.

      2. Make sure #define CHIP_C5505_C5515 is there.

      3. Make sure J1 is connected to your PC USB port too. In fact, J2 is for power and emulation only, while J2 is the USB connection.

      I have tested the USB CDC example under CSL 2.50 on C5515 eZdsp v2, Both Debug and Release work fine with HyperTerminal (57600baud, 8-N-1, no autoflow control) in WinXP.

      Best regards,

      Ming

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Thodin
      Posted by Thodin
      on Aug 16 2011 11:53 AM
      Intellectual300 points

      Where I can download CGT?

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    12
    TI E2E™ Community
    • Support Forums
    • Blogs
    • Videos
    • Groups
    • Site Support & Feedback
    • Settings
    TI E2E™ Community Groups
    • TI University Program
    • Make the Switch
    • Microcontroller Projects
    • Motor Drive & Control
    Other Communities
    • Deyisupport
    • Designsomething.org
    • beagleboard.org
    • TI on Element 14
    • TI on TechXchangeSM
    Other Technical & Support Resources
    • WEBENCH® Design Center
    • Product Information Centers
    • Technical Documents
    • TI Design Network
    • TI Technical Articles
    • TI Training

    All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

    Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

    Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
    TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

    TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
    embedded processors, along with software, tools and the industry’s largest sales/support staff.

    © Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
    Trademarks | Privacy Policy | Terms of Use