SR-DH4D/SR-RH4D units include an RGB LED on the back of the hand that is used for status information and quick diagnostics of the unit. Furthermore, the LED Colours can be controlled by user through the Dynamixel of SHSP Protocol.

The LED ON time is shared by the User, each one of the servos (4 in this case) and the Virtual ID. Each one gets a time slot, and the User has a slightly longer time slot than the others. If none of the servos or the Virtual ID claim access to the LED, then all the time is given to the user. In this case you will see a solid colour being displayed. This is the normal behavior.

When the unit is booting up, the LED turns on in a Brighter colour of White. Once initialization of the unit is complete, the LED colour becomes dimmer, as a default, steady white colour is set.

The LED colour can be changed by the user by writing to the Control Table of the Virtual Actuator using any method (the Dynamixel Protocol or the SHSP protocol). In particular, positions 100, 101 and 102, control the amount of Red, Green and Blue displayed. The values are 1 Byte each so each colour ranges from 0~255.

The control table for each Physical Actuator exposes a parameter to turn on the LED for that particular actuator. This is done by writing 1 to memory position 25 of the Actuator control table.

When you “enable” the LED for a set actuator, the time slot for that actuator is enabled and the main LED begins sharing the “ON” time between the user slot and actuator slot.

In practice, the LED will show the user selected colour, go off for a brief period, and then quickly blink the number of times corresponding to the actuator number. This cycle will continuously repeat. The colour used for blinking is the same set for the user colour.

For example if you enable LED for actuator 2, you will see 2 quick blinks, in the following sequence:
(and then Long User colour again as the cycle repeats)

If you enable the LED on more actuators, the sequence is further enlarged with the addition of the nr. of blinks for each actuator, separated by a Long Off period between actuator slots to distinguish the blink sequences of each one.

When an error condition occurs, the LED for the actuator where the error happened turns on, as explained above. However, on an error condition, the Blinking colour will not be the user set colour (as above), but instead, the visible colour will indicate the type of error.

When an error occurs, observe the blinking sequence: the number of fast blinks will indicate the actuator number.
Bear in mind that, in case more than one actuator has an Error Condition, the blinking sequence will blink the error of each affected actuator. A longer OFF period separates the blinking sequence of each one affected.

The list of errors/colours is listed below:


If the LED is blinking Red, it means the overload protection of the actuator was triggered. The actuator torque has been turned off.

This usually happens if an actuator is stalling for a while or if it is subject to excessive external force. We recommend examining the environment and the operation before re enabling the actuator.

The actuator can be re-enabled by sending a Dynamixel RESET command to the actuator ID or by using the Console rst command (over USB or Bluetooth). As per the Dynamixel Protocol, all return commands sent by the actuator include an Error Bitmask. This bitmask can be used to programmability obtain the same information that is being provided visually by the LED.


If the LED is Blinking Green it means the actuator is showing early signs of failure. You don't need to immediately replace it but this warning alerts you that a pre-failure state has been reached.

This error condition is merely INFORMATIONAL and will not affect the operation of the actuator: the actuator will continue to respond to torque, position, etc. commands normally.

This diagnostic is performed by the firmware, by analyzing a number of parameters during the operation of the actuator. These are then normalized into a “Health Index” value.
You can check the Health Index of the actuator by issuing the did command on any console.
A healthy actuator has a Health Index of 100. The lower the number, the closer the actuator is to its EOL. When this index goes below 10, the actuator triggers the next error (Purple), signaling a permanent failure.

Bear in mind the “Health Index” is calculated dynamically after every power on. External factors such as high temperatures, long run times, or higher external forces may lower the Health Index momentarily but after a reboot, the Health Index may become higher. This normal and is a result of the dynamic analysis. The worst observed value over time, should be the one to use as reference.


If the LED is blinking Purple it means the actuator has failed and degraded below the minimum Health Index. When this happens, the Actuator is preemptively disabled. This is a last resort protection to ensure proper operation of the unit and remaining actuators, without disturbances.

When an actuator is in this condition, it is likely still functional but has degraded to a point where it is operating outside the set and acceptable parameters for the system.

In this case, the actuator needs to be replaced. If encounter this condition, we recommend contacting our Technical Services (support@seedrobotics.com) and we'll gladly assist you with the procedure to get your unit in top working condition again.

Copyright © 2015-2023 Seed Robotics Ltd

  • dh4d/led_errorcodes.txt
  • Last modified: 2017/03/23 16:13
  • by wadmin