Dear Mr Klaus,
I'm sorry for the delay in testing the way you asked, but finally did.
Here is what the debug shows in a normal timeout in my Mac:
[ 2.132930] [00005103] libusb: debug [ep_to_pipeRef] converting ep address 0x81 to pipeRef and interface
[ 2.132944] [00005103] libusb: debug [ep_to_pipeRef] pipe 1 on interface 0 matches
[ 2.132992] [00005103] libusb: debug [libusb_get_next_timeout] next timeout in 0.049936s
[ 2.132996] [00005103] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 2.133000] [00005103] libusb: debug [handle_events] poll() 3 fds with timeout in 50ms
[ 2.184144] [00005103] libusb: debug [handle_events] poll() returned 0
[ 2.184268] [00005103] libusb: debug [libusb_cancel_transfer]
[ 2.184291] [00005103] libusb: debug [ep_to_pipeRef] converting ep address 0x81 to pipeRef and interface
[ 2.184309] [00005103] libusb: debug [ep_to_pipeRef] pipe 1 on interface 0 matches
[ 2.184325] [00005103] libusb: warning [darwin_abort_transfers] aborting all transactions on interface 0 pipe 1
[ 2.184491] [00005103] libusb: debug [darwin_abort_transfers] calling clear pipe stall to clear the data toggle bit
[ 2.184531] [00006107] libusb: debug [darwin_async_io_callback] an async io operation has completed
[ 2.185103] [00005103] libusb: debug [libusb_get_next_timeout] no URB with timeout or all handled by OS; no timeout!
[ 2.185127] [00005103] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 2.185138] [00005103] libusb: debug [handle_events] poll() 3 fds with timeout in 60000ms
[ 2.185166] [00005103] libusb: debug [handle_events] poll() returned 1
[ 2.185175] [00005103] libusb: debug [op_handle_events] checking fd 23 with revents = 0
[ 2.185181] [00005103] libusb: debug [op_handle_events] checking fd 25 with revents = 0
[ 2.185188] [00005103] libusb: debug [op_handle_events] checking fd 27 with revents = 1
[ 2.185198] [00005103] libusb: debug [darwin_handle_callback] handling bulk completion with kernel status -536870165
[ 2.185206] [00005103] libusb: warning [darwin_transfer_status] transfer error: timed out
[ 2.185213] [00005103] libusb: debug [usbi_handle_transfer_completion] transfer 0x7f9d70609b50 has callback 0x1177257b0
[ 2.185220] [00005103] libusb: debug [sync_transfer_cb] actual_length=0
Here is what the debug shows when data is received in my Mac
[ 7.394170] [00005103] libusb: debug [ep_to_pipeRef] converting ep address 0x81 to pipeRef and interface
[ 7.394184] [00005103] libusb: debug [ep_to_pipeRef] pipe 1 on interface 0 matches
[ 7.394232] [00005103] libusb: debug [libusb_get_next_timeout] next timeout in 0.049937s
[ 7.394236] [00005103] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 7.394240] [00005103] libusb: debug [handle_events] poll() 3 fds with timeout in 50ms
[ 7.395218] [00006107] libusb: debug [darwin_async_io_callback] an async io operation has completed
[ 7.395279] [00005103] libusb: debug [handle_events] poll() returned 1
[ 7.395289] [00005103] libusb: debug [op_handle_events] checking fd 23 with revents = 0
[ 7.395294] [00005103] libusb: debug [op_handle_events] checking fd 25 with revents = 0
[ 7.395300] [00005103] libusb: debug [op_handle_events] checking fd 27 with revents = 1
[ 7.395307] [00005103] libusb: debug [darwin_handle_callback] handling bulk completion with kernel status 0
[ 7.395313] [00005103] libusb: debug [usbi_handle_transfer_completion] transfer 0x7f9d70609b50 has callback 0x1177257b0
[ 7.395319] [00005103] libusb: debug [sync_transfer_cb] actual_length=10
Here is what the debug shows in the Cubieboard:
[ 8.440985] [0000048b] libusb: debug [add_to_flying_list] arm timerfd for timeout in 50ms (first in line)
[ 8.441322] [0000048b] libusb: debug [submit_bulk_transfer] need 1 urbs for new transfer with length 64
[ 8.441637] [0000048b] libusb: debug [libusb_handle_events_timeout_completed] doing our own event handling
[ 8.441889] [0000048b] libusb: debug [handle_events] poll() 4 fds with timeout in 60000ms
[ 8.491002] [0000048b] libusb: debug [handle_events] poll() returned 1
[ 8.491236] [0000048b] libusb: debug [handle_events] timerfd triggered
[ 8.491414] [0000048b] libusb: debug [libusb_cancel_transfer]
[ 8.492215] [0000048b] libusb: debug [disarm_timerfd]
[ 8.492399] [0000048b] libusb: debug [handle_events] poll() 4 fds with timeout in 0ms
[ 8.492573] [0000048b] libusb: debug [handle_events] poll() returned 1
[ 8.492750] [0000048b] libusb: debug [reap_for_handle] urb type=3 status=-2 transferred=0
[ 8.492924] [0000048b] libusb: debug [handle_bulk_completion] handling completion status -2 of bulk urb 1/1
[ 8.493091] [0000048b] libusb: debug [handle_bulk_completion] abnormal reap: urb status -2
[ 8.493261] [0000048b] libusb: debug [handle_bulk_completion] abnormal reap: last URB handled, reporting
[ 8.493430] [0000048b] libusb: debug [usbi_handle_transfer_cancellation] detected timeout cancellation
[ 8.493598] [0000048b] libusb: debug [disarm_timerfd]
[ 8.493763] [0000048b] libusb: debug [usbi_handle_transfer_completion] transfer 0x95bee654 has callback 0x95601334
[ 8.493932] [0000048b] libusb: debug [sync_transfer_cb] actual_length=0
It doesn't change when it has messages!
Do you have any idea of what is wrong?
Thank you again!