/easy-dynamixel-helper

[This project is no longer maintained.] You can use this helper instead of the Dynamixel-SDK to speed up your work.

Primary LanguagePythonMIT LicenseMIT

Easy Dynamixel Helper

PyPI Downloads GitHub CodeFactor Multilingual Markdown Generator

🌏 English, ν•œκ΅­μ–΄

This helper is a wrapper for the Dynamixel-SDK. With this, configure and drive your motor more quickly. You do not need to know how the SDK works. In other words, this helper makes it easy to modify the control table.

pip install dynamixel_helper --user

Table of Contents

  1. Features
  2. Simple Example
  3. Getting Started
    1. Prerequisites
    2. Installation
  4. Tutorials
  5. Release Notes
  6. Current Coverage
    1. Model List
    2. Control Table
  7. Contributing
    1. Style Guide
  8. Maintainers
  9. Licenses

πŸ’Ž Features

  • Baud rate auto-matching
  • Protocol auto-matching
  • Port auto-matching (Easy connections in multi-USB)
  • Motor configurations in JSON format
  • Support for Python 3 and 2
  • Make your code simple and clean
  • Easy to use even for beginners.

🐣 Simple Example

The following code is an example of turning on the motor torque.

from dynamixel_helper import DxlHelper

helper = DxlHelper("preset/{my_robot}.json")
motor = helper.get_motor(0)  # id: 0
motor.set_torque(True)

πŸš€ Getting Started

Prerequisites

  1. pip (package manager)

    # Python 2
    sudo apt install python-pip
    python -m pip install -U pip
    # Python 3
    sudo apt install python3-pip
    python3 -m pip install -U pip
  2. Dynamixel SDK

    CAUTIONπŸ’₯: Please install the pip before installing the Dynamixel SDK. Otherwise, when you install this Dynamixel Helper, you will get an dependency error of Dynamixel SDK.

    You need to install the official Dynamixel SDK before using this helper.

    Click here: Dynamixel SDK Installation

    1. Clone the official SDK repository into your custom folder, for example, I created ~/lib.

      git clone https://github.com/ROBOTIS-GIT/DynamixelSDK.git
    2. Go into the folder /DynamixelSDK/python of your cloned SDK.

      cd ${your_download_path}/DynamixelSDK/python
    3. Run setup.py with --user option to install the library. Administrator privileges, a.k.a. sudo, are not recommended. More information here.

      python setup.py install --user

Installation

Simply type pip command below to install this helper.

pip install dynamixel_helper --user

🌱 Tutorials

Go to tutorials

🚩 Release Notes

Go to release notes

πŸ”­ Current Coverage

Model List

Control Table

Different models have slightly different control tables. Please check the documentation for each model. Just click the model name above to go to the document.

  • EEPROM section
    • drive mode (w)
    • operating mode (w)
  • RAM section
    • torque (r/w)
    • goal velocity (w)
    • goal position (w)
    • present velocity (r)
    • present position (r)

πŸ’Œ Contributing

  • We will welcome whatever your contribution is!
  • If you are planning to send a new Pull request, please send them into the develop Branch.😍

Style Guide

This style guide is only a recommendation, never more important than your interest and contributions.

  • Our default Python style is PEP 8.

  • If you use VSCode as your code editor, please refer to the following settings. This setting is a part of our setting.json.

    {
        "editor.tabSize": 4,
        "[json]": {
            "editor.tabSize": 2
        },
        "python.linting.pylintEnabled": false,
        "python.linting.pep8Enabled": true,
        "python.linting.enabled": true
    }

πŸ”§ Maintainers

πŸ“œ Licenses

The contents of this repository are subject to the MIT License by default, except as noted below.