Dynamixel SDK Documentation
repository·main·Indexed 18 days ago
https://github.com/robotis-git/dynamixelsdkA multi-language software development kit for controlling Dynamixel actuators and platforms via packet communication. Supports C, C++, Python, C#, Java, MATLAB, and LabVIEW. Features include a unified CMake build system for C/C++, support for ROS 2 and Linux SBCs, and specialized Python functions like Fast Sync Read and Fast Bulk Read.
What's inside Dynamixel SDK
- The ROBOTIS Dynamixel SDK is a software development kit designed to provide Dynamixel control functions through packet communication. It is specifically engineered for use with Dynamixel actuators and Dynamixel-based platforms. For detailed technical specifications and in-depth usage instructions, refer to the ROBOTIS e-Manual for Dynamixel SDK.
Note on ROS 1 Support
mainVersion 3.8.0 is the last version of the Dynamixel SDK that supports ROS 1. For ROS 2 support, use version 3.7.60 or later.Supported Programming Languages for Dynamixel SDK
mainDynamixel SDK provides support across multiple programming languages, categorized by how they interface with the core library:
- C: Includes both the dynamic library and source code, along with examples.
- C++: Includes both the dynamic library and source code, along with examples.
- Python: Provided as a dedicated Python module with examples.
- C# / Java / MATLAB / LabVIEW: These languages support Dynamixel SDK via the dynamic library provided in C.
Dynamic libraries are provided in various formats depending on the operating system:
.dll(Windows),.so(Linux), and.dylib(MacOS).Build C and C++ SDK using CMake
mainStarting from version 4.0.4, a
CMakeLists.txtfile has been added to provide a unified build system for C and C++ implementations. This simplifies the build process across different environments.# Use CMakeLists.txt for unified build system in c, c++ (Added in 4.0.4)Use Dynamixel Easy SDK with ROS 2 and Linux SBCs
mainThe Dynamixel Easy SDK (introduced/updated in 4.0.0 and 4.0.3) supports the following environments:
- Linux Single Board Computers (SBC)
- Linux 32-bit platforms
- ROS 2 based build and deployment workflows
- Linux 64-bit (updated in 4.0.0)
Use Fast Sync Read and Fast Bulk Read in Python
mainVersions 3.8.2 and 3.8.1 introducedFast Sync ReadandFast Bulk Readfeatures for Python. Version 3.8.2 specifically added a ROS 2 Python example for these features.Handle errors for incorrect torque state or operating mode
mainAs of version 4.0.2, the SDK includes explicit error handling for cases where an operation fails specifically due to an incorrect torque state or an incorrect operating mode.