Robotis MX-28AT User manual

MX-28AR, MX-28AT (Protocol 2.0)
1. Specifications
Item Specifications
MCU ARM CORTEX-M3 (72 [MHz], 32Bit)
Position Sensor Contactless absolute encoder (12Bit, 360 [°])
Maker : ams(www.ams.com), Part No : AS5045
Motor Coreless(Maxon)
Baud Rate 8,000 [bps] ~ 4.5 [Mbps]
Control Algorithm PID control
Resolution 4096 [pulse/rev]
Backlash 20 [arcmin] (0.33 [°])
Operating Mode
Velocity Control Mode
Position Control Mode(0° ~ 360°)
Extended Position Ctrl Mode(Multi-turn)
PWM Control Mode
Weight MX-28AR/AT : 77 [g], MX-28R/T : 72 [g]
Dimensions (W x H x D) 35.6 x 50.6 x 35.5 [mm]
Gear Ratio 193 : 1
Stall Torque
2.3 [Nm] (at 11.1 [V], 1.3 [A])
2.5 [Nm] (at 12 [V], 1.4 [A])
3.1 [Nm] (at 14.8 [V], 1.7 [A])
No Load Speed
50 [rev/min] (at 11.1 [V])
55 [rev/min] (at 12 [V])
67 [rev/min] (at 14.8 [V])
Radial Load 1 30 [N] (10 [mm] away from the horn)
Axial Load 1 15 [N]
Operating Temperature -5 ~ +80 [°C]
Input Voltage 10.0 ~ 14.8 [V] (Recommended : 12.0 [V])
Command Signal Digital Packet

Item Specifications
Protocol Type TTL Half Duplex Asynchronous Serial Communication with 8bit, 1stop, No Parity
RS485 Asynchronous Serial Communication with 8bit, 1stop, No Parity
Physcial Connection RS485 / TTL Multidrop Bus
ID 253 ID (0 ~ 252)
Feedback Position, Velocity, Temperature, Load, Input Voltage, Trajectory, Realtime Tick, etc
Material
Full Metal Gear
Engineering Plastic(Front, Middle, Back)
1 Metal(Front)
Standby Current 100 [mA]
1 Applies to alumium housing products(MX-28AR/AT, MX-64AR/AT, MX-106R/T).
DANGER
(May cause serious injury or death)
Never place items containing water, flammables, and solvents near product.
Never place fingers, arms, toes, and other body parts near product during operation.
Cut power off if product emits strange odors or smoke.
Keep product out of reach of children.
Check the power polarity before wiring.
CAUTION
(May cause injury or damage to product)
Do not operate the product at a temperature exceeding range.
Do not insert sharp blades nor pins during product operation.
ATTENTION
(May cause injury or damage to product)
Do not disassemble or modify product.
Do not drop or apply strong shock to product.
1. 1. Performance Graph

NOTE : The Max Torque and the Stall Torque of Performance Graph are different in measurement
methods. Stall torque is a measured value of the momentary torque that it can reach. This is generally
how RC servos are measured. The Performance graph is also called as N-T curves, which is measured
with the gradually increasing load. The actual motor operation environment is closer to the performance
graph, not stall torque method. For this reason, the performance graph is broadly used in the industrial
field. Generally, Max Torque of the Performance Graph is less than the Stall Torque.
CAUTION : When supplying power
It is recommended using ROBOTIS controller or SMPS2DYNAMIXEL.
Do not connect or disconnect DYNAMIXEL when power is being supplied.
2. Control Table
The Control Table is a structure of data implemented in the device. Users can read a specific Data to
get status of the device with Read Instruction Packets, and modify Data as well to control the device
with WRITE Instruction Packets.
CAUTION
1. MX(2.0) Firmware is different from MX series’ control table and address. Please check the control table
address before usage.
2. MX(2.0) Firmware inherits DYNAMIXEL X’s function. Therefore, it supports Protocol 1.0 and Protocol
2.0, and various Operating Modes, Secondary ID, Drive Mode, Bus Watchdog, etc. Please refer to the
control table for more details.
2. 1. Control Table, Data, Address

