The present document was written targetting PyPot 3.0.3, running under Python 2.7.

Herborist and framework libraries

The Herborist tool provides a GUI for low-level manipulation of Dynamixel devices.
In many aspects, it replaces the Dynamixel Wizard from Robotis. Like the Dynamixel Wizard, it needs to be patched so that it “knows” about the Seed Robotics devices.

This patching will also enable other High-Level functions in the framework to recognize the Seed Robotics model numbers, so its application is highly recommended.

At the time of writing, Seed Robotics devices identified themselves as model numbers 400, 401, 404, 405, 406, 407,408 and 409.
In this document, we will be adding support for these so that PyPot recognizes them.

Failing to add support, may result in an error running Herborist (where the GUI stops responding a traceback error appears on the console). It may also cause errors running other functions in the framework, with errors such as “Keyerror: xxx”, where xxx is one of Seed Robotics models numbers.

Locate the folder where pypot is installed and edit the conversion.py script:
This is usually [your python folder]\lib\site-packages\pypot-xxxx.egg\pypot\dynamixel\conversion.py
or just [your python folder]\lib\site-packages\pypot\dynamixel\conversion.py

Open the file and apply the following changes:

1) Locate # MARK: - Model

Add, the following models to the end of the list:

    404: 'SR-SEED28',
    405: 'SR-EROSBRD',
    406: 'SR-SEED56',
    407: 'SEED_XL320', # Robotis XL-320 operating under Dynamixel 1.0 (protocol version translated by the Seed Robotics EROS Firmware)
    408: 'SR-SEED44', 
    409: 'SR-SEED67', 
    410: 'SR-SEED58',

2) Locate velocity = { # in degree/s

Add, the following to the end of the list:

    'SR-SEED28':300.,
    'SR-EROSBRD':300., #compatibility only; this is a logic board
    'SR-SEED56':300.,
    'SEED_XL320':300., # Robotis XL-320 operating under Dynamixel 1.0 (protocol version translated by the Seed Robotics EROS Firmware)
    'SR-SEED44':300.,
    'SR-SEED67':300.,
    'SR-SEED58':300.,    

3) Locate torque_max = { # in N.m

Add, the following to the end of the list:

    'SR-SEED28':0.28, # RH7D
    'SR-EROSBRD':0.1, #compatibility only; this is a logic board
    'SR-SEED56':0.57, # RH4D
    'SEED_XL320':0.39, # Robotis XL-320 operating under Dynamixel 1.0 (protocol version translated by the Seed Robotics EROS Firmware)
    'SR-SEED44':0.44,
    'SR-SEED67':0.67,    
    'SR-SEED58':0.52,        

Please note: Model numbers 400 and 401 refer to the RH4D with Ares architecture and are already recognized by this version of PyPot (We thank the University of Hamburg for its contribution in integrating this model).
Therefore, for PyPot 3.0.3, you only need to add support for the remaining models, as explained above.

Copyright © 2015-2019 Seed Robotics Ltd

  • apisandframeworks/pypot_patches.txt
  • Last modified: 2020/02/25 08:45
  • by pedro.ramilo