SICKAG / sick_ldmrs_laser

A ROS driver for the SICK LD-MRS series of laser scanners.
BSD 3-Clause "New" or "Revised" License
24 stars 19 forks source link

[LD-MRS400001] LuxBase::initTcp(): ERROR: Failed to read UpsideDown flag #1

Closed DottorZini closed 7 years ago

DottorZini commented 7 years ago

Configuration:

Being able to ping the device and to acquire data from the official Sick software (installed on a different Windows machine), the launch of the Quick Start leads to the following:

started roslaunch server

SUMMARY

PARAMETERS

  • /rosdistro: kinetic
  • /rosversion: 1.12.7
  • /sick_ldmrs_node/scan_frequency: 0

NODES / sick_ldmrs_node (sick_ldmrs_driver/sick_ldmrs_node)

ROS_MASTER_URI=http://localhost:11311

core service [/rosout] found process[sick_ldmrs_node-1]: started with pid [14421] [ INFO] [1492010457.698341117]: Creating the manager. [ INFO] [1492010457.698409158]: Adding the application SickLDMRS. [ INFO] [1492010457.745336088]: Application is running. [ INFO] [1492010457.745370958]: Adding the LDMRS device. 1492010457.7459 Info: Manager::addAndRunDevice: Created Device of type 3 with Name LDMRS-1 under the ID 1. Now initializing the device. 1492010457.7564 Info: LuxBase::readBeamTilt: LD-MRS Beam tilt read. Angle is 0.0 degrees. 1492010457.7628 Warning: LuxBase::receiveMrsReply: LD-MRS Received that an error occurred. 1492010457.7628 ERROR: LuxBase::cmd_getParameter: LD-MRS ERROR: Failed to receive GetParameter reply. 1492010457.7628 ERROR: LuxBase::readUpsideDown: LD-MRS ERROR: Failed to read UpsideDown flag, aborting. 1492010457.7628 ERROR: LuxBase::initTcp(): ERROR: Failed to read UpsideDown flag, aborting. 1492010457.7628 ERROR: LDMRS::init: Failed to initialize LuxBase - Device init failed, aborting. 1492010457.7629 ERROR: Manager::addAndRunDevice: Failed to initialize the device, aborting. [ERROR] [1492010457.762967832]: Failed to add device LDMRS-1, aborting! 1492010457.7664 Warning: stop(): Device is not running, nothing to do. [sick_ldmrs_node-1] process has died [pid 14421, exit code -11, cmd /home/user/catkin_ws/install_isolated/lib/sick_ldmrs_driver/sick_ldmrs_node name:=sick_ldmrs_node log:=/home/user/.ros/log/815f4cc2-1f8f-11e7-9e29-104a7da77cb8/sick_ldmrs_node-1.log]. log file: /home/user/.ros/log/815f4cc2-1f8f-11e7-9e29-104a7da77cb8/sick_ldmrs_node-1*.log all processes on machine have died, roslaunch will exit shutting down processing monitor... ... shutting down processing monitor complete done

jspricke commented 7 years ago

Hi @DottorZini, thanks for the report. Can you change beVerboseHere to true in https://github.com/SICKAG/libsick_ldmrs/blob/master/src/devices/LuxBase.cpp#L2204, recompile, try it and send the output?

DottorZini commented 7 years ago

Hey @jspricke, thanks for the answer! Here's the output with verbose-on in decodeAnswerInCmdReplyBuffer. However, could the firmware be a problem? On which version is your driver based?

Thanks again!

