ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

kinect issues on different machines

asked 2012-02-09 23:07:54 -0500

Cav gravatar image

updated 2016-10-24 09:03:17 -0500

ngrennan gravatar image

Hi,

I tried running the following launch script, with my kinect, on two different machines, on the first one (desktop) everything works fine, on the second one (laptop) nothing works:

<launch>
  <!-- kinect and frame ids -->
  <include file="$(find openni_camera)/launch/openni_node.launch"/>

  <!-- openni manager -->
  <node pkg="nodelet" type="nodelet" name="openni_manager" output="screen" respawn="true" args="manager"/>

  <!-- throttling -->
  <node pkg="nodelet" type="nodelet" name="pointcloud_throttle" args="load pointcloud_to_laserscan/CloudThrottle openni_manager">
    <param name="max_rate" value="2"/>
    <remap from="cloud_in" to="/camera/depth/points"/>
    <remap from="cloud_out" to="cloud_throttled"/>
  </node>

  <!-- fake laser -->
  <node pkg="nodelet" type="nodelet" name="kinect_laser" args="load pointcloud_to_laserscan/CloudToScan openni_manager">
    <param name="output_frame_id" value="/openni_depth_frame"/>
    <remap from="cloud" to="cloud_throttled"/>
  </node>
</launch>

on the laptop the output looks exaclty the same like on the desktop:

SUMMARY
========

PARAMETERS
 * /rosdistro
 * /openni_node1/use_indices
 * /openni_node1/depth_registration
 * /openni_node1/image_time_offset
 * /openni_node1/depth_frame_id
 * /openni_node1/depth_mode
 * /kinect_laser/output_frame_id
 * /openni_node1/debayering
 * /rosversion
 * /openni_node1/projector_depth_baseline
 * /openni_node1/rgb_frame_id
 * /openni_node1/depth_rgb_translation
 * /pointcloud_throttle/max_rate
 * /openni_node1/depth_time_offset
 * /openni_node1/image_mode
 * /openni_node1/shift_offset
 * /openni_node1/device_id
 * /openni_node1/depth_rgb_rotation

NODES
  /
    openni_node1 (openni_camera/openni_node)
    kinect_base_link (tf/static_transform_publisher)
    kinect_base_link1 (tf/static_transform_publisher)
    kinect_base_link2 (tf/static_transform_publisher)
    kinect_base_link3 (tf/static_transform_publisher)
    openni_manager (nodelet/nodelet)
    pointcloud_throttle (nodelet/nodelet)
    kinect_laser (nodelet/nodelet)

auto-starting new master
process[master]: started with pid [4969]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to 34911bc8-53e3-11e1-96ac-0023dfffccb1
process[rosout-1]: started with pid [4982]
started core service [/rosout]
process[openni_node1-2]: started with pid [4985]
process[kinect_base_link-3]: started with pid [4986]
process[kinect_base_link1-4]: started with pid [4987]
process[kinect_base_link2-5]: started with pid [4988]
process[kinect_base_link3-6]: started with pid [4989]
process[openni_manager-7]: started with pid [4990]
process[pointcloud_throttle-8]: started with pid [4991]
process[kinect_laser-9]: started with pid [4992]
[ INFO] [1328877118.394903193]: [/openni_node1] Number devices connected: 1
[ INFO] [1328877118.395245674]: [/openni_node1] 1. device on bus 002:30 is a Xbox NUI Camera (2ae) from Microsoft (45e) with serial id 'A00363A03948136A'
[ INFO] [1328877118.398388308]: [/openni_node1] searching for device with index = 1
[ INFO] [1328877118.446196137]: [/openni_node1] Opened 'Xbox NUI Camera' on bus 2:30 with serial number 'A00363A03948136A'
[ INFO] [1328877118.454999825]: rgb_frame_id = '/openni_rgb_optical_frame' 
[ INFO] [1328877118.456160538]: depth_frame_id = '/openni_depth_optical_frame'

no errors, nothing.

The problem is that on the laptop there is nothing going one on the topics. e.g. listening to /camera/depth/points or /scan on the desktop I can see messages comming in, on the laptop there is nothing, silence.

There is a difference in the dmesg output. On the desktop:

usb 2-1.4: new high speed USB device using ehci_hcd and address 35
usb 2-1.4: configuration #1 chosen from 1 choice
hub 2-1.4:1.0: USB hub found
hub 2-1.4:1.0: 3 ports detected
usb 2-1.4.2: new full speed USB device using ehci_hcd and address 36
usb 2-1.4.2: configuration #1 chosen from 1 choice
usb 2-1.4.1: new high speed USB device using ehci_hcd and address 37
usb 2-1.4.1: configuration #1 chosen from 1 choice
usb 2-1.4.3: new high speed USB device using ehci_hcd and address 38
usb 2-1.4.3: configuration #1 chosen from 1 choice

On the laptop:

usb 1-5: new ...
(more)
edit retag flag offensive close merge delete

Comments

1
What laptop is it, and what USB port? I've had a problem with the kinect on USB 3 ports on a newer Dell laptop, but I don't remember if the symptoms were the same as you describe
Ivan Dryanovski gravatar image Ivan Dryanovski  ( 2012-02-10 00:24:52 -0500 )edit

USB 2.0 on Asus Eee PC 1005HA. btw. I've added freenect-glview output to the question.

Cav gravatar image Cav  ( 2012-02-13 22:10:40 -0500 )edit

2 Answers

Sort by ยป oldest newest most voted
0

answered 2012-02-15 22:11:58 -0500

Cav gravatar image

To answer my own question, my Eee PC is too slow and dropping too many packets. htop is showing CPU usage >97%. That's the reason why ROS is not working at all and libfreenect says "Lost too many packets". I've tried it with a "normal" Laptop and everything works fine. Mystery solved.

edit flag offensive delete link more
0

answered 2012-02-14 06:53:35 -0500

DrBot gravatar image

This might be a stupid suggestion - but the Kinect needs power (12v) either from a Wall Wart or an external 12v supply. The Kinect will look like it is powered up because the USB puts out 5v and will let some of the LEDs light up. Some Kinect cables have a power good LED on the Cable. If it isn't lit - there's the issue.

So make sure it is plugged in and getting 12v. I spent a week trying to figure this out on a Turtlebot, not realizing that on a Turtlebot, the Kinect gets it power from the create's battery, not the USB. (The suspicious unconnected cable should have given me a clue, but it didn't!)

edit flag offensive delete link more

Comments

I'm not changing the power supply when switching between desktop and laptop. All 3 devices are visible (else openni_node wouldn't connect to Kinect at all and freenect-glview would not work at all).

Cav gravatar image Cav  ( 2012-02-15 00:05:24 -0500 )edit

Question Tools

Stats

Asked: 2012-02-09 23:07:54 -0500

Seen: 817 times

Last updated: Feb 15 '12