The Control Table is a structure that consists of multiple Data fields to store status or to control the
device. Users can check current status of the device by reading a specific Data from the Control
Table with Read Instruction Packets. WRITE Instruction Packets enable users to control the
device by changing specific Data in the Control Table. The Address is a unique value when
accessing a specific Data in the Control Table with Instruction Packets. In order to read or write
data, users must designate a specific Address in the Instruction Packet. Please refer to Protocol
2.0 for more details about Instruction Packets.
NOTE : Two’s complement is applied for the negative value. For more information, please refer to Two’s
complement from Wikipedia.
2. 1. 1. Area (EEPROM, RAM)
The Control Table is divided into 2 Areas. Data in the RAM Area is reset to initial values when
the power is reset(Volatile). On the other hand, data in the EEPROM Area is maintained even
when the device is powered off(Non-Volatile).
Data in the EEPROM Area can only be written to if Torque Enable(64) is cleared to ‘0’(Off).
2. 1. 2. Size
The Size of data varies from 1 ~ 4 bytes depend on their usage. Please check the size of data
when updating the data with an Instruction Packet. For data larger than 2 bytes will be saved
according to Little Endian.
2. 1. 3. Access
The Control Table has two different access properties. ‘RW’ property stands for read and write
access permission while ‘R’ stands for read only access permission. Data with the read only
property cannot be changed by the WRITE Instruction. Read only property(‘R’) is generally
used for measuring and monitoring purpose, and read write property(‘RW’) is used for
controlling device.
2. 1. 4. Initial Value
Each data in the Control Table is restored to initial values when the device is turned on. Default
values in the EEPROM area are initial values of the device (factory default settings). If any
values in the EEPROM area are modified by a user, modified values will be restored as initial
values when the device is turned on. Initial Values in the RAM area are restored when the
device is turned on.
2. 2. Control Table of EEPROM Area
Address Size
(Byte) Data Name Description Access Initial
Value
0 2 Model Number Model Number R 30
2 4 Model Information Model Information R -

Address Size
(Byte) Data Name Description Access Initial
Value
6 1 Firmware Version Firmware Version R -
7 1 ID DYNAMIXEL ID RW 1
8 1 Baud Rate Communication Baud Rate RW 1
9 1 Return Delay Time Response Delay Time RW 250
10 1 Drive Mode Drive Mode RW 0
11 1 Operating Mode Operating Mode RW 3
12 1 Secondary(Shadow) ID Secondary ID RW 255
13 1 Protocol Type Protocol Type RW 2
20 4 Homing Offset Home Position Offset RW 0
24 4 Moving Threshold Velocity Threshold for Movement Detection RW 10
31 1 Temperature Limit Maximum Internal Temperature Limit RW 80
32 2 Max Voltage Limit Maximum Input Voltage Limit RW 160
34 2 Min Voltage Limit Minimum Input Voltage Limit RW 95
36 2 PWM Limit Maximum PWM Limit RW 885
40 4 Acceleration Limit Maximum Acceleration Limit RW 32767
44 4 Velocity Limit Maximum Velocity Limit RW 230
48 4 Max Position Limit Maximum Position Limit RW 4,095
52 4 Min Position Limit Minimum Position Limit RW 0
63 1 Shutdown Shutdown Error Information RW 52
2. 3. Control Table of RAM Area
Address Size
(Byte) Data Name Description Access Initial
Value
64 1 Torque Enable Motor Torque On/Off RW 0
65 1 LED Status LED On/Off RW 0
68 1 Status Return Level Select Types of Status Return RW 2
69 1 Registered Instruction REG_WRITE Instruction Flag R 0
70 1 Hardware Error Status Hardware Error Status R 0
76 2 Velocity I Gain I Gain of Velocity RW 1920
78 2 Velocity P Gain P Gain of Velocity RW 100
80 2 Position D Gain D Gain of Position RW 0
82 2 Position I Gain I Gain of Position RW 0
84 2 Position P Gain P Gain of Position RW 850

Address Size
(Byte) Data Name Description Access Initial
Value
88 2 Feedforward 2nd Gain 2nd Gain of Feed-Forward RW 0
90 2 Feedforward 1st Gain 1st Gain of Feed-Forward RW 0
98 1 BUS Watchdog DYNAMIXEL BUS Watchdog RW 0
100 2 Goal PWM Desired PWM Value RW -
104 4 Goal Velocity Desired Velocity Value RW -
108 4 Profile Acceleration Acceleration Value of Profile RW 0
112 4 Profile Velocity Velocity Value of Profile RW 0
116 4 Goal Position Desired Position RW -
120 2 Realtime Tick Count Time in Millisecond R -
122 1 Moving Movement Flag R 0
123 1 Moving Status Detailed Information of Movement Status R 0
124 2 Present PWM Present PWM Value R -
126 2 Present Load Present Load Value R -
128 4 Present Velocity Present Velocity Value R -
132 4 Present Position Present Position Value R -
136 4 Velocity Trajectory Desired Velocity Trajectory from Profile R -
140 4 Position Trajectory Desired Position Trajectory from Profile R -
144 2 Present Input Voltage Present Input Voltage R -
146 1 Present Temperature Present Internal Temperature R -
168 2 Indirect Address 1 Indirect Address 1 RW 224
170 2 Indirect Address 2 Indirect Address 2 RW 225
172 2 Indirect Address 3 Indirect Address 3 RW 226
… … … … … …
218 2 Indirect Address 26 Indirect Address 26 RW 249
220 2 Indirect Address 27 Indirect Address 27 RW 250
222 2 Indirect Address 28 Indirect Address 28 RW 251
224 1 Indirect Data 1 Indirect Data 1 RW 0
225 1 Indirect Data 2 Indirect Data 2 RW 0
226 1 Indirect Data 3 Indirect Data 3 RW 0
… … … … … …
249 1 Indirect Data 26 Indirect Data 26 RW 0
250 1 Indirect Data 27 Indirect Data 27 RW 0

