Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kinect incompatibility with ubuntu 14.04 #171

Closed
jihoonl opened this issue Nov 7, 2014 · 31 comments

Comments

Projects
None yet
9 participants
@jihoonl
Copy link
Member

commented Nov 7, 2014

Recently issue. #170

Kinect is not working with official turtlebot laptop, asus x200ca.

@bit-pirate

This comment has been minimized.

Copy link
Member

commented Nov 7, 2014

@AlexReimann found out that it's working fine on our ASUS X201E laptop running Kubuntu 14.04.

@corot reported something similar. The Kinect is working fine on his Kubuntu laptop.

@AlexReimann

This comment has been minimized.

Copy link

commented Nov 7, 2014

Also works on an older ASUS laptop with Ubuntu 14.04. I even updated to the same kernel version (nothing else changed) and it still works.
One odd thing I found out is, that the Kinect seems to get registered with less rights on the asus x200ca (no write rights for others).

@bit-pirate

This comment has been minimized.

Copy link
Member

commented Nov 7, 2014

@corot which laptops are you running in your lab?

@corot

This comment has been minimized.

Copy link
Contributor

commented Nov 7, 2014

ASUS F201E

2014-11-07 12:50 GMT+01:00 Marcus Liebhardt notifications@github.com:

@corot https://github.com/corot which laptops are you running in your
lab?


Reply to this email directly or view it on GitHub
#171 (comment).

@bit-pirate

This comment has been minimized.

Copy link
Member

commented Nov 10, 2014

ASUS F201E

Are you sure? Is it not "ASUS X201E"?

The Kinect is working for us on the X201Es.

PS: F201E and X201E are supposed to be the same: http://techonbudget.com/laptops/asus-x201e-f201e-cheap-mini-laptop-overview

@AlexReimann

This comment has been minimized.

Copy link

commented Nov 10, 2014

I run an update on one of the old laptops with a not so recent trusty version (Kernel version 3-13.0-32). After updating kinect doesn't work anymore.

Update log:
http://pastebin.com/t6MJ3Cp5
Edit: Downgraded the kernel, doesn't seem to be it but something else (dbus?)

@AlexReimann

This comment has been minimized.

Copy link

commented Nov 12, 2014

I did some searching if anybody else has recent problems with ubuntu 14.04 and kinect / webcams / usb but couldn't dig anything up.
I checked if the problem happens only with 14.04.1, but the downloadable 14.04 version from the Ubuntu website already has the problem.

One thing I saw is that the permissions of the kinect in /dev/bus/usb/ changed from rw- rw- rw- to rw- rw- r--

It is not a ros problem, as the demo files of openni already can't find the kinect after a clean installation.

@bit-pirate

This comment has been minimized.

Copy link
Member

commented Nov 12, 2014

@tfoote are you aware of this issue? I guess, this would have impact on a lot of ROS users.

@AlexReimann does the Kinect work, when you change the permissions manually?

@AlexReimann

This comment has been minimized.

Copy link

commented Nov 12, 2014

Nope.
On Nov 12, 2014 6:20 PM, "Marcus Liebhardt" notifications@github.com
wrote:

@tfoote https://github.com/tfoote are you aware of this issue? I guess,
this would have impact on a lot of ROS users.

@AlexReimann https://github.com/AlexReimann does the Kinect work, when
you change the permissions manually?


Reply to this email directly or view it on GitHub
#171 (comment).

@tfoote

This comment has been minimized.

Copy link
Contributor

commented Nov 12, 2014

I haven't seen another report of this. It sounds like it should be pushed upstream probably to the debian/ubuntu packaging. Can someone confirm changing the permissions make it work?

@trainman419

This comment has been minimized.

Copy link

commented Nov 18, 2014

I'm seeing the same thing on an older Asus 1215N laptop; my Kinect is present in lsusb, but the openni_node and the Sample-NiSimpleViewer can't find it.

The freenect driver works on the same laptop, in the same scenario (permissions, etc).

