Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
humble

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version humble
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/humble/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
jazzy

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version jazzy
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/jazzy/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
kilted

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version main
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/main/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
rolling

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version main
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/main/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

No version for distro ardent showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
humble

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version humble
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/humble/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

No version for distro bouncy showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
humble

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version humble
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/humble/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

No version for distro crystal showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
humble

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version humble
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/humble/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

No version for distro eloquent showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
humble

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version humble
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/humble/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

No version for distro dashing showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
humble

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version humble
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/humble/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

No version for distro galactic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
humble

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version humble
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/humble/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
foxy

Package Summary

Tags No category tags.
Version 0.0.3
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/OUXT-Polaris/dynamixel_hardware_interface.git
VCS Type git
VCS Version master
Last Updated 2023-12-07
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

Hardware Interface and controllers for dynamixel motors

Additional Links

No additional links.

Maintainers

  • masaya

Authors

No additional authors.

Dynamixl Hardware Interface

Documentation

ROS2 package for controlling Dynamixel motor. Documentation is here.

CHANGELOG

Changelog for package dynamixel_hardware_interface

0.0.3 (2021-06-16)

  • Merge pull request #12 from OUXT-Polaris/fix/depends add boost to the depends
  • add boost to the depends
  • Contributors: Masaya Kataoka

0.0.1 (2021-06-13)

  • add realtime_tools to the depends
  • enable publish diag topic
  • add interface
  • enable parse params
  • add diagnostic updator
  • fix plugin setting
  • modifu cmakelist
  • modify configuration
  • add implementation of each function
  • add class definition
  • add source
  • Merge pull request #9 from OUXT-Polaris/feature/tempelature_interface Feature/tempelature interface
  • add tempelature interface
  • enable update temperature
  • remove unused lines
  • move some function
  • Merge pull request #8 from OUXT-Polaris/feature/velocity_interface Feature/velocity interface
  • apply reformat
  • modify controller
  • add interfaces
  • apply reformat
  • add exception
  • Merge pull request #7 from OUXT-Polaris/doc/readme add dos
  • add dos
  • Merge pull request #6 from OUXT-Polaris/feature/publish_joint_angle Feature/publish joint angle
  • Merge branch 'master' of https://github.com/OUXT-Polaris/dynamixel_hardware_interface into feature/publish_joint_angle
  • enable return toruqeEnable result
  • Merge pull request #5 from OUXT-Polaris/fix/document_generator_python_version update python version
  • update python version
  • Merge pull request #4 from OUXT-Polaris/feature/wx540-t260 enable run torque enable while configure
  • apply reformat
  • enable run torque enable while configure
  • Merge pull request #3 from OUXT-Polaris/feature/wx540-t260 Feature/wx540 t260
  • apply reformat
  • enable update goal position
  • update function order
  • update radianToPOsition functions
  • apply reformat
  • enable override function
  • fix byte size
  • add PacketByteSize field
  • add address class
  • enable get position from dynamixel
  • add error message
  • Merge pull request #2 from OUXT-Polaris/feature/document_generation Feature/document generation
  • update documentation
  • add description to the header file
  • change directory
  • apply reformat
  • add coments
  • update workflow
  • update workfloe
  • update workflow
  • add workflow
  • add new workflow
  • Merge pull request #1 from OUXT-Polaris/workflow/foxy update CI workflow for foxy
  • applu reformat
  • Merge branch 'master' of https://github.com/OUXT-Polaris/dynamixel_hardware_interface into workflow/foxy
  • use clang-format
  • add licence file

File truncated at 100 lines see the full file

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

No version for distro iron showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
humble

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version humble
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/humble/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

No version for distro lunar showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
humble

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version humble
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/humble/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

No version for distro jade showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
humble

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version humble
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/humble/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

No version for distro indigo showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
humble

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version humble
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/humble/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

Package symbol

dynamixel_hardware_interface package from dynamixel_motor_experimental repo

dynamixel_hardware_interface gearbox

ROS Distro
hydro

Package Summary

Tags No category tags.
Version UNKNOWN
License BSD
Build type ROSBUILD
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/arebgun/dynamixel_motor_experimental.git
VCS Type git
VCS Version master
Last Updated 2013-09-11
Dev Status UNMAINTAINED
CI status No Continuous Integration
Released UNRELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

dynamixel_hardware_interface

Additional Links

Maintainers

No known maintainers.

Authors

  • Antons Rebguns
README
No README found. See repository README.
CHANGELOG
No CHANGELOG found.

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

No version for distro kinetic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
humble

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version humble
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/humble/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

No version for distro melodic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
humble

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version humble
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/humble/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange

No version for distro noetic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

dynamixel_hardware_interface package from dynamixel_hardware_interface repo

dynamixel_hardware_interface

ROS Distro
humble

Package Summary

Tags No category tags.
Version 1.4.6
License Apache 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
VCS Type git
VCS Version humble
Last Updated 2025-05-30
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ROS 2 control framework.

Additional Links

No additional links.

Maintainers

  • Pyo

Authors

  • Hye-Jong KIM
  • Sungho Woo
  • Woojin Wie
  • Wonho Yun

Dynamixel Hardware Interface User Guide

1. Introduction

