
8014493/ YDB5/2014-11-25 © SICK AG · Germany · All rights reserved · Subject to change without notice Page 1 of 26
CAN data protocol
LD-MRS 400001S01
LD-MRS 400102S01
LD-MRS 800001S01

8014493/ YDB5/2014-11-25 © SICK AG · Germany · All rights reserved · Subject to change without notice Page 2 of 26
Table of Content
1 Introduction 3
2 General information 3
2.1 CAN frame format 3
2.2 Identifiers 3
2.3 Message format 4
3 Object Data 5
3.1 List header: CAN Base ID (e.g. 0x500) 5
3.2 Timestamp: CAN Base ID + 0x1 (e.g. 0x501) 6
3.3 Tracking1: CAN Base ID + 0x2 (e.g. 0x502) 6
3.4 Tracking2: CAN Base ID + 0x3 (e.g. 0x503) 7
3.5 Class and box1: CAN Base ID + 0x4 (e.g. 0x504) 7
3.6 Box2: CAN Base ID + 0x5 (e.g. 0x505) 7
3.7 Contour header: CAN Base ID + 0x6 (e.g. 0x506) 8
3.8 Contour points: CAN Base ID + 0x7 (e.g. 0x507) 8
4 Command Interface 10
4.1 LD-MRS commands and command replies 10
4.1.1 Reset sensor 10
4.1.2 SaveConfig 11
4.1.3 Set Parameter 11
4.1.4 Get Parameter 11
4.1.5 Load Factory Defaults 12
4.1.6 Start Measure 12
4.1.7 Stop Measure 13
4.1.8 SetNTPTimestampSec 13
4.1.9 SetNTPTimestampFracSec 14
4.2 LD-MRS parameter list 15
4.3 Examples 22
5 LD-MRS error/warning 23
1.1 Error register 1 23
1.2 Error register 2 24
1.3 Warning register 1 25
1.4 Warning register 2 25
6 Ego motion information 26

