0
$\begingroup$

Rosanswers logo

We had some trouble yesterday connecting kinect to a newish laptop running ubuntu 10.04 and with two usb3.0 ports. Testing it with openni_camera proved rather uncommunicative (i.e. no response from the kinect).

In the end this turned out to be exactly a problem with kinect and the usb3.0 ports as we also found a usb2.0/esata combo port on the laptop which worked without a problem.

We haven't got a solution for the 3.0 problem yet. Has anyone else had a similar problem? Is it even possible?


Originally posted by Daniel Stonier on ROS Answers with karma: 3170 on 2011-02-23

Post score: 6

$\endgroup$

4 Answers 4

0
$\begingroup$

Rosanswers logo

Hello All,

I also got the problem with USB3 and the Kinect. I tried with the an onboard NEC controler and with an ASMedia pcie expansion card. I also got the "USB3: ERROR no room on ep ring" error. The basic problem is, that the bulk-ep-ring is limited to 1, and this will not work with cameras with large data sizes, as the kinect. The exact description can be found there: http://www.spinics.net/lists/linux-usb/msg49736.html and http://www.spinics.net/lists/linux-usb/msg52072.html

You will also find a Patch there, wich will work around the problem by enlarging the ep-ring, you will have to recompile your kernel, but this is still better than having not the posibility to use the kinect on USB3 ports.

I simply changed the following lines, without a module parameter, as propost in the kernel patch:

drivers/usb/host/xhci-mem.c:

    if (usb_endpoint_xfer_isoc(&ep->desc))
        virt_dev->eps[ep_index].new_ring =
            xhci_ring_alloc(xhci, 8, true, mem_flags);
+   else if (usb_endpoint_xfer_bulk(&ep->desc))
+       virt_dev->eps[ep_index].new_ring =
+           xhci_ring_alloc(xhci, 8,
+                   true, mem_flags);
    else
        virt_dev->eps[ep_index].new_ring =
            xhci_ring_alloc(xhci, 1, true, mem_flags);

drivers/usb/host/xhci.h:
-   #define TRPS_PER_SEGMENT    64
+   #define TRPS_PER_SEGMENT    256
        

I need this change for my multi-kinect setup. I'm using a HighPoint RocketU 1144A to attach 4 Kinects to my pc :) Just testet the setup, 4Kinects working on one PC all connected to one RocketU card. working like a charm with ROS

greetings Michael


Originally posted by MichaelH with karma: 106 on 2011-11-13

This answer was ACCEPTED on the original site

Post score: 9


Original comments

Comment by MichaelH on 2012-06-13:
Hi, after some time, i want to update this post for all who are still trying to use the Kinect and USB3. The Kernel 3.4.1 did a lot of updates in the xhci-code and finally the kinect is working fine with USB3, at least with Kernel 3.4.2 http://www.kernel.org/pub/linux/kernel/v3.0/ChangeLog-3.4.1 commit 33b2831ac870d50cc8e01c317b07fb1e69c13fe1

I hope this issue is finally closed greetings

Comment by niosus on 2013-01-29:
@MichaelH, nope, just installed the 3.4.2 kernel on ubuntu 12.04 and still the usb 3.0 didn't work. Could you maybe be a bit more specific on how do you apply this patch? Thanks in advance!

Comment by Philip on 2013-03-08:
@nios: We had the same problem in our lab as the original poster (albeit under 12.04, 64bit). To my knowledge, the solution was either to do what @MichaelH suggested OR to upgrade to a new kernel. We upgraded to kernel 3.4.2 and this solved the problem.

$\endgroup$
0
$\begingroup$

Rosanswers logo

Hi, we've had this problem with our usb devices on two motherboards in our lab. It seems that some motherboards and their USB 3.0 ports just don't work with Ubuntu. We have only used 64 bit 10.04 here, so it may be worth trying 32 bit or definitely upgrading to 10.10.

Your best bet with this will be to check the official Ubuntu forums for posts with your motherboard and also check linuxquestions.org's hardware compatibility list.

Have you had any luck with an FTDI chip like an Arduino or even a flash drive/USB hard drive? Linux is supposed to have USB 3.0 built into the kernel since 2009, but it looks like the manufacters may not have implemented this well.


Originally posted by Chad Rockey with karma: 4541 on 2011-02-23

This answer was NOT ACCEPTED on the original site

Post score: 2


Original comments

Comment by Daniel Stonier on 2011-02-24:
For the record, we were on 32 bit and had problems on 10.04. Also our pen drives worked, but I've read its a bit hit and miss. Our intern is leaving tomorrow, so won't have any more time to do testing to check this out until we invest in some new laptops. Thanks for the information though!

$\endgroup$
0
$\begingroup$

Rosanswers logo

I was having the same problem with the Turtlebot Asus Eee 1215n/1215b and ubuntu 10.04.2, but managed to work around it by just using a USB 2.0 port instead.

You have to enable breaker 0 first to turn the kinect on!


Originally posted by fenn with karma: 11 on 2011-11-04

This answer was NOT ACCEPTED on the original site

Post score: 1

$\endgroup$
0
$\begingroup$

Rosanswers logo

I had the same problem with Ubuntu 12.04, Kernel 3.2. I just updated the kernel to 3.4.0 and now it works ok on all the USB ports (3.0 and 2.0).


Originally posted by criatura with karma: 11 on 2013-05-26

This answer was NOT ACCEPTED on the original site

Post score: 1


Original comments

Comment by bit-pirate on 2013-05-26:
Cool, have to try this. Thx for letting us know!

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.