process[sick_ldmrs_node-1]: started with pid [14158] [ INFO] [1492782258.024033393]: Creating the manager. [ INFO] [1492782258.024095553]: Adding the application SickLDMRS. [ INFO] [1492782258.065764621]: Application is running. [ INFO] [1492782258.065801805]: Adding the LDMRS device. [[[[ before addAndRunDevice 1492782258.0664 Info: Manager::addAndRunDevice: Created Device of type 3 with Name LDMRS-1 under the ID 1. Now initializing the device. 1492782258.0681 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0681 Info: decodeAnswerInCmdReplyBuffer(): No data in input buffer. 1492782258.0692 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0692 Info: decodeAnswerInCmdReplyBuffer(): No data in input buffer. 1492782258.0702 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0702 Info: decodeAnswerInCmdReplyBuffer(): No data in input buffer. 1492782258.0713 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0713 Info: decodeAnswerInCmdReplyBuffer(): No data in input buffer. 1492782258.0724 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0724 Info: decodeAnswerInCmdReplyBuffer(): No data in input buffer. 1492782258.0734 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0734 Info: decodeAnswerInCmdReplyBuffer(): No data in input buffer. 1492782258.0745 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0745 Info: decodeAnswerInCmdReplyBuffer(): No data in input buffer. 1492782258.0756 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0756 Info: decodeAnswerInCmdReplyBuffer(): Magic word found, now decoding header. 1492782258.0756 Info: decodeAnswerInCmdReplyBuffer(): Message payload length is 32 bytes. 1492782258.0756 Info: decodeAnswerInCmdReplyBuffer(): Header decoded successfully, command = 0001. 1492782258.0756 Info: decodeAnswerInCmdReplyBuffer(): Leaving successfully, command = 0001. 1492782258.0757 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0757 Info: decodeAnswerInCmdReplyBuffer(): No data in input buffer. 1492782258.0768 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0768 Info: decodeAnswerInCmdReplyBuffer(): No data in input buffer. 1492782258.0779 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0779 Info: decodeAnswerInCmdReplyBuffer(): Magic word found, now decoding header. 1492782258.0779 Info: decodeAnswerInCmdReplyBuffer(): Message payload length is 8 bytes. 1492782258.0779 Info: decodeAnswerInCmdReplyBuffer(): Header decoded successfully, command = 0011. 1492782258.0779 Info: decodeAnswerInCmdReplyBuffer(): Leaving successfully, command = 0011. 1492782258.0779 Info: LuxBase::readBeamTilt: LD-MRS Beam tilt read. Angle is 0.0 degrees. 1492782258.0780 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0780 Info: decodeAnswerInCmdReplyBuffer(): No data in input buffer. 1492782258.0791 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0791 Info: decodeAnswerInCmdReplyBuffer(): No data in input buffer. 1492782258.0802 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0802 Info: decodeAnswerInCmdReplyBuffer(): No data in input buffer. 1492782258.0813 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0813 Info: decodeAnswerInCmdReplyBuffer(): No data in input buffer. 1492782258.0824 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0824 Info: decodeAnswerInCmdReplyBuffer(): No data in input buffer. 1492782258.0835 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0835 Info: decodeAnswerInCmdReplyBuffer(): No data in input buffer. 1492782258.0846 Info: Entering decodeAnswerInCmdReplyBuffer(). 1492782258.0846 Info: decodeAnswerInCmdReplyBuffer(): Magic word found, now decoding header. 1492782258.0846 Info: decodeAnswerInCmdReplyBuffer(): Message payload length is 32 bytes. 1492782258.0846 Info: decodeAnswerInCmdReplyBuffer(): Header decoded successfully, command = 8011. 1492782258.0846 Info: decodeAnswerInCmdReplyBuffer(): Leaving successfully, command = 8011. 1492782258.0846 Warning: LuxBase::receiveMrsReply: LD-MRS Received that an error occurred. 1492782258.0846 ERROR: LuxBase::cmd_getParameter: LD-MRS ERROR: Failed to receive GetParameter reply. 1492782258.0846 ERROR: LuxBase::readUpsideDown: LD-MRS ERROR: Failed to read UpsideDown flag, aborting. 1492782258.0846 ERROR: LuxBase::initTcp(): ERROR: Failed to read UpsideDown flag, aborting. 1492782258.0846 ERROR: LDMRS::init: Failed to initialize LuxBase - Device init failed, aborting. 1492782258.0846 ERROR: Manager::addAndRunDevice: Failed to initialize the device, aborting. [[[[ after addAndRunDevice [ERROR] [1492782258.084692384]: Failed to add device LDMRS-1, aborting! 1492782258.0882 Warning: stop(): Device is not running, nothing to do. [sick_ldmrs_node-1] process has died [pid 14158, exit code -11, cmd /home/user/catkin_ws/devel_isolated/sick_ldmrs_driver/lib/sick_ldmrs_driver/sick_ldmrs_node name:=sick_ldmrs_node log:=/home/user/.ros/log/7ce8e526-2675-11e7-bae6-104a7da77cb8/sick_ldmrs_node-1.log]. log file: /home/user/.ros/log/7ce8e526-2675-11e7-bae6-104a7da77cb8/sick_ldmrs_node-1*.log all processes on machine have died, roslaunch will exit shutting down processing monitor... ... shutting down processing monitor complete done

jspricke commented 7 years ago

Could be, maybe someone from SICK can answer this. Also, This is all in libsick_ldmrs, which is provided by SICK. Did you get CD with your scanner with the lib on it? Maybe you got a different version.

On which version is your driver based?

Sadly I don't have access to it. @mintar, can you have a look?

mintar commented 7 years ago

I've added an option to display the firmware (requires the newest libsick-ldmrs). On our scanner, it shows:

LD-MRS Firmware version is 3.03.5 2015-01-14 13:32

However, on your scanner it will abort before it comes to that point. So what else is different?

Last update: December 18, 2014
mintar commented 7 years ago

I would really like to get this going on your scanner!

mintar commented 7 years ago

Alternatively, you could simply comment out the reading of the UpsideDown flag and set it to "false", and see if that solves the problem or if there are more.

DottorZini commented 7 years ago

Hi @jspricke and @mintar, thank you both for your answers.

Alternatively, you could simply comment out the reading of the UpsideDown flag and set it to "false", and see if that solves the problem or if there are more.

My idea was actually to proceed like this because that flag is not available in the model I'm trying to work with. I'll try this as soon as possible and I'll let you know!

DottorZini commented 7 years ago

Good news! Once ignored the UpsideDown flag error, the device starts and the scans are acquired successfully. I'll keep working with your package and I'll report any issues if necessary, but I think we can confirm the compatibility of LD-MRS400001.

Thanks again for your assistance and for the good work.

screenshot from 2017-05-02 11-54-10

mintar commented 7 years ago

Hi @DottorZini , that's great to hear! Could you please open a pull request with your changes (what you did to ignore the UpsideDown error)? That way, your scanner would work with our code without requiring modifications.

mintar commented 7 years ago

Fixed by SICKAG/libsick_ldmrs#1.