Python package to use Dynamixel servos through a serial interface (unofficial, easier SDK).
The full documentation can be read at https://pydxl.readthedocs.io.
Example code:
import time
from pydxl import Mx28, SerialLink
link = SerialLink(
device="/dev/ttyUSB0", baudrate=1_000_000, protocol_version=1.0
)
servo = Mx28(identifier=1, serial_link=link)
servo.ping()
servo.led = True
servo.torque_enable = True
servo.goal_position = 2000
print(servo.goal_position)
time.sleep(3)
servo.goal_position = 1500
time.sleep(3)
servo.torque_enable = False
link.close()
- Use protocol 1.0 through a serial link, known to work with:
- U2D2
- USB2Dynamixel
- DARwIn-OP (after having installed a more recent Python, tested with Python 3.7.2)
- Support servos:
- MX-28
- TODO: implement protocol 2.0
- TODO: add more servo types
BSD 3-Clause license, feel free to contribute: https://pydxl.readthedocs.io/en/latest/contributing.html.