У меня ноутбук Samsung NP350V5C (с процессором Core i5-3210M) с двумя портами USB2.0 и двумя портами USB3.0. Операционная система:
$ uname -a
Linux pe 3.5.0-26-generic #42-Ubuntu SMP Fri Mar 8 23:18:20 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
У меня есть камера Asus Xtion Pro Live, подключенная к порту USB 2.0. Это не работает. Кажется, проблема здесь кроется (используя xhci_hcd, «недостаточно пропускной способности», см. Ниже):
$ dmesg
....
[ 3162.597428] usb 3-3: new high-speed USB device number 2 using xhci_hcd
[ 3162.617432] usb 3-3: New USB device found, idVendor=1d27, idProduct=0600
[ 3162.617440] usb 3-3: New USB device strings: Mfr=2, Product=1, SerialNumber=0
[ 3162.617444] usb 3-3: Product: PrimeSense Device
[ 3162.617447] usb 3-3: Manufacturer: PrimeSense
[ 3162.617912] xhci_hcd 0000:00:14.0: Not enough bandwidth. Proposed: 1663, Max: 1607
[ 3162.617920] xhci_hcd 0000:00:14.0: Not enough bandwidth
[ 3162.617933] usb 3-3: can't set config #1, error -12
На другом ноутбуке (Lenovo, тот же процессор, также Ubuntu 12.10, но 32bit ) , ehci_hcd используется, и там камера работает нормально.
Итак, проблема, похоже, в xhci_hcd. Есть ли какое-то решение этой проблемы или возможность принудительного использования ehci_hcd?
У меня было то же сообщение об ошибке. И я решил его путем простого включения Xtion в порт USB 2.0 ... Но кажется, что Вы уже попробовали это.
я не попытался к , обновляют встроенное микропрограммное обеспечение Xtion , я включил его в порт USB 2.0, который работал на меня, но ссылка может быть полезной для Вас.
Можно следовать этим инструкциям:
http://www.pcl-developers.org/xhci-hcd-I-hate-you-USB-3-0-and-Primesense-Asus-Xtion-td5707949.html
, которому Это должно помочь, если у Вас есть Контроллер USB3.0, который имеет отдельный контроллер USB2.0. Если не Вы не будете больше видеть свою Шину USB3.0 при вводе lsusb при удалении xhci_hcd. Если это верно, необходимо добавить его снова (в/etc/modules) и удалить его из черного списка. (Это имело место для меня. Затем единственная вещь, которую можно сделать, покупает более новый. Кажется, что более новые работают лучше (но также и только с Linux 3.4 и выше), но я не на 100% уверен, было ли это определенно работать на Вас)
на моей машине я решил проблему путем отключения поддержки xHCI и Передачи EHCI в материнской плате bios
Инструкции в http://www.pcl-developers.org/xhci-hcd-I-hate-you-USB-3-0-and-Primesense-Asus-Xtion-td5707949.html (помещение в черный список xhci_hcd
и использование ehci_hcd
вместо этого) не работали на меня. При попытке этого камера просто не обнаружилась бы вообще в dmesg
.
Обновление микропрограммного обеспечения камеры работало на меня.
Детали: https://<час> github.com/nh2/asus-xtion-fix
Примечание, что после обновления микропрограммы, я только заставил NiViewer
из OpenNI 2 работать с ним до сих пор; тот от OpenNI 1 не работает (уже?).
Поскольку я искал в течение многих часов, я хочу внести то, что работало на меня (Intel USB 3.0):
я просто обновил до последнего чиновник встроенное микропрограммное обеспечение Xtion от Asus, версии 5.8.22. Это, кажется, поддерживает и OpenNI 1.x и 2.x совместимость при решении "bandwith" ошибок/кода 10 в Windows.