Address Size
(Byte) Data Name Description Access Initial
Value
251 1 Indirect Data 28 Indirect Data 28 RW 0
578 2 Indirect Address 29 Indirect Address 29 RW 634
580 2 Indirect Address 30 Indirect Address 30 RW 635
582 2 Indirect Address 31 Indirect Address 31 RW 636
… … … … … …
628 2 Indirect Address 54 Indirect Address 54 RW 659
630 2 Indirect Address 55 Indirect Address 55 RW 660
632 2 Indirect Address 56 Indirect Address 56 RW 661
634 1 Indirect Data 29 Indirect Data 29 RW 0
635 1 Indirect Data 30 Indirect Data 30 RW 0
636 1 Indirect Data 31 Indirect Data 31 RW 0
… … … … … …
659 1 Indirect Data 54 Indirect Data 54 RW 0
660 1 Indirect Data 55 Indirect Data 55 RW 0
661 1 Indirect Data 56 Indirect Data 56 RW 0
CAUTION : Protocol 1.0 does not support addresses greater than 256. Therefore, Indirect Address 29 ~
56 and Indirect Data 29 ~ 56 can only be accessed with Protocol 2.0.
2. 4. Control Table Description
CAUTION : Data in the EEPROM Area can only be written when the value of Torque Enable(64) is
cleared to ‘0’.
2. 4. 1. Model Number(0)
This address stores model number of DYNAMIXEL.
2. 4. 2. Firmware Version(6)
This address stores firmware version of DYNAMIXEL.
2. 4. 3. ID(7)
The ID is a unique value in the network to identify each DYNAMIXEL with an Instruction
Packet. 0~252 (0xFC) values can be used as an ID, and 254(0xFE) is occupied as a broadcast
ID. The Broadcast ID(254, 0xFE) can send an Instruction Packet to all connected DYNAMIXEL
simultaneously.

NOTE : Please avoid using an identical ID for multiple DYNAMIXEL. You may face communication
failure or may not be able to detect DYNAMIXEL with an identical ID.
2. 4. 4. Baud Rate(8)
Baud Rate determines serial communication speed between a controller and DYNAMIXEL.
Value Baud Rate Margin of Error
7 4.5M 0.000%
6 4M 0.000%
5 3M 0.000%
4 2M 0.000%
3 1M 0.000%
2 115,200 0.000%
1(Default) 57,600 0.000%
0 9,600 0.000%
NOTE : Less than 3% of the baud rate error margin will not affect to UART communication.
NOTE : For the stable communication with higher Baudrate, configure USB Latency value to the lower.
USB Latency Setting
2. 4. 5. Return Delay Time(9)
After the DYNAMIXEL receives an Instruction Packet, it delays transmitting the Status Packet
for Return Delay Time(9). For instance, if the Return Delay Time(9) is set to ‘10’, the Status
Packet will be returned after 20[μsec] when the Instruction Packet is received.
Unit Value Range Description
2[μsec] 0 ~ 254 Default value ‘250’(500[μsec]), Maximum 508[μsec]
2. 4. 6. Drive Mode(10)
This address configures Drive Mode of DYNAMIXEL.
Bit Item Description
Bit 7(0x80) - Unused, always ‘0’
Bit 6(0x40) - Unused, always ‘0’
Bit 5(0x20) - Unused, always ‘0’
Bit 4(0x10) - Unused, always ‘0’
Bit 3(0x08) - Unused, always ‘0’
Bit 2(0x04) - Unused, always ‘0’

Bit Item Description
Bit 1(0x02) - Unused, always ‘0’
Bit 0(0x01) Normal/Reverse Mode [0] Normal Mode: CCW(Positive), CW(Negative)
[1] Reverse Mode: CCW(Negative), CW(Positive)
NOTE : Time-based Profile is available from firmware V42.
NOTE : If the value of Bit 0(Normal/Reverse Mode) of the Drive Mode(10) is set to 1 , rotational
direction is inverted.
Thus, Position, Velocity, Current, PWM will have a inverted direction.
This feature can be very useful when configuring symmetrical joint or wheel system.
2. 4. 7. Operating Mode(11)
Value Operating
Mode Description
1
Velocity Control
Mode
(0° ~ 360°)
This mode controls velocity and ideal for wheel operation.
This mode is identical to the Wheel Mode(endless) from existing DYNAMIXEL.
3(Default) Position Control
Mode
This mode controls position and identical to the Joint Mode.
Operating position range is limited by Max Position Limit(48) and Min Position
Limit(52).
This mode is ideal for articulated robots that each joint rotates less than 360°.
4
Extended
Position Control
Mode
(Multi-turn)
This mode controls position and identical to Multi-turn Mode.
512 turns are supported(-256[rev] ~ 256[rev]) and ideal for multi-turn wrists or
conveyer systems or a system that requires an additional reduction gear.
16
PWM Control
Mode
(Voltage Control
Mode)
This mode directly controls PWM output (Voltage Control Mode)
NOTE : Switching Operating Mode will reset gains(PID, Feedfoward) properly to the selected
Operating Mode. The profile generator and limits will also be reset.
1. Profile Velocity(112), Profile Acceleration(108) : Reset to ‘0’
2. Goal PWM(100) : Reset to PWM Limit(36)
NOTE : PWM is the abbreviation for Pulse Width Modulation that modulates PWM Duty to control
motors.
It changes pulse width to control average supply voltage to the motor and this technique is widely
used in the motor control field.
1. PWM Control Mode is similar to the Wheel Mode of DYNAMIXEL AX and RX series.
2. Use Goal PWM(100) on PWM Control Mode in order to control supply voltage for DYNAMIXEL.

