threemxl provides a library to communicate with Dynamixel servos and 3mxl motor control boards. It also allows multiple ROS nodes to communicate with a single Dynamixel chain using a shared_serial node.
As threemxl depends on some external packages, make sure to run
rosdep install threemxl at least once!
To quickly test the board, you can use the
console node. Just type
rosrun threemxl console, provided you have a
roscore running somewhere. Note that the console defaults to
/dev/ttyUSB0. You can specify a different port or namespace as argument.
The main classes are CDynamixel and C3mxl. These communicate with the hardware directly through a serial port (either LxSerial or LxFTDI). The ROS versions, CDynamixelROS and C3mxlROS, just subclass CDynamixel and C3mxl and set the package handler to CDxlROSPacketHandler such that the communication works over a shared_serial node.