2 Replies Latest reply on Apr 9, 2010 6:07 PM by userc_45112

    need help getting CY7C67300 to enumerate with OS


      Hi there,
      I am using a CY7C67300 usb controller, which is part of this Xilinx development board: http://www.xilinx.com/products...HW-V4-ML405-UNI-G.htm

      I am currently attempting to use the CY3663 development tools to make my CY7C67300 be a simple peripheral, running in standalone mode. simple example 3 (se3) from the "USB Multi-Role Device Design By Example" uses GDB to program and debug the controller, and is supposed to make SIE1 enumerate as an HID when connected to a PC. Instead, it comes up as "uknown device" with VID=0x0000, PID=0x0000.

      I have also tried an even simpler test of not changing the default values for device descriptor that the BIOS starts up with, and it still doesn't work. I know for sure that SUSB1_DEV_DESC_VEC (0x00B4) is pointing to a memory location that contains the default Cypress device descriptor (I checked with gdb). So basically there are all the default values for device descriptor/configuration descriptor/string descriptor, and then I call susb_init( SIE1, USB_FULL_SPEED );, and on my windows XP box, it pops up as "unknown device" with 0x000 for VID and PID.

      From my understanding of the documentation, that should absolutely, 100% work. I'm completely stumped and would be grateful for any kind of advice, be it a direct answer, or just pointing me to a resource that can help me solve the problem. Some things that could be wrong, i guess, are configuration settings of some kind (like in fwxconfig.h or usb.c or fwxmain.c or something?) or some issue with this CY7C67300 chip in a different development board than the ones included with the CY3663 development kit. I have spent the last 2 days futzing around in all those files, but couldn't get anything different to happen. I also tried making having it run from EEPROM instead of being sent over the USB with GDB, but that didn't change anything.

      I've looked through all the knowledge base articles relating to the CY3663, as well as read all the documentation to the best of my abilities (I am a complete neophyte at this), so please don't just tell me to look there, unless you know of a specific thing that I overlooked.

      Thanks in advance to anybody who takes the time to try and help me.

      -Kevin Macdonald

        • 1. Re: need help getting CY7C67300 to enumerate with OS
                  bump. Still haven't figured this out... Anybody know anything at all about this?   
          • 2. Re: need help getting CY7C67300 to enumerate with OS
                    Hello, I'm having the same problem using the demo projects on the CY3663 CD, namely the USB device not being recognized by the OS. Have you been successful in making it work?   
            I'm currently using a Xilinx ML405 dev board which has a Cypress CY7C67300 USB controller -- first I thought that not being made for such a board the projects would not work, but seeing that other people had trouble with them made me believe that something is not right with the files or settings themselves.   
            First of all, let me mention that I'm accessing the controller directly by means of SCAN, and not doing anything else with the rest of the board. I'm just trying to understand the framework and how to properly program the controller.   
            My biggest concern is not being able to program the BIOS properly, the CY3663 has a bunch of DIP switches that need to be set after booting up, my board hasn't got any, just one EEPROM and two jumpers that bypass it. I've tried programming it with the jumpers on and off and still doesn't work. Is there any way I can be sure that the BIOS was properly written?   
            This is all I have at the moment, if you need any more information I'll try to provide it. Thanks.