NOTE : Present Position(132) represents 4 byte continuous range from -2,147,483,648 to
2,147,483,647 when Torque is turned off regardless of Operating Mode(11).
However, Present Position(132) will be reset to an absolute position value of one full rotation in those
cases:
1. When Operating Mode(11) is changed to Position Control Mode, Present Position(132) will be
reset to an absolute position value of a full rotation.
2. When torque is turned on in Position Control Mode, Present Position(132) will be reset to an
absolute position value of one full rotation.
3. When turning off the power supply on Extended Position Control Mode, Present Position(132) will
be reset to an absolute position value of one full rotation.
Present Position(132) value can be affected by Homing Offset(20) .
2. 4. 8. Secondary(Shadow) ID(12)
Set the DYNAMIXEL’s Secondary ID. Secondary ID(12) is a value to identify each
DYNAMIXEL, just like the ID(7). However, unlike ID(7), Secondary ID(12) is not a unique value.
Therefore, DYNAMIXEL with the same Secondary ID value form a group. The differences
between Secondary ID(12) and ID(7) are as follows :
1. Secondary ID(12) is not a unique value. i.e., a lot of DYNAMIXEL may have the same
Secondary ID value.
2. ID(7) has a higher priority than Secondary ID(12). i.e., if Secondary ID(12) and ID(7) are the
same, ID(7) will be applied first.
3. The EEPROM area of the Control Table cannot be modified with Secondary ID(12). Only
the RAM area can be modified.
4. If Instruction Packet ID is the same as Secondary ID(12), the Status Packet will not be
returned.
5. If the value of Secondary ID(12) is 253 or higher, the Secondary ID function is deactivated.
Values Description
0 ~ 252 Activate Secondary ID function
253 ~ 255 Deactivate Secondary ID function, Default value ‘255’
The following are examples of operation when there are five DYNAMIXEL with ID (7) set from 1
to 5.
1. Set all five DYNAMIXEL’ Secondary ID(12) to ‘5’.
2. Send Write Instruction Packet(ID = 1, LED(65) = 1).
3. Turn on LED of DYNAMIXEL with ID ‘1’ and return the Status Packet.
4. Send Write Instruction Packet(ID = 5, LED(65) = 1).
5. Turn on LED on five DYNAMIXEL. However, Status Packet of DYNAMIXEL with ID ‘5’ will
be returned.
6. Set the Secondary ID(12) of all five DYNAMIXEL to ‘100’.
7. Send Write Instruction Packet(ID = 100, LED(65) = 0).
8. Turn off LED on five DYNAMIXEL. However, as there is no DYNAMIXEL with ID ‘100’,
Status Packet is not returned.

2. 4. 9. Protocol Type(13)
Users can select DYNAMIXEL protocol type (1.0 and 2.0).
Even if Protocol 1.0 is selected, Protocol 2.0 Control Table will be used.
It is recommended to use an identical protocol type for multiple DYNAMIXEL.
Value Protocol Type Compatible DYNAMIXEL
1 1.0 AX Series, DX Series, RX Series, EX Series, MX Series with Firmware below v39
2(default) 2.0 MX-28/64/106 with Firmware v39 or above, X Series, PRO Series
WARNING : In order to change the Protocol Type to Protocol 1.0, please use DYNAMIXEL Wizard 2.0
as R+ Manager 2.0 does not support Protocol 1.0.
NOTE : The protocol 2.0 is greatly enhanced from the protocol 1.0. Accessing some of the Control
Table area might be denied if protocol 1.0 is selected. This manual complies with protocol 2.0. Please
refer to the Protocol 1.0 and Protocol 2.0 of e-Manual for more details about the protocol.
NOTE : Please refer to the Protocol Compatibility table for product.
2. 4. 10. Homing Offset(20)
Users can adjust the Home position by setting Home Offset(20). The Homing Offset value is
added to the Present Position(132).
Present Position(132) = Actual Position + Homing Offset(20)
Unit Value Range Description
about 0.088 [°] -1,044,479 ~ 1,044,479
(-255 ~ 255[rev]) 4,096 resolution
NOTE : In case of the Position Control Mode(Joint Mode) that rotates less than 360 degrees, any
invalid Homing Offset(20) values will be ignored(valid range : -1,024 ~ 1,024).
NOTE : In the case of Reverse Mode bit is set in Drive Mode(10), the sign of Homing Offset value will
not be reversed.
2. 4. 11. Moving Threshold(24)
This value helps to determine whether the DYNAMIXEL is in motion or not.
When the absolute value of Present Velocity(128) is greater than the Moving Threshold(24),
Moving(122) is set to ‘1’, otherwise it is cleared to ‘0’.
Values Description
Unit about 0.229 rpm All velocity related Data uses the same unit
Range 0 ~ 1,023 -

