4 Replies Latest reply on Mar 5, 2013 4:19 AM by userc_39074

    Bulk Out transfer Error 997



      I am working on CYUSB3KIT-001 EZUSB FX3 Development Kit and I have installed all the required softwares in my PC.


      Now , when I try to Transfer data to the Development Board using the Bulk out endpoint(0x02) , I get the error " BULK OUT transfer
      BULK OUT transfer failed with Error Code:997


      Before trying this transmission , I downloaded the firmware CyBootProgrammer.img on the Development Kit. The configuation used were:


      PMOD  Config=>     J96 - 2<-->3 short, J97 - open , J98 - 2<-->3 short


      SW25 :  1- OFF, 2- OFF, 3- ON, 4- OFF.


      I think these configurationsa are correct because the board got Programmed Successfully. I got the status message " Programming SPIFLASH Succeeded".


      After that, I reset the firmware and tried to Transfer data, I am getting this error 997.


      If someone has encountered this problem or know how to resolve it, please help me. I am stuck here.


      I am attaching the image of USB control center error for better explanation of the problem.


      Thanks in advance.....

        • 1. Re: Bulk Out transfer Error 997



          CyBootProgrammer.img is to program the flash devices connected to FX3. It will be downloaded to FX3 RAM before it starts programming the flash device connected to FX3. In this case, you will get that error if you try to transfer some data to Bulk OUT endpoint.


          Please let us know more about your application. What is your goal of doing that. Please let me know so that I can help you move forward in developing your application.


          If you are just trying to transfer some data to Bulk OUT endpoint then I would recommend you to use the USBBulkSourceSink.img from the folder \workspace\USBBulkSourceSink\Debug\.




          Sai Krishna.

          • 2. Re: Bulk Out transfer Error 997

            Thanks RSKV. It worked . But I had to change the PMOD  to [ J96 - open , J97 - 2<-->3 short J98 - 1<-->2 short] and then program the board, but the int: eresting thing was that if I reset the board with the same same configuration, it doesn't show thee Alternate Setting 0 endpoints : Bulk out in and bulk in. Its like it gets refreshed. So then I made the PMOD again to [ J96 - 2<-->3 short , J97 - open J98 - 2<-->3 short],I got the Cypress USBStreamer Example(I have attached the file) and transfer worked properly.


            And one more interesting thing is that when I had the previous configuratiomn of PMOD  [ J96 - 2<-->3 short , J97 - open J98 - 2<-->3 short], I kept trying to program board, but everytime it prompoted me to reset the board. But even after reset the board, the same message kept prompting again and again...Any idea why would that happen ? and how can I program it again with different program.?


            Do I need to change the PMOD to some other value to program the board?


            And one more thing, if I make a new project, do i need JTAG debugger to create ythe image file that is programmed to board or just building the program creates the image file..




            Thanks for the help.. i need some more help...

            • 3. Re: Bulk Out transfer Error 997



              About my  application, Right now, I have a camera from which video data is transferred to PC via USB 2.0. So what I want to do is to add USB 3.0 functionality between Camera and PC so as to have a faster communication. The data from camera will be in 2.0 format which will be sent to USB3.0 kit and then to USB3.0 cable to PC.


              Any suggestions for me....?


              I bought this Cypress USB3.0 Kit recently and am trying get familiar with the kit. so tried to download some codes to it and see if transfer is happening properly.





              • 4. Re: Bulk Out transfer Error 997



                That is right.


                Let say you are using SPI flash to store your image file. Then you set the PMOD settings for SPI boot.


                But if you want to program SPI flash again then you need to change the PMOD settings to USB boot.


                When you change PMOD settings to USB boot then FX3 will enumerate as Cypress bootloader device and Control center will allow you to program the SPI flash again. 


                If you are just hitting the reset by keeping the same PMOD settings for SPI boot then FX3 RAM will be loaded with the image file that is there in the SPI flash. So you need to change the PMOD settings. Otherwise you can also try the following steps:


                Please note that these steps are valid for SPI boot only.


                Remove the jumper J101 or 103 and hit the reset. Connect this jumper back program the flash again.


                In case of I2C boot, remove the jumper J42 or 45 and hit the reset. Then connect that jumper back and program.


                Coming to the questions related to .img file, You just need to build the project to get the .img file.




                sai krishna.