Orbbec openi problem with usb

Hi guys,
i’ve installed the Openi that was provided by orbbec sometime back. However when i open the niviewer i get the error below. I’ve tried some of the hooks proposed in other threads but they did not work.

Any suggestion? the openi i used is about two months old

thanks

Cesc

cesc@cesc-1000H:~/OpenNI-Linux-x86-2.2/Tools$ ./NiViewer
1143 INFO New log started on 2016-02-14 12:12:15
1800 INFO — Filter Info — Minimum Severity: VERBOSE
3024 VERBOSE No override device in configuration file
4591 VERBOSE Configuration has been read from ‘./OpenNI.ini’
4730 VERBOSE OpenNI 2.2.0 (Build 33)-Linux-x86 (Aug 27 2015 14:57:47)
4842 VERBOSE Using ‘./OpenNI2/Drivers’ as driver path
4939 VERBOSE Looking for drivers in drivers repository ‘./OpenNI2/Drivers’
14145 INFO New log started on 2016-02-14 12:12:15
15693 INFO — Filter Info — Minimum Severity: VERBOSE
16387 VERBOSE Initializing USB…
32501 INFO USB is initialized.
32907 INFO Device connected: Orbbec Orbbec (2bc5/0403@1/6)
37050 INFO New log started on 2016-02-14 12:12:15
37258 INFO — Filter Info — Minimum Severity: VERBOSE
37387 VERBOSE Initializing USB…
80660 INFO USB is initialized.
81063 VERBOSE Trying to open device by URI ‘(NULL)’
82993 VERBOSE Initializing device sensor…
87101 VERBOSE Configuring module ‘Device’ from section ‘Device’ in file ‘/home/cesc/OpenNI-Linux-x86-2.2/Tools/OpenNI2/Drivers/Orbbec.ini’…
87435 INFO Setting Device.UsbInterface to 2…
87553 INFO Device.UsbInterface value did not change.
88829 INFO Module ‘Device’ configuration was loaded from file.
90204 VERBOSE Connecting to USB device…
90345 VERBOSE Trying to open sensor ‘2bc5/0403@1/6’…
90683 VERBOSE Shutting down USB depth read thread…
91330 VERBOSE Shutting down USB image read thread…
91778 VERBOSE Device closed successfully
92307 VERBOSE Shutting down Scheduler thread…
openDevice failed:
Could not open “2bc5/0403@1/6”: Failed to open the USB device!

As Linux-User, you can do this:
Unplug every USB device containing a microphone, including your webcam and the orbbec camera. Then, do this:

sudo rmmod snd_usb_audio

(The command disables all USB microphones …)
Afterwards you reconnect the orbbec camera and start the nviewer again. You can undo these settings with a reboot of your pc.

Cool , let me try :).

Thanks much!!!

Hi,

I actually just tried that and does not work either.

1 - I connect the astra

dmesg:

[ 473.866351] usbcore: registered new interface driver snd-usb-audio

  1. snd-usb-audio is loaded. So as suggested i remove the usb and run the command to remove the device:

cesc@cesc-1000H:~$ sudo rmmod snd_usb_audio

  1. I connect again the astra, dmesg:

[ 786.209594] uvcvideo: Found UVC 1.00 device Astra Pro HD Camera (2bc5:0501)
[ 786.249116] input: Astra Pro HD Camera as /devices/pci0000:00/0000:00:1d.7/usb1/1-2/1-2.1/1-2.1:1.0/input/input13
[ 786.324488] usb 1-2.2: new high-speed USB device number 9 using ehci-pci
[ 786.417231] usb 1-2.2: New USB device found, idVendor=2bc5, idProduct=0403
[ 786.417251] usb 1-2.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 786.417264] usb 1-2.2: Product: ASTRA Pro
[ 786.417276] usb 1-2.2: Manufacturer: ORBBEC
[ 786.712897] usbcore: registered new interface driver snd-usb-audio
[ 787.792942] retire_capture_urb: 8 callbacks suppressed

But again i see the same error. Do you guys know what is going on?

Thanks,

Cesc

Dear folks,

I just realized that is a matter of running the application with a non-root user …

As a root it does work. I guess there is something related how the driver is loaded. I will dig a little bit more.

Thanks

Hi Fguim,
yes indeed. To use a Orbbec camera without root, you can do this.
Generate a file with the name orbbec-usb.rules and with the following content. (Ignore the wrong line breaks. Every line starts with SUB… and ends with :=“video”).

SUBSYSTEM==“usb”, ATTR{idProduct}==“0401”, ATTR{idVendor}==“2bc5”, MODE:=“0666”, OWNER:=“root”, GROUP:=“video”
SUBSYSTEM==“usb”, ATTR{idProduct}==“0402”, ATTR{idVendor}==“2bc5”, MODE:=“0666”, OWNER:=“root”, GROUP:=“video”
SUBSYSTEM==“usb”, ATTR{idProduct}==“0403”, ATTR{idVendor}==“2bc5”, MODE:=“0666”, OWNER:=“root”, GROUP:=“video”
SUBSYSTEM==“usb”, ATTR{idProduct}==“0404”, ATTR{idVendor}==“2bc5”, MODE:=“0666”, OWNER:=“root”, GROUP:=“video”
SUBSYSTEM==“usb”, ATTR{idProduct}==“0405”, ATTR{idVendor}==“2bc5”, MODE:=“0666”, OWNER:=“root”, GROUP:=“video”

The file lists the vendor id (2bc5) and the product id’s (0401, 0402, 0403, …) of different orbbec cameras. This list might not be complete! To check this, connect your camera and type this in a console.

lsusb

You should see a list of your usb devices. Your camera has the product id 0403. So, you should see something like this.

Bus 001 Device 004: ID 2bc5:0403

If the product id of your camera is not mentioned in the file orbbec-usb.rules above, you have to extend this file for your camera.

Afterwards you do this.

sudo cp orbbec-usb.rules /etc/udev/rules.d/

To activate it immediately after reconnecting the Orbbec camera, you can do this.

udevadm control --reload-rules

Alternatively, you can just restart your PC.

Cheers,
Malte

This is great :slightly_smiling:

thanks for the tips, will proceed with the indications

cesc

I had the same problem as Fguim and tried Malte’s suggestion with the orbbec-usb.rules folder but that did not work for me. So knowing it was a root permissions issues and seeing that the error message was not being able to write to /tmp, I did “# chown linaro /tmp” and then was able to run just fine.