2. 4. 12. Temperature Limit(31)
This value limits operating temperature.
When the Present Temperature(146) that indicates internal temperature of DYNAMIXEL is
greater than the Temperature Limit(31), the Over Heating Error Bit(0x04) and Hardware Error
Bit(0x80) in the Hardware Error Status(70) will be set.
If Overheating Error Bit(0x04) is configured in the Shutdown(63), Torque Enable(64) is cleared
to ‘0’ and Torque will be disabled.
For more details, please refer to the Shutdown(63) section.
Unit Value Range Description
About 1° 0 ~ 100 0 ~ 100°
CAUTION : Do not set the temperature higher than the default value. When the temperature alarm
shutdown occurs, wait 20 minutes to cool the temperature before re-use. Keep using the product when
the temperature is high can cause severe damage.
2. 4. 13. Min/Max Voltage Limit(32, 34)
These values are maximum and minimum operating voltages. When present input voltage
acquired from Present Input Voltage(144) exceeds the range of Max Voltage Limit(32) and Min
Voltage Limit(34), Input Voltage Error Bit(0x01) in the Hardware Error Status(70) are set.
If Input Voltage Error Bit(0x10) is configured in the Shutdown(63), Torque Enable(64) is cleared
to ‘0’ and Torque is disabled.
For more details, please refer to the Shutdown(63) section.
Unit Value Range Description
About 0.1 [V] 95 ~ 160 9.5 ~ 16.0 [V]
2. 4. 14. PWM Limit(36)
This value indicates maximum PWM output. Goal PWM(100) can’t be configured with any
values exceeding PWM Limit(36). PWM Limit(36) is commonly used in all operating mode as
an output limit, therefore decreasing PWM output will result in decreasing torque and velocity.
For more details, please refer to the Gain section of each operating modes.
Values Description
0(0 [%]) ~ 885(100 [%]) 885 = 100 [%] output
2. 4. 15. Acceleration Limit(40)
This value indicates maximum Profile Acceleration(108). Profile Acceleration(108) can’t be
configured with any values exceeding Acceleration Limit(40). Profile Acceleration(108) is used
in all operating mode except PWM Control Mode in order to generate a desired trajectory. For
more details, please refer to the Profile Velocity(112).
Unit Value Range
214.577 Rev/min20 ~ 32,767

2. 4. 16. Velocity Limit(44)
This indicates the maximum value of Goal Velocity(104). For more details, please refer to Goal
Velocity(104).
Unit Value Range
0.229rpm 0 ~ 1,023
NOTE: The default value of Velocity Limit(44) has been decreased since Firmware V42.
2. 4. 17. Min/Max Position Limit(48, 52)
These values limit maximum and minimum desired positions for Position Control Mode(Joint
Mode) within the range of 1 rotation(0 ~ 4,095).
Therefore, Goal Position(116) should be configured within the position limit range.
These values are not used in Extended Position Control Mode and Current-based Position
Control Mode.
Unit Value Range
0.088 [°] 0 ~ 4,095(1 rotation)
NOTE : Max Position Limit(48) and Min Position Limit(52) are only used in Position Control Mode with
a single turn.
2. 4. 18. Shutdown(63)
The DYNAMIXEL can protect itself by detecting dangerous situations that could occur during
the operation.
Each Bit is inclusively processed with the ‘OR’ logic, therefore, multiple options can be
generated.
For instance, when ‘0x05’ (binary : 00000101) is defined in Shutdown(63), DYNAMIXEL can
detect both Input Voltage Error(binary : 00000001) and Overheating Error(binary : 00000100).
If those errors are detected, Torque Enable(64) is cleared to ‘0’ and the motor output becomes
0 [%].
REBOOT is the only method to reset Torque Enable(64) to ‘1’(Torque ON) after the shutdown.
Check Hardware Error Bit(0x80) in a error field of Status Packet or a present status via
Hardware Error Status(70) The followings are detectable situations.
Bit Item Description
Bit
7- Unused, Always ‘0’
Bit
6- Unused, Always ‘0’
Bit
5Overload Error(default) Detect persistent load that exceeds maximum output
Bit
4
Electrical Shock
Error(default)
Detect electric shock on the circuit or insufficient power to operate the
motor