@jihoonl

This comment has been minimized.

Copy link
Member Author

commented Nov 18, 2014

@trainman419 you meant freenect_driver works with permissions change?

@trainman419

This comment has been minimized.

Copy link

commented Nov 18, 2014

@jihoonl yes; the freenect driver works if I set the permissions properly, while the openni driver doesn't work regardless of how I set the device permissions.

@AlexReimann

This comment has been minimized.

Copy link

commented Nov 18, 2014

Just found out the same as @trainman419
Also on our "old" Asus X201E where kinect + openni + ros indigo + ubuntu 14.04 is working, I found that the permissions get set through a 40-libopenni-sensor-primesens0.rules udev rule file in /lib/udev/rules.d/, which has an entry tagged avin mod. No idea where that comes from though.

The ros-indigo-openni-camera changed since the installation was done on this. So maybe something changed in the openni driver?

@trainman419

This comment has been minimized.

Copy link

commented Nov 18, 2014

I have the following versions of openni-related packages:

$ dpkg -l libopenni-dev libopenni-sensor-primesense0 ros-indigo-openni-camera 
ii  libopenni-dev  1.5.4.0-7    amd64        headers for OpenNI 'Natural Inter
ii  libopenni-sens 5.1.0.41-3   amd64        PrimeSense sensor modules for the
ii  ros-indigo-ope 1.9.2-1trust amd64        A ROS driver for OpenNI depth (+ 
@AlexReimann

This comment has been minimized.

Copy link

commented Nov 18, 2014

ros-indigo-openni-camera was version 1.9.2-1trusty-20140905-011 on the working laptop, others same as above

@trainman419

This comment has been minimized.

Copy link

commented Nov 18, 2014

@trainman419

This comment has been minimized.

Copy link

commented Nov 18, 2014

Also of note, it looks like the OpenNI drivers were pulled from Jochen Sprickerhof's PPA prior to Trusty; and in Trusty the openni debs are now included in the Ubuntu universe repository: http://packages.ubuntu.com/source/trusty/openni

I've confirmed this by installing the saucy versions of the openni debs from https://launchpad.net/~v-launchpad-jochen-sprickerhof-de/+archive/ubuntu/pcl . They work on 14.04, and also include the avin mod udev rules which add support for the Kinect.

@bit-pirate

This comment has been minimized.

Copy link
Member

commented Nov 18, 2014

What's the difference in terms of code among those two release sources? Does the one in the Ubuntu universe repository not contain the "avin mod"?

@trainman419

This comment has been minimized.

Copy link

commented Nov 19, 2014

I don't have a full listing of the differences between Jochen's version and the official Ubuntu version.

Given that Jochen's version includes patches to the udev rules to add support for the Kinect, I suspect it has patches to other parts of the code as well.

Someone who is more invested in proper openni support should probably file a bug about this on the upstream ubuntu bug tracker.

@jihoonl

This comment has been minimized.

Copy link
Member Author

commented Jan 6, 2015

I have found that kinect rule has been deleted from libopenni-sensor-primesense on purpose.

Log of libopenni-sensor-primesense

  • Fix package description, as this is PrimeSense only now Jochen Sprickerhof 2013-11-25

http://anonscm.debian.org/cgit/pkg-multimedia/openni-sensor-primesense.git/diff/?id=9d10444947d7f160a783fb23e21d60cf8490fa5d&id2=b16a0b9af4abc8792ef61b651cff1efc96ab61c8

@jihoonl

This comment has been minimized.

Copy link
Member Author

commented Jan 6, 2015

libopenni-sensor-primese0 conflicts with libopenni-sensor-pointcloud0

and libopenni-sensor-pointcloud0 includes avin mod.

@jihoonl

This comment has been minimized.

Copy link
Member Author

commented Jan 6, 2015

So I think this issue would be resolved if we can change openni_camera dependency from libopenni_sensor_primesense-devto libopenni_sensor_pointclouds-dev

@jihoonl

This comment has been minimized.

Copy link
Member Author

commented Jan 6, 2015

Well.. replacing lib does not make things better... it still cannot find the device.

@jihoonl

This comment has been minimized.

Copy link
Member Author

commented Jan 6, 2015

Confirmed facts so far.

  • openni_camera does not work with kinect anymore.
    • openni_camera depends on libopenni-sensor-primesense-dev and maintainer intentionally removed udev rule for kinect in libopenni-sensor-primesense0. See the comments above.
  • freenect_launch works only if either one of condition is satisfied.
    • libopenni-sensor-pointcloud-dev is installed.(creates 40-libopenni-sensor-pointcloud0.rules)
    • libfreenect-dev is installed(creates 40-libfreenect0.2.rules)
    • libopenni-sensor-primesense-dev is installed and avin mod is added in udev rule file(40-libopenni-sensor-primesense0.rules)

These three way create udev rules in /lib/udev/rueles.d for freenect_camera.

ros-indigo-freenect-camera does not work by default because ros-indigo-libfreenect does not creates udev rule properly. I don't know where 51-kinect.rules get installed.

@jihoonl

This comment has been minimized.

Copy link
Member Author

commented Jan 6, 2015

@trainman419 @bit-pirate @stonier @AlexReimann @tfoote

What would be the good way to solve this issue? One approach we can do is..

  1. Fix libfreenect dependency, and use openni_launch(or openni2_launch) for asus, and for kinect. and use TURTLEBOT_3D_SENSOR env to choose either openni and freenect.

https://github.com/turtlebot/turtlebot/blob/indigo/turtlebot_bringup/launch/minimal.launch#L7

@jihoonl

This comment has been minimized.

Copy link
Member Author

commented Jan 9, 2015

I have created separate launcher for kinect and asus pro which are configuable with TURTLEBOT_3DSENSOR.

https://github.com/turtlebot/turtlebot/blob/3dsensor_config/turtlebot_bringup/launch/3dsensor.launch

@spragunr

This comment has been minimized.

Copy link

commented Jan 9, 2015

I checked out this branch to test, and was not able to make the freenect driver work with my Kinect. The following message is repeated indefinitely:

[ INFO] [1420830631.153441168]: No devices connected.... waiting for devices to be connected

The result is the same whether I use the updated 3dsensor.launch or launch from the freenect_launch package.

If I apt-get install libfreenect-demos from the ubuntu repositories, then I can visualize data from the kinect using the freenect-glview utility.

I've tried this both with and without USB 3 enabled in the BIOS. That doesn't seem to make a difference. I'm pretty sure I'm working with V1 XBox Kinect version, not the new PC version.

I'm not using a netbook, I'm using a Dell Latitude E6440 laptop.

@stonier

This comment has been minimized.

Copy link
Member

commented Jan 10, 2015

Had a hangout with Piyush yesterday (maintainer). The drivers aren't all in place for indigo yet and there have been issues with udev rules moving around. System version is really old, ros-indigo version is just the hydro version re-released (also old and probably has problems) and some testing going on around a new ros-indigo release of a more up to date 0.5.1 version.

We're going to try and get this 0.5.1 tested and working and Piyush will re-release it. Just bear with us for a bit.

Note, openni is a bit of a headache in trusty since they split kinect and asus support across two conflicting drivers.

@corb555

This comment has been minimized.

Copy link

commented Jan 18, 2015

Not sure if this helps - I'm using Kinect with 14.04 without problems on the setup below. I did have to install the SensorKinect driver for this to work.

Mini-ITX motherboard
ROS Indigo
Turtlebot_ARM stack
ROS-Indigo-OpenNI-Launch
https://github.com/avin2/SensorKinect

@jihoonl

This comment has been minimized.

Copy link
Member Author

commented Mar 23, 2015

Kinect with freenect driver seems happy ever after. Closing the issue.

@jihoonl jihoonl closed this Mar 23, 2015

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.