Communication via
CAN bus (CANopen)
MSA501
Date: 12.10.2018
Art. No. 88734
Mod. status 330/18
Page 18 of 51
5.4.1.2
Normal Request/Response
If more than 4 bytes of service data are to be transferred, the data is exchanged between two
subscribers via the normal Request/Response. This procedure is also initiated by an
initialization message, and the actual user data will be transferred in the subsequent segment
messages.
For the MSA501 this is only the case with reading of the object
The initialization message has the following structure:
COB-ID
User data in binary code
Byte 0
read /
write
Byte 1
LSB
Byte 2
MSB
Byte 3
Byte 4
LSB
Byte 5 Byte 6 Byte 7
MSB
SDO rx/tx
+ Node-ID
Command
byte
index
Sub-index User data (number of user data)
The segment message has the following structure:
COB-ID
User data in binary code
Byte 0
read /
write
Byte 1
LSB
Byte 2 Byte 3 Byte 4 Byte 5 Byte 6 Byte 7
MSB
SDO rx/tx
+ Node-ID
Command
byte
User data
Initialization and segment message: Command byte, byte 0:
The command byte determines the type of access and the number of valid data bytes. The
following command bytes are valid for the MSA501:
Command byte
Type
Function
Read Request
40h
SDO (rx), Normal Initiate
Upload Request
Request parameter from slave
(number of bytes to be
transferred).
Read Request
60h
SDO (rx), Normal Segment
Upload Request
Request parameter from slave (user
data)
Read Response
41h
SDO (tx), Normal Initiate
Upload Response
Report parameter to master
(number of bytes to be
transferred).
Read Response
03h
SDO (tx), Normal Segment
Upload Response
Report parameter to master (user
data)
Error Response
80h
SDO (tx), Abort Domain
Transfer
Slave reports error code to master
Table 14: Command coding