This is a comprehensive list of all commands supported by the SR-DH4D console. These commands can be used through the USB console or through the Bluetooth interface (if installed).

Basic Commands

hlp - display list of available commands
This command is especially useful to learn about all the commands supported your firmware version.

did - List Hand Configuration and Internal Status
This is likely the most useful command for debugging.
It will display a comprehensive list including Dynamixel IDs, connection settings, servo status (including overload errors, etc.) and additional board information including model, Serial Number, Position Resolution and presence of Bluetooth module.
This should be your first go-to command for troubleshooting.

ope - Open Hand
Opens the hand completely.

clo - Close Hand
Closes the hand completely.

pos - Set servo position
pos [servo_nr 1-4] [position value]

The position value should be provided in the range of 0~1023 or 0~4095 depending how your Hand is configured for Position Resolution.

stmSerialPort->println("\tpos [servo_nr 1-4] [position] - set servo position");
stmSerialPort->println("\tope - Open Hand completely.");
stmSerialPort->println("\tclo - Close Hand completely.");
stmSerialPort->println("\n\tree [option_nr] - Resets EEPROM to default settings. USE WITH EXTREME CAUTION as it may brick your device and void your Warranty.");
stmSerialPort->println("\t\tree 0 - does nothing (only displays a message)");
stmSerialPort->println("\t\tree 1 - Resets Baud Rate, Return Delay Time and Status Return Level to defaults (1Mbps, 250 [500 micros], 2 [always return])");
stmSerialPort->println("\t\tree 2 - Resets servo IDs for LEFT HAND (ID 22/24/26/28/30)");
stmSerialPort->println("\t\tree 3 - Resets servo IDs for RIGHT HAND (ID 21/23/24/27/29)");
stmSerialPort->println("\t\tree 4 [setting] - Changes the Baud Rate to a user selected Setting. Values are the same ones used in the Dynamixel wizard");
stmSerialPort->println("\t\t                  (common Settings are: 34=57600bps, 1=1Mbit/s, 252=3Mbps)");
stmSerialPort->println("\t\tree 5 [0/1] - Configure 1023/4095 position resolution ( 0->1023; 1->4095 )");
stmSerialPort->println("\n\tbti - Shows Bluetooth Module Information (if installed)");
stmSerialPort->println("\tbwn [name] - Change the Bluetooth Module Broadcasting Name");
stmSerialPort->println("\tbwp [code] - Change the Bluetooth Module Pairing Code\n");

Commands to manipulate the Dynamixel Tables

This functionality has been implemented to ensure a 1:1 match in manipulating the Dynamixel Control tables through any of the interfaces in the Hand.

Please note that the console syntax does not follow the Dynamixel protocol format: Instead, commands are provided to let you target a Control Table position and read or write a byte or word directly to it. It has the same effect as sending a READ or WRITE command to the hand, except here, we do it in a console environment and console syntax.

Another very important difference is that, when addressing the Actuator control tables, in the console commands we identify them from 1-4 (5 for the Virtual ID) and this is fixed. We do not use the Dynamixel ID in the syntax of these commands.

wrb - write BYTE on Dynamixel table
wrb [Actuator Nr] [mempos] [value~255]

Return
[byte: Dynamixel error flag]\n

wrw - write WORD on Dynamixel table\
wrw [Actuator Nr] [mempos] [value~65536]

Return
[byte: Dynamixel error flag]\n

reb - read BYTE from Dynamixel Table
reb [Actuator Nr] [mempos]

Return
[byte: Dynamixel error flag]\t[byte:value]\n

rew - read WORD from Dynamixel Table
rew [Actuator Nr] [mempos]

Return
[byte: Dynamixel error flag]\t[word:value]\n

Actuator Numbers are:

  • 1=Wrist Rotation
  • 2=Wrist Flexion
  • 3=Thumb
  • 4=Index fingers
  • 5=Virtual ID

To learn about the Control tables see here.

Copyright © 2015-2023 Seed Robotics Ltd

  • deleted/consolecommands.txt
  • Last modified: 2017/02/22 21:28
  • by wadmin