Bit Item Description
Bit
3Motor Encoder Error Detect malfunction of the motor encoder
Bit
2OverHeating Error(default) Detect internal temperature exceeds the configured operating
temperature
Bit
1- Unused, Always ‘0’
Bit
0Input Voltage Error Detect input voltage exceeds the configured operating voltage
NOTE :
1. If Shutdown occurs, LED will flicker every second. (Firmware v41 or above)
2. If Shutdown occurs, reboot the device.
H/W REBOOT : Turn off and turn on the power again
S/W REBOOT : Transmit REBOOT Instruction (For more details, refer to the Reboot section of
e-Manual.)
2. 4. 19. Torque Enable(64)
Controls Torque ON/OFF. Writing ‘1’ to this address will turn on the Torque and all Data in the
EEPROM area will be protected.
Value Description
0(Default) Turn off the torque
1 Turn on the torque and lock EEPROM area
NOTE : Present Position(132) can be reset when Operating Mode(11) and Torque Enable(64) are
updated. For more details, please refer to the Homing Offset(20) and Present Position(132).
2. 4. 20. LED(65)
Turn on or turn off the LED on DYNAMIXEL.
Bit Description
0(Default) Turn OFF the LED
1 Turn ON the LED
NOTE : The LED indicates present status of the device.
Status LED Representation
Booting LED flickers once
Factory Reset LED flickers 4 times
Alarm LED flickers

Status LED Representation
Boot Mode LED On
2. 4. 21. Status Return Level(68)
This value decides how to return Status Packet when DYNAMIXEL receives an Instruction
Packet.
Value Responding Instructions Description
0 PING Instruction Status Packet will not be returned for all Instructions
1PING Instruction
READ Instruction Status Packet will be returned only for READ Instruction
2 All Instructions Status Packet will be returned for all Instructions
NOTE : If the ID of Instruction Packet is set to Broad Cast ID(0xFE), Status Packet will not be returned
for READ and WRITE Instructions regardless of Status Return Level. For more details, please refer to
the Status Packet section for Protocol 1.0 or Protocol 2.0.
2. 4. 22. Registered Instruction(69)
Value Description
0 REG_WRITE instruction is not received
1 REG_WRITE instruction is received
NOTE : If ACTION instruction is executed, the value will be changed to 0.
2. 4. 23. Hardware Error Status(70)
This value indicates hardware error status. The DYNAMIXEL can protect itself by detecting
dangerous situations that could occur during the operation.
Each Bit is inclusively processed with the ‘OR’ logic, therefore, multiple options can be
generated.
For instance, when ‘0x05’ (binary : 00000101) is defined in Shutdown(63), DYNAMIXEL can
detect both Input Voltage Error(binary : 00000001) and Overheating Error(binary : 00000100).
If those errors are detected, Torque Enable(64) is cleared to ‘0’ and the motor output becomes
0 [%].
REBOOT is the only method to reset Torque Enable(64) to ‘1’(Torque ON) after the shutdown.
Check Hardware Error Bit(0x80) in a error field of Status Packet or a present status via
Hardware Error Status(70) The followings are detectable situations.
Bit Item Description
Bit
7- Unused, Always ‘0’

Bit Item Description
Bit
6- Unused, Always ‘0’
Bit
5Overload Error(default) Detect persistent load that exceeds maximum output
Bit
4
Electrical Shock
Error(default)
Detect electric shock on the circuit or insufficient power to operate the
motor
Bit
3Motor Encoder Error Detect malfunction of the motor encoder
Bit
2OverHeating Error(default) Detect internal temperature exceeds the configured operating
temperature
Bit
1- Unused, Always ‘0’
Bit
0Input Voltage Error Detect input voltage exceeds the configured operating voltage
NOTE :
1. If Shutdown occurs, LED will flicker every second. (Firmware v41 or above)
2. If Shutdown occurs, reboot the device.
H/W REBOOT : Turn off and turn on the power again
S/W REBOOT : Transmit REBOOT Instruction (For more details, refer to the Reboot section of
e-Manual.)
2. 4. 24. Velocity PI Gain(76, 78)
These values indicate Gains of Velocity Control Mode.
Gains of DYNAMIXEL’s internal controller can be calculated from Gains of the Control Table as
shown below.
The constant in each equations include sampling time.
Velocity P Gain of DYNAMIXEL’s internal controller is abbreviated to KVP and that of the
Control Table is abbreviated to KVP(TBL).
Controller Gain Conversion Equations Range Description
Velocity I Gain(76) KVI KVI = KVI(TBL) / 65,536 0 ~ 16,383 I Gain
Velocity P Gain(78) KVP KVP = KVP(TBL) / 128 0 ~ 16,383 P Gain
Below figure is a block diagram describing the velocity controller in Velocity Control Mode.
When the instruction transmitted from the user is received by DYNAMIXEL, it takes following
steps until driving the horn.
1. An Instruction from the user is transmitted via DYNAMIXEL bus, then registered to Goal
Velocity(104).
2. Goal Velocity(104) is converted to desired velocity trajectory by Profile Acceleration(108).
3. The desired velocity trajectory is stored at Velocity Trajectory(136).
4. PI controller calculates PWM output for the motor based on the desired velocity trajectory.

