Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

posted 2012-05-31 05:46:05 -0500

Actually I'm working to adapt the openni drivers for the "Kinect for Windows". Until now, I tested the libfreenect drivers (k4w-wip) and they work fine (see above).

Old "Kinect for Xbox" parameters:

  • "02ae": Xbox NUI Camera
  • "02ad": Xbox NUI Audio
  • "02b0": Xbox NUI Motor

New "Kinect for Windows" parameters:

  • "02c2": no description
  • "02be": Microsoft Kinect Audio
  • "02bf": Microsoft Kinect Camera

So far, I done this steps to change the openni drivers:

  1. First, I change the Product and Vendor IDs in XnDeviceSensorIO.cpp. Basicly now the driver is adjusted only for the K4W and the Kinect for Xbox can no longer be identified. But this is okey for my purpose until now.

  2. Second, I modified the access permissions rules for the primesense sensor usb (55-primesense-usb.rules).

  3. I recompiled the modified openni drivers.

After launching the OpenNI driver (roslaunch openni_launch openni.launch) the K4W is identified, but afterwards I get this error messages:

[ERROR] [1338477459.196756881]: Tried to advertise a service that is already advertised in this node [/camera/depth_registered/image_rect_raw/compressed/set_parameters]
[ERROR] [1338477459.202417522]: Tried to advertise a service that is already advertised in this node [/camera/depth_registered/image_rect_raw/theora/set_parameters]

[ INFO] [1338477461.579996051]: Number devices connected: 1
[ INFO] [1338477461.580214794]: 1. device on bus 002:19 is a Microsoft Kinect Camera (2bf) from Microsoft (45e) with serial id '0000000000000000'
[ INFO] [1338477461.581393367]: Searching for device with index = 1
[ INFO] [1338477461.682778043]: No matching device found.... waiting for devices. Reason: openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&) @ /home/test/ros_workspace/june/openni_camera/src/openni_device.cpp @ 61 : creating depth generator failed. Reason: USB endpoint not found on device!

[ INFO] [1338477464.867850113]: Number devices connected: 1
[ INFO] [1338477464.867952640]: 1. device on bus 002:19 is a Microsoft Kinect Camera (2bf) from Microsoft (45e) with serial id '0000000000000000'
[ INFO] [1338477464.869014858]: Searching for device with index = 1
[ INFO] [1338477464.970393812]: No matching device found.... waiting for devices. Reason: openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&) @ /home/test/ros_workspace/june/openni_camera/src/openni_device.cpp @ 61 : creating depth generator failed. Reason: USB endpoint not found on device!

[ INFO] [1338477468.156220794]: Number devices connected: 1
[ INFO] [1338477468.156479277]: 1. device on bus 002:19 is a Microsoft Kinect Camera (2bf) from Microsoft (45e) with serial id '0000000000000000'
[ INFO] [1338477468.157576135]: Searching for device with index = 1
[ INFO] [1338477468.258703448]: No matching device found.... waiting for devices. Reason: openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&) @ /home/test/ros_workspace/june/openni_camera/src/openni_device.cpp @ 61 : creating depth generator failed. Reason: USB endpoint not found on device!

How I have to change the USB endpoints and what else could be missing?

Actually I have no idea, where I have to modify the settings and which settings.

If I missed some information or you need more information, do not hesitate to ask.

Best regards from Germany

Actually I'm working to adapt the openni drivers for the "Kinect for Windows". Until now, I tested the libfreenect drivers (k4w-wip) k4w-wip and they work fine (see above).

Old "Kinect for Xbox" parameters:

  • "02ae": Xbox NUI Camera
  • "02ad": Xbox NUI Audio
  • "02b0": Xbox NUI Motor

New "Kinect for Windows" parameters:

  • "02c2": no description
  • "02be": Microsoft Kinect Audio
  • "02bf": Microsoft Kinect Camera

So far, I done this steps to change the openni drivers:

  1. First, I change the Product and Vendor IDs in XnDeviceSensorIO.cpp. Basicly now the driver is adjusted only for the K4W and the Kinect for Xbox can no longer be identified. But this is okey for my purpose until now.

  2. Second, I modified the access permissions rules for the primesense sensor usb (55-primesense-usb.rules).

  3. I recompiled the modified openni drivers.

