Ryan,

Are you running on a Pioneer (or other platform using either the SICK Laser Integration Board [1] or something like it that powers on the LIDAR only when a serial connection is attempted)?

As far as this being a known bug, we've seen a number of people in the past have issues with the Sicktoolbox wrapper on systems where the LIDAR doesn't boot until a connection is opened, as the Sicktoolbox seems to be a bit... finicky... about this situation. If you'd like to see this problem fixed, I suggest you open a ticket (if there isn't one that already covers this problem) on the ros-pkg Trac against laser_drivers. That's the best way to make sure that this problem doesn't get forgotten about. However, I think we need a better solution than just always waiting for 30 seconds when the driver boots up (as Aravindhan's fix does), since people with always-on SICKs (my use case) shouldn't need to wait for the SICK to power up if it's already activated.

If you do open a ticket, we can continue any further discussion regarding implementation there.

- Eric

[1] http://robots.mobilerobots.com/wiki/SICK_Laser_Integration_Board
On Thu, Mar 17, 2011 at 5:57 PM, Ryan Miller <rmiller4589@gmail.com> wrote:
Hello,

I am having trouble connecting to a SICK LMS 291. I did not have trouble connecting to the device in cturtle, but I recently upgraded to diamondback and am now having difficulties. It appears Aravindhan Krishnan found a solution to this problem, and posted it on ROS answers [0]. However, I would like to avoid using unstable packages. Is there a way to only install the sicklms source without getting loads of other unstable dependencies?

Also, is this a known bug? I could not find anything in the tracker, and if Krishnan is right about this, it appears to be a serious problem. I have pasted the output of `rosrun sicktoolbox_wrapper sicklms.` Please let me know if there is a better solution than hacking the sicklms source.

I set the baud rate to 38400 and the port to /dev/ttyS0. I know I am using the correct serial port because when I remove the cable it hangs forever. The permissions are also set correctly.
------------- snip -------------
rmiller@obc:~$ ls -lah /dev/ttyS0
crw-rw-rw- 1 root dialout 4, 64 2011-03-17 17:36 /dev/ttyS0
rmiller@obc:~$ groups rmiller
rmiller : rmiller adm dialout cdrom plugdev lpadmin admin sambashare
------------- snip -------------

------------- snip -------------
rmiller@obc:/opt/ros/diamondback/stacks/laser_drivers/sicktoolbox_wrapper$ rosrun sicktoolbox_wrapper sicklms 

*** Attempting to initialize the Sick LMS...
Attempting to open device @ /dev/ttyS0
Device opened!
Attempting to start buffer monitor...
Buffer monitor started!
Attempting to set requested baud rate...
A Timeout Occurred!  2 tries remaining
A Timeout Occurred!  1 tries remaining
A Timeout Occurred - SickLIDAR::_sendMessageAndGetReply: Attempted max number of tries w/o success!
Failed to set requested baud rate...
Attempting to detect LMS baud rate...
Checking 19200bps...
A Timeout Occurred!  2 tries remaining
A Timeout Occurred!  1 tries remaining
A Timeout Occurred - SickLIDAR::_sendMessageAndGetReply: Attempted max number of tries w/o success!
Checking 38400bps...
ERROR: I/O exception - SickBufferMonitor::_readBytes: read() failed!
A Timeout Occurred!  2 tries remaining
ERROR: I/O exception - SickLIDAR::_sendMessage: write() failed!
ERROR: I/O exception - SickLIDAR::_sendMessage: write() failed!
ERROR: I/O exception - SickLIDAR::_sendMessage: write() failed!
ERROR: I/O exception - SickLIDAR::_sendMessage: write() failed!
SickLMS::_testBaudRate: Unknown exception!
ERROR: I/O exception - SickLIDAR::_sendMessage: write() failed!
ERROR: I/O exception - SickLIDAR::_sendMessage: write() failed!
[ERROR] [1300397794.610468157]: Initialize failed! are you using the correct device path?
terminate called after throwing an instance of 'SickToolbox::SickThreadException'
Aborted
------------- snip -------------

-Ryan



_______________________________________________
ros-users mailing list
ros-users@code.ros.org
https://code.ros.org/mailman/listinfo/ros-users