5. Goal PWM(100) sets a limit on the calculated PWM output and decides the final PWM
value.
6. The final PWM value is applied to the motor through an Inverter, and the horn of
DYNAMIXEL is driven.
7. Results are stored at Present Position(132), Present Velocity(128), Present PWM(124) and
Present Current(126).
NOTE : Ka stands for Anti-windup Gain and β is a conversion coefficient of position and velocity that
cannot be modified by users. For more details about the PID controller, please refer to the PID
Controller at wikipedia.
2. 4. 25. Position PID Gain(80, 82, 84), Feedforward 1st/2nd Gains(88, 90)
These Gains are used in Position Control Mode and Extended Position Control Mode. Gains of
DYNAMIXEL’s internal controller can be calculated from Gains of the Control Table as shown
below. The constant in each equations include sampling time. Position P Gain of DYNAMIXEL’s
internal controller is abbreviated to KPP and that of the Control Table is abbreviated to
KPP(TBL).
Controller
Gain
Conversion
Equations Range Description
Position D Gain(80) KPD KPD = KPD(TBL) / 16 0 ~
16,383 D Gain
Position I Gain(82) KPIKPI = KPI(TBL) /
65,536
0 ~
16,383 I Gain
Position P Gain(84) KPP KPP = KPP(TBL) / 128 0 ~
16,383 P Gain
Feedforward 2nd
Gain(88) KFF2nd KFF2nd(TBL) / 4 0 ~
16,383
Feedforward Acceleration
Gain
Feedforward 1st
Gain(90) KFF1st KFF1st(TBL) / 4 0 ~
16,383 Feedforward Velocity Gain
Below figure is a block diagram describing the position controller in Position Control Mode and
Extended Position Control Mode. When the instruction from the user is received by
DYNAMIXEL, it takes following steps until driving the horn.

1. An Instruction from the user is transmitted via DYNAMIXEL bus, then registered to Goal
Position(116).
2. Goal Position(116) is converted to desired position trajectory and desired velocity trajectory
by Profile Velocity(112) and Profile Acceleration(108).
3. The desired position trajectory and desired velocity trajectory is stored at Position
Trajectory(140) and Velocity Trajectory(136) respectively.
4. Feedforward and PID controller calculate PWM output for the motor based on desired
trajectories.
5. Goal PWM(100) sets a limit on the calculated PWM output and decides the final PWM
value.
6. The final PWM value is applied to the motor through an Inverter, and the horn of
DYNAMIXEL is driven.
7. Results are stored at Present Position(132), Present Velocity(128), Present PWM(124) and
Present Current(126).
NOTE : In case of PWM Control Mode, both PID controller and Feedforward controller are deactivated
while Goal PWM(100) value is directly controlling the motor through an Inverter. In this manner, users
can directly control the supplying voltage to the motor.
NOTE : Ka is an Anti-windup Gain that cannot be modified by users.
For more details about the PID controller and Feedforward controller, please refer to the PID
Controller and Feed Forward.
2. 4. 26. BUS Watchdog(98)
Bus Watchdog (98) is available from firmware v38. It is a safety device (Fail-safe) that stops the
DYNAMIXEL if the communication between the controller and DYNAMIXEL communication
(RS485, TTL) is disconnected due to an unspecified error. Communication is defined as all the
Instruction Packet in the DYNAMIXEL Protocol.
Values Description
Unit 20[ms] -
Range 0 Deactivate Bus Watchdog Function, Clear Bus Watchdog Error