After launching the OpenNI driver (roslaunch openni_launch openni.launch) the K4W is identified, but afterwards I get this error messages:

[ERROR] [1338477459.196756881]: Tried to advertise a service that is already advertised in this node [/camera/depth_registered/image_rect_raw/compressed/set_parameters]
[ERROR] [1338477459.202417522]: Tried to advertise a service that is already advertised in this node [/camera/depth_registered/image_rect_raw/theora/set_parameters]

[ INFO] [1338477461.579996051]: Number devices connected: 1
[ INFO] [1338477461.580214794]: 1. device on bus 002:19 is a Microsoft Kinect Camera (2bf) from Microsoft (45e) with serial id '0000000000000000'
[ INFO] [1338477461.581393367]: Searching for device with index = 1
[ INFO] [1338477461.682778043]: No matching device found.... waiting for devices. Reason: openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&) @ /home/test/ros_workspace/june/openni_camera/src/openni_device.cpp @ 61 : creating depth generator failed. Reason: USB endpoint not found on device!

[ INFO] [1338477464.867850113]: Number devices connected: 1
[ INFO] [1338477464.867952640]: 1. device on bus 002:19 is a Microsoft Kinect Camera (2bf) from Microsoft (45e) with serial id '0000000000000000'
[ INFO] [1338477464.869014858]: Searching for device with index = 1
[ INFO] [1338477464.970393812]: No matching device found.... waiting for devices. Reason: openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&) @ /home/test/ros_workspace/june/openni_camera/src/openni_device.cpp @ 61 : creating depth generator failed. Reason: USB endpoint not found on device!

[ INFO] [1338477468.156220794]: Number devices connected: 1
[ INFO] [1338477468.156479277]: 1. device on bus 002:19 is a Microsoft Kinect Camera (2bf) from Microsoft (45e) with serial id '0000000000000000'
[ INFO] [1338477468.157576135]: Searching for device with index = 1
[ INFO] [1338477468.258703448]: No matching device found.... waiting for devices. Reason: openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&) @ /home/test/ros_workspace/june/openni_camera/src/openni_device.cpp @ 61 : creating depth generator failed. Reason: USB endpoint not found on device!

How I have to change the USB endpoints and what else could be missing?

Actually I have no idea, where I have to modify the settings and which settings.

If I missed some information or you need more information, do not hesitate to ask.

Best regards from Germany

Actually I'm working to adapt the openni drivers for the "Kinect for Windows". Until now, I tested the libfreenect drivers k4w-wip and they work fine (see above).

Old "Kinect for Xbox" parameters:

  • "02ae": Xbox NUI Camera
  • "02ad": Xbox NUI Audio
  • "02b0": Xbox NUI Motor

New "Kinect for Windows" parameters:

  • "02c2": no description
  • "02be": Microsoft Kinect Audio
  • "02bf": Microsoft Kinect Camera

So far, I done this steps to change the openni drivers:

  1. First, I change the Product and Vendor IDs in XnDeviceSensorIO.cpp. Basicly now the driver is adjusted only for the K4W and the Kinect for Xbox can no longer be identified. But this is okey for my purpose until now.

  2. Second, I modified the access permissions rules for the primesense sensor usb (55-primesense-usb.rules).

  3. I recompiled the modified openni drivers.

After launching the OpenNI driver (roslaunch openni_launch openni.launch) the K4W is identified, but afterwards I get this error messages:

[ERROR] [1338477459.196756881]: Tried to advertise a service that is already advertised in this node [/camera/depth_registered/image_rect_raw/compressed/set_parameters]
[ERROR] [1338477459.202417522]: Tried to advertise a service that is already advertised in this node [/camera/depth_registered/image_rect_raw/theora/set_parameters]

[ INFO] [1338477461.579996051]: Number devices connected: 1
[ INFO] [1338477461.580214794]: 1. device on bus 002:19 is a Microsoft Kinect Camera (2bf) from Microsoft (45e) with serial id '0000000000000000'
[ INFO] [1338477461.581393367]: Searching for device with index = 1
[ INFO] [1338477461.682778043]: No matching device found.... waiting for devices. Reason: openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&) @ /home/test/ros_workspace/june/openni_camera/src/openni_device.cpp @ 61 : creating depth generator failed. Reason: USB endpoint not found on device!

