08_cybulk Input/output error on linux

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
agba_3844561
Level 3
Level 3
5 likes given First like given

I'm trying to make my CYUSB3KIT to work on ubuntu. I went to Cypress/cyusb_linux_1.0.5/src and compiled the code correctly.

I'm using cyusb_linux_programmers_guide.pdf and runned the commands.

However some of the commands doesn't work. My main concern is with 08_cybulk. I get the following output:

./08_cybulk

     Successfully claimed interface
     Input/output error
     libusb: error [submit_bulk_transfer] submiturb failed error -1 errno=9
     Input/output error
     Segmentation fault (core dumped)

I think is the firmware I had to upload to fx3. Could that be it? could somebody point me the correct firmware?

There are also 2 more scripts that doesn't work:

./04_kerneldriver

     This device has no kernel driver attached to this interface
     Do you wish to attach/reattach a kernel driver ? (1=yes,0=no) : 1
     Entity not found

./06_setalternate

     Enter interface number you wish to claim : 0
     Interface 0 claimed successfully
     Enter alternate interface you wish to set : 1
     Entity not found

* When running ./05_claiminterface with 1 as input it also fails. It seams I have issues with other interfaces (1-4). It only works with 0 as an input.

PS: I'd like to report a small mistake on said document. There's a part that says: ./download_fx3 -i ../fx3_images/cyfxbulksrcsink.img -i ram but it should be '-t' instead of '-i' in front of the ram keyword.

0 Likes
1 Solution

As per the document, 08_cybulk is used to test the Bulkloop.c on FX2LP device.

If you want to test FX3, please test with the GUI and use cyfxbulklpautoenum.img

View solution in original post

0 Likes
8 Replies
KandlaguntaR_36
Moderator
Moderator
Moderator
25 solutions authored 10 solutions authored 5 solutions authored

Thank you for letting us know the typo in the document.

I can see that the typo is only in the description (highlighted in red color) and the snapshot showed it correctly.

I will create an internal ticket to update the same.

pastedImage_2.png

Coming to your main issue:

You are supposed to load the USB Bulk Loop example to the FX3 board and use 08_cybulk application.

Please confirm which firmware you have loaded to the CYUSB3KIT.

0 Likes

That is indeed the typo.

So for the linux software I only found the following firmwares within the fx3_images folder:

  1. cyfxbulklpautoenum.img 
  2. cyfxflashprog.img
  3. cyfxisolpmaninout.img
  4. cyfxbulksrcsink.img   
  5. cyfxisolpauto.img
  6. cyfxisosrcsink.img

I tried with number 1 and 4. And with the default firmware of the tool (just powered up without the J4 jumper).

It's weird because using cyusb_linux GUI I can get bulk loopback responses using cyfxbulklpautoenum.img

Regards,

0 Likes

cyfxbulklpautoenum.img is meant to loop back the data sent over the OUT endpoint into IN endpoint.

This is working as expected in your case right?

Please let me know what is your expectation?

Regards,

Sridhar

0 Likes

If with cyfxbulklpautoenum.img the 08 script is supposed to work then no, it's not the case for me.

Regards,

PS: sorry for the late reply. I was on holidays for christmas.

0 Likes

with GUI, cyfxbulklpautoenum.img is working fine but with 08_cybulk it is not working right?

Let me try with 08_cybulk.

0 Likes

That is exactly my problem.

Did you manage to make it work correctly?

Regards,

0 Likes

More details:

When using cyusb_linux:

step1.png

step1.png

step2.png

step10.png

step11.png

From the scripts:

I run the command directly after doing the thing of the screencaptures:

~$ ./08_cybulk

Error in claiming interface

So I unplug the FX3 device and replug it and do the following:

~$ ./download_fx3 -i ../fx3_images/cyfxbulklpautoenum.img -t ram

FX3 firmware programming to ram completed

~$ ./08_cybulk

Successfully claimed interface

Input/output error

libusb: error [submit_bulk_transfer] submiturb failed error -1 errno=9

Input/output error

Segmentation fault (core dumped)

0 Likes

As per the document, 08_cybulk is used to test the Bulkloop.c on FX2LP device.

If you want to test FX3, please test with the GUI and use cyfxbulklpautoenum.img

0 Likes