Skip to content

Changelog

The changes between releases of Stretch Body are documented here.

0.4.8 - Sept 14, 2022

This is the initial production release that supports the Stretch RE2 (Mitski batch).

  • This includes the robot_params_RE2V0.py which are the initial robot settings for the RE2 version of the product.

  • It introduces the PrismaticJoint class which consolidates the common Arm and Lift functionality.

  • It changes the units for guarded contact motion from approximate Newtons (suffix _N) to effort_pct - the pecentage [-100,100] of maximum current (A) that a joint should stop at. This change requires RE1 users to migrate their code and robot parameters. See the forum post for more details.

  • It introduces mkdocs.yaml to support serving the repository documenation via MKDocs.

It introduces several new features and fixes several bugs, notably:

0.3.4 - July 20, 2022

Release to add minor features and fix minor bugs:

0.3.0 - June 21, 2022

This release moves Stretch Body to use a new parameter management format. This change will require older systems to migrate their parameters to the new format. For systems that haven't yet migrated, Stretch Body will exit with a warning that they must migrate first by running RE1_migrate_params.py. See the forum post for more details.

Features:

0.2.1 - January 6, 2022

Release to fix two bugs:

0.2.0 - December 28, 2021

This release brings support for waypoint trajectories into master. Support for waypoint trajectories was built up over the last year in the feature/waypoint_trajectories_py3 branch, however, this branch couldn't be merged because the new functionality had flaky performance due to subtle bugs. This branch also attempted to introduce support for Python3 and timestamp synchronization. Support for Python3 and other features were merged in v0.1.0. The remaining features from this branch have been broken into 7 PRs, each targeting a specific device and squashing any previous bugs through functional and performance testing. They are:

This release also fixes several bugs. They are:

Testing:

Each PR in this release was tested on multiple robots, but was primarily tested on G2, on Python 2.7/Ubuntu 18.04.

0.1.11 - October 4, 2021

This release gives Stretch Body the ability to support multiple firmware protocols, which at this moment is P0 and P1 firmware. P1 firmware builds on P0 to add waypoint trajectory support and a refactoring of controller functionality into classes. Additionally, this PR fixes how Dynamixel motors calculate velocity from encoder ticks.

Features:

Bugfixes:

0.1.10 - September 23, 2021

This release introduces 3 features:

  1. #68 and #95: Introduces two new Jupyter notebooks that can be used to interactively explore working with Stretch. See forum post for details.
  2. #94: Introduces Github Action files and docs. Will be enabled in the future to automatically test PRs.
  3. #66: Improves the statistics captured on Stretch Body's performance. Will be used to measure improvements to Stretch Body's communication with low level devices.

Bugfixes:

  1. #90: Patches a bug where triggering pimu.trigger_motor_sync() at to high of a rate puts the robot into Runstop mode.
  2. #101: Fixes bugs on startup of Dynamixel devices, ensures status is populated on startup of all devices, and add bool to robot.startup()

Testing:

All unit tests run on Python 2.7.17 on Ubuntu 18.04 on a Stretch RE1.

0.1.6 - August 26, 2021

This release introduces these features:

  • Revised soft limits and collision avoidance
  • Added velocity interfaces for arm and lift

Bugfixes:

  • Better error handling for DXL servos and their tools
  • Fix bug where dxls maintain previous motion profile

0.1.4 - July 20, 2021

This release introduces six features and several bugfixes. The features are:

Bugfixes:

0.1.0 - May 30, 2021

This release introduces eight major features and several bugfixes. The features are:

  1. Python param management
  2. Configurable baud rate/GroupRead on Dynamixels
  3. Pluggable end effector tools
  4. Pluggable end effector support in Xbox Teleop
  5. Python logging
  6. Soft motion limit
  7. Self collision management
  8. Unit testing framework - as part of each PR

Bugfixes:

  1. Multiturn enable_pos bug (#12) & unit tests
  2. Misc bugs
  3. Other - as part of the features

Testing:

All unit tests run on Python 2.7.17 on Ubuntu 18.04 on a Stretch RE1.