[ INFO] [1338477464.867850113]: Number devices connected: 1
[ INFO] [1338477464.867952640]: 1. device on bus 002:19 is a Microsoft Kinect Camera (2bf) from Microsoft (45e) with serial id '0000000000000000'
[ INFO] [1338477464.869014858]: Searching for device with index = 1
[ INFO] [1338477464.970393812]: No matching device found.... waiting for devices. Reason: openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&) @ /home/test/ros_workspace/june/openni_camera/src/openni_device.cpp @ 61 : creating depth generator failed. Reason: USB endpoint not found on device!

[ INFO] [1338477468.156220794]: Number devices connected: 1
[ INFO] [1338477468.156479277]: 1. device on bus 002:19 is a Microsoft Kinect Camera (2bf) from Microsoft (45e) with serial id '0000000000000000'
[ INFO] [1338477468.157576135]: Searching for device with index = 1
[ INFO] [1338477468.258703448]: No matching device found.... waiting for devices. Reason: openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&) @ /home/test/ros_workspace/june/openni_camera/src/openni_device.cpp @ 61 : creating depth generator failed. Reason: USB endpoint not found on device!

How I have to change the USB endpoints and what else could be missing?

Actually I have no idea, where I have to modify the settings and which settings.

If I missed some information or you need more information, do not hesitate to ask.

Best regards from Germany

Actually I'm working to adapt the openni drivers for the "Kinect for Windows". Until now, I tested the libfreenect drivers k4w-wip and they work fine (see above).

Old "Kinect for Xbox" parameters:

  • "02ae": Xbox NUI Camera
  • "02ad": Xbox NUI Audio
  • "02b0": Xbox NUI Motor

New "Kinect for Windows" parameters:

  • "02c2": no description
  • "02be": Microsoft Kinect Audio
  • "02bf": Microsoft Kinect Camera

So far, I done this steps to change the openni drivers:

  1. First, I change the Product and Vendor IDs in XnDeviceSensorIO.cpp. Furthermore, I'm setting the USB alternative interface to enable the two isochronous endpoints. Basicly now the driver is adjusted only for the K4W and the K4W. The Kinect for Xbox can actually no longer be identified. But this is okey for my purpose until now.

  2. Second, I modified the access permissions rules for the primesense sensor usb (55-primesense-usb.rules).

  3. I recompiled the modified openni drivers.

After launching the OpenNI driver (roslaunch openni_launch openni.launch) the K4W is identified, but afterwards I get this error messages:

[ERROR] [1338477459.196756881]: Tried to advertise a service that is already advertised in this node [/camera/depth_registered/image_rect_raw/compressed/set_parameters]
[ERROR] [1338477459.202417522]: Tried to advertise a service that is already advertised in this node [/camera/depth_registered/image_rect_raw/theora/set_parameters]

[ INFO] [1338477461.579996051]: Number devices connected: 1
[ INFO] [1338477461.580214794]: 1. device on bus 002:19 is a Microsoft Kinect Camera (2bf) from Microsoft (45e) with serial id '0000000000000000'
[ INFO] [1338477461.581393367]: Searching for device with index = 1
[ INFO] [1338477461.682778043]: No matching device found.... waiting for devices. Reason: openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&) @ /home/test/ros_workspace/june/openni_camera/src/openni_device.cpp @ 61 : creating depth generator failed. Reason: USB endpoint not found on device!

[ INFO] [1338477464.867850113]: Number devices connected: 1
[ INFO] [1338477464.867952640]: 1. device on bus 002:19 is a Microsoft Kinect Camera (2bf) from Microsoft (45e) with serial id '0000000000000000'
[ INFO] [1338477464.869014858]: Searching for device with index = 1
[ INFO] [1338477464.970393812]: No matching device found.... waiting for devices. Reason: openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&) @ /home/test/ros_workspace/june/openni_camera/src/openni_device.cpp @ 61 : creating depth generator failed. Reason: USB endpoint not found on device!

