SICKAG / sick_scan_xd

Based on the sick_scan drivers for ROS1, sick_scan_xd merges sick_scan, sick_scan2 and sick_scan_base repositories. The driver supports both Linux (native, ROS1, ROS2) and Windows (native and ROS2).
Apache License 2.0
99 stars 84 forks source link

DeviceIdent and FirmwareVersion don't match, why? #188

Closed Kaju-Bubanja closed 1 year ago

Kaju-Bubanja commented 1 year ago

When calling: ros2 service call /ColaMsg sick_scan/srv/ColaMsgSrv "{request: 'sRN DeviceIdent'}" I get: sick_scan.srv.ColaMsgSrv_Response(response='sRA DeviceIdent 14 LMS5xx_FieldEval_PRO 10 S1.60-24.06.2015') but when calling ros2 service call /ColaMsg sick_scan/srv/ColaMsgSrv "{request: 'sRN FirmwareVersion'}" I get sick_scan.srv.ColaMsgSrv_Response(response='sRA FirmwareVersion 9 S 1.60 ')

Why is the firmware version once 10 and in the other example 9? Also what is the difference between the first number of the firmware version and the number after the S?

rostest commented 1 year ago

ROS service "/ColaMsg" returns the SOPAS response as it is received from the lidar, including arguments for the length of strings. SOPAS commands and their responses are described in detail in the telegram listing; for sRA DeviceIdent the response is sRA DeviceIdent <length of firmware designation> LMS5xx_FieldEval_PRO <length of firmware version> S1.60-24.06.2015:

image

The firmware version is 1.60 in both cases. Note that sRA DeviceIdent is the correct SOPAS command to read the firmware version; command 'sRN FirmwareVersion' is most likely supported for backward compatibility.

image