Values Description
Range 1 ~ 127 Activate Bus Watchdog
Range -1 Bus Watchdog Error Status
The Bus Watchdog function monitors the communication interval (time) between the controller
and DYNAMIXEL when Torque Enable(64) is ‘1’. If the measured communication interval (time)
is larger than Bus Watchdog(98), the DYNAMIXEL will stop. Bus Watchdog(98) will be changed
to ‘-1’ (Bus Watchdog Error). If the Bus Watchdog Error screen appears, the Goal Value (Goal
PWM(100), Goal Current(102), Goal Velocity(104), Goal Position(116)) will be changed to read-
only-access. Therefore, when a new value is written to the Goal Value, a Range Error will be
returned via the Status packet. If the value of Bus Watchdog(98) is changed to ‘0’, Bus
Watchdog Error will be cleared.
NOTE : For details of Range Error, please refer to the protocol of the e-Manual.
The following are examples of the operation of the Bus Watchdog function.
1. After setting the Operating Mode(11) to speed control mode, change the Torque Enable(64)
to ‘1’.
2. If ‘50’ is written in the Goal Velocity(104), the DYNAMIXEL will rotate in CCW direction.
3. Change the value of Bus Watchdog(98) to ‘100’ (2,000 [ms]). (Activate Bus Watchdog
Function)
4. If no instruction packet is received for 2,000 [ms], the DYNAMIXEL will stop. When it stops,
the Profile Acceleration(108) and Profile Velocity(112) are applied as ‘0’.
5. The value of Bus Watchdog(98) changes to ‘-1’ (Bus Watchdog Error). At this time, the
access to the Goal Value will be changed to read-only.
6. If ‘150’ is written to the Goal Velocity(104), Range Error will be returned via Status Packet.
7. If the value of Bus Watchdog(98) is changed to ‘0’, Bus Watchdog Error will be cleared.
8. If “150” is written in the Goal Velocity(104), the DYNAMIXEL will rotate in CCW direction.
2. 4. 27. Goal PWM(100)
In case of PWM Control Mode, both PID controller and Feedforward controller are deactivated
while Goal PWM(100) value is directly controlling the motor through an Inverter. In other control
modes, this value is used to limit PWM value. This value cannot exceed PWM Limit(36). Please
refer to the Gain section in order to see how Goal PWM(100) affects to different control modes.
Range Description
-PWM Limit(36) ~ PWM Limit(36) Initial Value of PWM Limit(36) : ‘885’
2. 4. 28. Goal Velocity(104)
In case of Velocity Control Mode, Goal Velocity(104) can be used to set a desired velocity. This
value cannot exceed Velocity Limit(44). For now, Goal Velocity(104) is used for desired velocity,
but this value is not used to limit the velocity.
Unit Value Range

Unit Value Range
0.229 rpm -Velocity Limit(44) ~ Velocity Limit(44)
NOTE : The maximum velocity and maximum torque of DYNAMIXEL is affected by supplying voltage.
Therefore, if supplying voltage changes, so does the maximum velocity. This manual complies with
recommended supply voltage(12[V]).
NOTE : If Profile Acceleration(108) and Goal Velocity(104) are modified simultaneously, modified
Profile Acceleration(108) will be used to process Goal Velocity(104).
2. 4. 29. Profile Acceleration(108)
If Velocity-based Profile is selected for Drive Mode(10), Profile Acceleration(108) sets
acceleration of the Profile.
If Time-based Profile is selected for Drive Mode(10), Profile Acceleration(108) sets accelerating
time of the Profile.
Profile Acceleration(108) is applied in all control mode except Current Control Mode.
Please refer to Profile Velocity(112) for more details.
Velocity-based Profile Values Description
Unit 214.577 [rev/min2]Sets acceleration of the Profile
Range 0 ~ 32767 ‘0’ stands for an infinite acceleration
Time-based Profile Values Description
Unit 1 [msec] Sets accelerating time of the Profile
Range 0 ~ 32737 ‘0’ stands for an infinite accelerating time(‘0 [msec]’).
Profile Acceleration(108) will not exceed 50% of Profile Velocity(112) value.
NOTE : Time-based Profile is available from the firmware version 42.
2. 4. 30. Profile Velocity(112)
If Velocity-based Profile is selected for Drive Mode(10), Profile Velocity(112) sets the maximum
velocity of the Profile.
If Time-based Profile is selected for Drive Mode(10), Profile Velocity(112) sets the time span for
the Profile.
Profile Velocity(112) is applied only in Position Control Mode and Extended Position Control
Mode.
NOTE: Velocity Control Mode only uses Profile Acceleration(108) without Profile Velocity(112).
Velocity-based Profile Values Description
Unit 0.229 [rev/min] Sets velocity of the Profile
This manual suits for next models
1
Table of contents
Other Robotis Controllers manuals
Popular Controllers manuals by other brands

ESI
ESI KeyControl 25 XL manual

Allen-Bradley
Allen-Bradley SLC 500 Series manual

Luraco
Luraco LOW COST SPA CONTOLLER WITHOUT TIMER user manual

elsner elektronik
elsner elektronik RF-MSG2-DST Technical specifications and installation instructions

Belimo
Belimo SY4 Series QUICK MOUNT VISUAL INSTRUCTION MANUAL

Emerson
Emerson Fisher Y600A Series instruction manual

Steca
Steca Solsum 6.6F operating manual

Becker
Becker Centronic SunWindSet SWS42 Assembly and operating instructions

DigiTrace
DigiTrace TCONTROL-CONT-03 manual

GYS
GYS GYSPACK AIR manual

Nice HySecurity
Nice HySecurity TITAN 912L Series Installation & reference manual

FIBARO
FIBARO FGBHRGBW-041-1 operating manual