[ INFO] [1338477468.156220794]: Number devices connected: 1
[ INFO] [1338477468.156479277]: 1. device on bus 002:19 is a Microsoft Kinect Camera (2bf) from Microsoft (45e) with serial id '0000000000000000'
[ INFO] [1338477468.157576135]: Searching for device with index = 1
[ INFO] [1338477468.258703448]: No matching device found.... waiting for devices. Reason: openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&) @ /home/test/ros_workspace/june/openni_camera/src/openni_device.cpp @ 61 : creating depth generator failed. Reason: USB endpoint not found on device!

Update:

How I have to change the USB endpoints and what else could be missing?

Actually I have no idea, where I have to modify the settings and which settings.

If I missed some information or you need more information, do not hesitate to ask.

  • The USB alternative interface is to change.
  • More informations to libusb (function: libusb_set_interface_alt_setting)

Best regards from Germany

Actually I'm working to adapt the openni drivers for the "Kinect for Windows". Until now, I tested the libfreenect drivers k4w-wip and they work fine (see above).

Old "Kinect for Xbox" parameters:

  • "02ae": Xbox NUI Camera
  • "02ad": Xbox NUI Audio
  • "02b0": Xbox NUI Motor

New "Kinect for Windows" parameters:

  • "02c2": no description
  • "02be": Microsoft Kinect Audio
  • "02bf": Microsoft Kinect Camera

So far, I done this steps to change the openni drivers:

  1. First, I change the Product and Vendor IDs in XnDeviceSensorIO.cpp. Furthermore, I'm setting the USB alternative interface to enable the two isochronous endpoints. Basicly now the driver is adjusted only for the K4W. The Kinect for Xbox can actually no longer be identified. But this is okey for my purpose until now.More informations to libusb (function: libusb_set_interface_alt_setting).

  2. Second, I modified the access permissions rules for the primesense sensor usb (55-primesense-usb.rules).

  3. I recompiled the modified openni drivers.

After launching Basicly now the OpenNI driver (roslaunch openni_launch openni.launch) is adjusted only for the K4W K4W. The Kinect for Xbox can actually no longer be identified. But this is identified, but afterwards I get this error messages:okey for my purpose until now.

[ERROR] [1338477459.196756881]: Tried to advertise a service that is already advertised in this node [/camera/depth_registered/image_rect_raw/compressed/set_parameters]
[ERROR] [1338477459.202417522]: Tried to advertise a service that is already advertised in this node [/camera/depth_registered/image_rect_raw/theora/set_parameters]

[ INFO] [1338477461.579996051]: Number devices connected: 1
[ INFO] [1338477461.580214794]: 1. device on bus 002:19 is a Microsoft Kinect Camera (2bf) from Microsoft (45e) with serial id '0000000000000000'
[ INFO] [1338477461.581393367]: Searching for device with index = 1
[ INFO] [1338477461.682778043]: No matching device found.... waiting for devices. Reason: openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&) @ /home/test/ros_workspace/june/openni_camera/src/openni_device.cpp @ 61 : creating depth generator failed. Reason: USB endpoint not found on device!

[ INFO] [1338477464.867850113]: Number devices connected: 1
[ INFO] [1338477464.867952640]: 1. device on bus 002:19 is a Microsoft Kinect Camera (2bf) from Microsoft (45e) with serial id '0000000000000000'
[ INFO] [1338477464.869014858]: Searching for device with index = 1
[ INFO] [1338477464.970393812]: No matching device found.... waiting for devices. Reason: openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&) @ /home/test/ros_workspace/june/openni_camera/src/openni_device.cpp @ 61 : creating depth generator failed. Reason: USB endpoint not found on device!

[ INFO] [1338477468.156220794]: Number devices connected: 1
[ INFO] [1338477468.156479277]: 1. device on bus 002:19 is a Microsoft Kinect Camera (2bf) from Microsoft (45e) with serial id '0000000000000000'
[ INFO] [1338477468.157576135]: Searching for device with index = 1
[ INFO] [1338477468.258703448]: No matching device found.... waiting for devices. Reason: openni_wrapper::OpenNIDevice::OpenNIDevice(xn::Context&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&, const xn::NodeInfo&) @ /home/test/ros_workspace/june/openni_camera/src/openni_device.cpp @ 61 : creating depth generator failed. Reason: USB endpoint not found on device!

Update:

How I have to change the USB endpoints and what else could be missing?

  • The USB alternative interface is to change.
  • More informations to libusb (function: libusb_set_interface_alt_setting)

Best regards from Germany