ROS 2 package providing a hardware interface for controlling Dynamixel motors via the ros2_control framework. This repository includes the dynamixel_hardware_interface plugin for seamless integration with ROS 2 control, along with the dynamixel_interfaces package containing custom message definitions used by the interface

2. Prerequisites

ROS 2 Humble

This package currently supports ROS 2 Humble only. Ensure that ROS 2 Humble is properly installed (ROS 2 Humble installation guide).

  • Hardware Requirements:

    • Dynamixel servos
    • USB2 Dynamixel or U2D2 adapter
    • Proper power supply for Dynamixel motors

3. Installation

  1. Clone the repository into your ROS workspace:
   cd ~/${WORKSPACE}/src
   git clone -b humble https://github.com/ROBOTIS-GIT/DynamixelSDK.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface.git
   git clone -b humble https://github.com/ROBOTIS-GIT/dynamixel_interfaces.git
   
  1. Build the package:
   cd ~/${WORKSPACE}
   colcon build
   
  1. Source your workspace:
   source ~/${WORKSPACE}/install/setup.bash
   

4. Currently Used Packages

This project integrates with the following ROS 2 packages to provide extended functionality:

  • open_manipulator_x A ROS-based open-source software package designed for the Open Manipulator-X, a 4-DOF robotic arm. It provides essential features like motion planning, kinematics, and control utilities for seamless integration with ROS 2 environments.

  • open_manipulator_y A ROS-based package tailored for the Open Manipulator-Y, a 6-DOF robotic arm. This package offers enhanced compatibility and extended functionalities for advanced manipulator control and operations.

5. Configuration

To effectively use the Dynamixel Hardware Interface in a ROS 2 control system, you need to configure specific parameters in your ros2_control hardware description file. Below is a concise explanation of the key parameters, illustrated with examples from the OpenManipulator-X ROS 2 control.xacro file.

  1. Port Settings: Define serial port and baud rate for communication.
  2. Hardware Setup: Configure joints and transmissions.
  3. Joints: Control and monitor robot joints.
  4. GPIO: Define and control Dynamixel motors.

1. Port and Communication Settings

These parameters define how the interface communicates with the Dynamixel motors:

  • port_name: Serial port for communication.

  • baud_rate: Communication baud rate.

  • error_timeout_ms: Timeout for communication errors (in milliseconds).

2. Hardware Configuration

These parameters define the hardware setup:

  • number_of_joints: Total number of joints.

  • number_of_transmissions: Number of transmissions.

  • Transmission Matrices: Define joint-to-transmission mappings.

3. Joint Configuration

Joints define the control and state interfaces for robot movement:

Key Attributes
  • name: Unique joint name. Example: ${prefix}joint1
Sub-Elements
  1. <command_interface>: Sends commands to joints.

```xml

File truncated at 100 lines [see the full file](https://github.com/ROBOTIS-GIT/dynamixel_hardware_interface/tree/humble/.)
CHANGELOG

Changelog for package dynamixel_hardware_interface

1.4.6 (2025-05-30)

  • Changed dynamixel_sdk_TARGETS to dynamixel_sdk_LIBRARIES in target_link_libraries
  • Contributors: Woojin Wie

1.4.5 (2025-05-30)

  • Deprecate ament_include_dependency usage in CMakeLists.txt
  • Contributors: Wonho Yun

1.4.4 (2025-05-28)

  • Added proper command interface support with ROS2-Dynamixel interface mapping
  • Improved error handling and robustness throughout the codebase
  • Implemented per-device torque enable control (replacing global control)
  • Added support for new sensor model (sensorxel_joy)
  • Enhanced joint state-command synchronization
  • Improved parameter initialization organization
  • Added robust error handling for model file reading
  • Contributors: Woojin Wie

1.4.3 (2025-04-10)

  • Fixed build errors
  • Contributors: Wonho Yun

1.4.2 (2025-04-05)

  • Added OM-Y dynamixel model files
  • Added a function to enable torque
  • Fixed the configuration for OM-Y robots
  • Contributors: Woojin Wie, Wonho Yun

1.4.1 (2025-03-31)

  • Modified the Model File
  • Contributors: Wonho Yun

1.4.0 (2025-03-20)

  • Added Torque Constant Parameter to DXL Model Files
  • Enhanced Transmission Command Calculation
  • Unified Initialization Structure
  • Support for Goal Current Control
  • Contributors: Woojin Wie

1.3.0 (2025-02-17)

  • Enhance Error Handling and Timeout Management
  • Use GroupFastSyncRead and GroupFastBulkRead
  • Remove deprecated parameter ros_update_freq to prevent stoi failure
  • Contributors: Woojin Wie

1.2.0 (2025-01-17)

  • Extend Bulk/Sync Selection Logic to Include Indirect Operations
  • Enhance DXL item initialization by prioritizing 'Limit' parameters
  • Contributors: Woojin Wie

1.1.0 (2024-12-27)

  • Added new control table entries for Dynamixel X
  • Contributors: Woojin Wie, Hye-Jong Kim

1.0.0 (2024-12-04)

  • First release of dynamixel_hardware_interface package
  • Contributors: Hye-Jong Kim, Sungho Woo

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged dynamixel_hardware_interface at Robotics Stack Exchange