ROBOTIS e-Manual v1.13.01
To operate Dynamixel, Instruction Packet, which is binary type data, should be sent to Dynamixel from Main Controller. Instruction Packet has seven kinds of commands. (Refer to “Instruction Packet”)
In addition, Dynamixel receives Instruction Packet to perform a command and returns the result as Status Packet to Main Controller. This section describes examples of the usage of each command of Instruction Packet.
| The following example is written based on Dynamixel Actuator RX-64. Since other Dynamixels such as AX-12/12+, DX etc. consist of equal command, the same Packet type can be used. |
Function This command is to read data in the Control Table inside of RX-64.
Length 0X04
Instruction 0X02
Parameter1 Start Address of data to be read
Parameter2 Length of Data to be read

Function This command is to write data to the Control Table inside of RX-64.
Length N+3 (if the number of writing data is N)
Instruction 0X03
Parameter1 Start address to write data
Parameter2 First data to write
Parameter3 Second data to write
Parameter N+1 Nth Data to write

Function The REG_WRITE command is similar to the WRITE_DATA command in terms of function, but differs in terms of the timing that a command is executed. When Instruction Packet arrives, it is saved in Buffer and the Write operation remains in the standby state. At this moment, Registered Instruction (Address 44 (0x2C)) is set as “1”. Then, when Action Instruction Packet arrives, Registered Instruction changes into “‘0” and the registered Write command is finally executed.
Length N+3 (if the number of Writing Data is N)
Instruction 0X04
Parameter1 Start Address to write Data
Parameter2 First data to write
Parameter N+1 Nth data to write

Function This command is to execute the Write action registered by REG_WRITE
Length 0X02
Instruction 0X05
Parameter NONE
The Action command is useful when several RX-64s are moved with accuracy at the same time. When several running gears are controlled via communication, there is a little time difference in terms of enabling time between the first and the last running gear getting commands. RX-64 has resolved this problem by using Action Instruction.
Function This command does not instruct anything. It is only used when receiving Status Packet or confirming the existence of RX-64 with a specific ID. .
Length 0X02
Instruction 0X01
Parameter NONE
Although Status Return Level (Address 16 (0X10)) is 0, it returns Status Packet all the time for Ping Instruction. But, it does not return Status Packet when Check Sum Error occurs in spite of using PING Instruction.
Function This command is to reset the Control Table of RX-64 to the factory default setting
| Please be careful since the value set by users can be erased if RESET command is used. |
Length 0X02
Instruction 0X06
Parameter NONE

Function This command is used to control several RX-64s simultaneously with one Instruction Packet transmission. When this command is used, several commands are transmitted at once, so that the communication time is reduced when multiple RX-64s are controlled. However, the SYNC WRITE command can be used only if both of the address and length of the Control Table to write is identical. Besides, ID should be transmitted as Broadcasting ID.
| Generally, in the event 1 command packet is 4 byte, 26 Dynamixel can be controlled simultaneously. Make sure that the length of packet does not to exceed 143 bytes since the volume of receiving buffer of RX-64 is 143 bytes. |
ID 0XFE
Length (L+1) X N + 4 (L: Data Length per RX-64, N: the number of RX-64s)
Instruction 0X83
Parameter1 Start address to write Data
Parameter2 Length of Data to write
Parameter3 First ID of RX-64
Parameter4 First data of the first RX-64
Parameter5 Second data of the first RX-64
…
Parameter L+3 Lth Data of the first RX-64
Parameter L+4 ID of the second RX-64
Parameter L+5 First data of the second RX-64
Parameter L+6 Second data of the second RX-64
…
Parameter 2L+4 Lth data of the second RX-64

The following examples are assumed that ID = 1, and Baud rate = 57142 BPS.














