Why is Kinect working but freenect.launch and openni.launch fail ?
I have used Kinect with my own systems for years. My installation works: Right now using Lubuntu Xenial 16.04.1 64 bit.The Kinect system is:
OpenNI-Bin-Dev-Linux-x64-v1.5.7.10 (built from source and patched to fix a USB problem so the Kinect motor control works)
Sensor-Bin-Linux-x64-v5.1.2.1
I would like to use ROS. I installed packages from Synaptic:
- ros-kinetic-freenect-stack
- ros-kinetic-lib-freenect
I can launch the system, but Kinect device does not connect and no data is sent to rviz.
roslaunch freenect_launch freenect.launch
I also tried installing from Synaptic:
- ros-kinetic-openni-camera
- ros-kinetic-openni-launch
Launching with roslaunch openni_launch openni.launch
gives the following suspicious warnings:
Warning: USB events thread - failed to set priority. This might cause loss of data..
[ INFO] [1474760990.182270093]: Number devices connected: 2
[ INFO] [1474760990.283229629]: 1. device on bus 002:06 is a SensorKinect (2ae) from PrimeSense (45e) with serial id '0'
[ INFO] [1474760990.283294658]: 2. device on bus 002:06 is a SensorV2 (2ae) from PrimeSense (45e) with serial id 'A00361A13780044A'
Launching with roslaunch openni_launch openni.launch device_id:=A00361A13780044A
selects the right device, but the Kinect does not connect and no data is sent to rviz.
I have uninstalled and re-installed the packages various times to no avail. Surprisingly the ROS packages do not break my own installation, as they used to in the past.
I am at a complete loss as to how to debug this. The more I read the documentation the more confused I get about the bewildering number of versions and alternative components that exist (often with very similar names). Given that I have a working Kinect interface based on openni and avin driver, what can be going wrong ? Is there a sure way to get this going from the repositories ? Could my installation be breaking the ROS installation ? Infuriatingly I believe that at the start both ROS and my installation were working simultaneously, but the something broke ROS.