8014493/ YDB5/2014-11-25 © SICK AG · Germany · All rights reserved · Subject to change without notice Page 3 of 26
1 Introduction
This document describes how data is received and transmitted via CAN. Addressed
systems are LD-MRS400001S0, LD-MRS400102S01 and LD-MRS800000S01.
This document is based on firmware version 3.02.
Note: The standard LD-MRSXXX (without “S01”) also has a CAN interface. This interface
is used to control the external I/O-extender of the sensor and uses other commands.
This document does not apply to this sensor type!
2 General information
2.1 CAN frame format
The LD-MRS uses CAN 2.0A with 11-bit identifiers. The baudrate is 500 kBit/s.
2.2 Identifiers
Each CAN messages has an identifier (ID). For the LD-MRS, a base ID can be set as a
parameter (default is 0x500). This base ID defines a range of 16 subsequent IDs, starting
with the base ID itself. E.g., with the base ID set to 0x500, the used CAN messages will
have the IDs 0x500 through 0x50F.
As the message ID defines the message and its contents, each ID may only be used by
one device (or for one purpose) on the CAN bus. If multiple sensors should be used on
one CAN bus, each sensor must have a base ID that separates its ID range from the
other devices.
Table 1: CAN ID overview
Vehicle motion data
base ID
Object list header (start of object data)
Tracking1: First set of information for an object
Tracking2: Second set of information for an object
Class and box1: Bounding box information for an
object
Box2: Bounding box information for an object
Contour header: Start of contour information for an
object
Contour points: Additional contour points.
Reply from the sensor (for each received

8014493/ YDB5/2014-11-25 © SICK AG · Germany · All rights reserved · Subject to change without notice Page 4 of 26
2.3 Message format
Message length is always 8 bytes, unless declared differently in the description.
Message byte and bit numbering is zero based. E.g., the first data byte of a message ist
byte 0, the last one byte 7.
Data encoding is big endian (Motorola) for all messages except command, command
reply and errors and warnings, which use little endian (Intel).

8014493/ YDB5/2014-11-25 © SICK AG · Germany · All rights reserved · Subject to change without notice Page 5 of 26
3 Object Data
Object data can be transmitted via CAN if the corresponding output flag is enabled in the
sensor.
The ID range is CAN base ID … CAN base ID + 0x7, first and last ID included.
For a base ID 0x500 the range is [0x500, 0x507].
One set of object data consist of:
A list header message
A timestamp message
For each object:
o A Tracking1 message
o A Tracking2 message
o A Class and box1 message
o A Box2 message
o A contour header message
o For each next 1-3 contour points:
A Contour point message
Note: Data encoding is Big Endian format.
3.1 List header: CAN Base ID (e.g. 0x500)
Version of the object data format. This
document describes version 1.
Number of objects transmitted in this
cycle.
Estimated maximum sensor view range
on typical vehicles in percent [0,100].
100: full view range
0: low view range
0xFF: invalid (no estimation possible)
Current sensor temperature in °C. 0x80
indicates an invalid value.
bit 0: Velocity type
0 = absolute velocities,
1 = relative velocities.
bit 1: Bounding boxes
0 = boxes are object boxes (aligned to
object),
1 = boxes are bounding boxes (aligned
to axes of coordinate system).
bits 2…7:
reserved

8014493/ YDB5/2014-11-25 © SICK AG · Germany · All rights reserved · Subject to change without notice Page 6 of 26
Counter for header and trailer message
(to be able to match header and trailer)
0: sensor not covered; other: sensor
covered = blind
3.2 Timestamp: CAN Base ID + 0x1 (e.g. 0x501)
Start time of the scan these objects are
based on.
Fractional seconds the scan start time.
3.3 Tracking1: CAN Base ID + 0x2 (e.g. 0x502)
ID of this object from the tracking. Use
this ID to refer messages to an object.
Position of the object (reference point,
e.g. center of gravity) in the reference
coordinate system in cm.
byte 5
bits 0…7,
byte 6
bits 4…7
Object velocity in 0.1 m/s in the reference
coordinate system. See list header for
absolute or relative velocities. 0x800
indicates an invalid velocity.
byte 6
bits 0…3,
byte 7
bits 0…7
Please refer to this image for clarification of the bits and bytes used for each information:
Byte 7 6 5 4 3 2 1 0
0
1
2
3
4
5 Velocity X
6
7 Velocity Y

8014493/ YDB5/2014-11-25 © SICK AG · Germany · All rights reserved · Subject to change without notice Page 7 of 26
3.4 Tracking2: CAN Base ID + 0x3 (e.g. 0x503)
ID of this object from the tracking. Use
this ID to refer messages to an object.
Number of scans this object has been
tracked for. Saturates at 0xFF.
Number of scans this object has only be
predicted without measurement update.
Saturates at 0xFF. Is reset to 0 after
measurement update.
Detection time of this object as offset to
the reference time stamp in ms.
Standard deviation of the position
estimation in cm.
Standard deviation of the velocity
estimation in cm.
3.5 Class and box1: CAN Base ID + 0x4 (e.g. 0x504)
ID of this object from the tracking. Use
this ID to refer messages to an object.
Center position of the box in cm. See list
header for object box / bounding box.
3.6 Box2: CAN Base ID + 0x5 (e.g. 0x505)
ID of this object from the tracking. Use
this ID to refer messages to an object.
Size of the box in cm in the object
coordinate system. The box orientation is
only available for an object box. A
bounding box is an unrotated rectangle in
the reference coordinate system. In this
case the box size is always given in the
reference coordinate system. 0x8000
indicates an invalid orientation.

8014493/ YDB5/2014-11-25 © SICK AG · Germany · All rights reserved · Subject to change without notice Page 8 of 26
Object box orientation in the reference
coordinate system in 1/100°. 0x8000
indicates an invalid orientation.
3.7 Contour header: CAN Base ID + 0x6 (e.g. 0x506)
ID of this object from the tracking. Use
this ID to refer messages to an object.
Number of contour points including start
point transmitted for this object. The
number of following ObjectDataContour
messages can be calculated by
(NumOfContourPoints+1) Div 3. If this
value is set to 0xFF (invalid), the contour
of this object was not calculated correctly
(e.g. too many contour points). In this
case, the ContourStartpoint contains the
closest distance to the object. No more
contour point messages are sent for this
object.
Closest contour
point number
The closest object distance can be found
in the contour point with this number. The
numbering starts with 0 (start point).
Position of the first contour point in cm in
the reference coordinate system. This is
the first point of the contour (or the
closest distance, see above). The
following contour points are only given by
offsets to the previous points.
3.8 Contour points: CAN Base ID + 0x7 (e.g. 0x507)
ID of this object from the tracking. Use
this ID to refer messages to an object.
Number of this contour message. Zero
based.
Add these offsets to the position of the
previous point. Calculate the position for