Our Stretch 3 has been facing significant issues in trajectory mode. Previously we only did minor tests in position mode (due to the projects related to it being used not having started yet/focusing on simulation) and successfully used Joystick remote control and the visual servoing demo. However, when I tried to test the trajectory mode in the Python API, I could not get any positive results.
Trying to control the arm in trajectory mode leads to it being stuck, while translation in trajectory mode is very imprecise, not predictable and creates loud motor noises. Examples of this behaviour can be found here: sciebo
For my tests I tried using the stretch_trajectory_jog.py as well as an adaptation of the examples provided here: stretch_tutorials/python/moving.md at master · hello-robot/stretch_tutorials · GitHub (using r.base.trajectory.add to add waypoints and then using r.follow_trajectory led to no motion being done). Running system check reveals the following error: stepper type mismatch error on the left wheel. According to the updater all of our firmware and packages are on latest releases.
We’re recently started work on making trajectory mode more robust and I believe the software patches should address the issues you’re seeing. But first, I’d like to solve the “Stepper type mismatch error” you’re seeing. Would you try:
Reassign the USB rules using REx_discover_hello_devices.py --arduino --discover Here’s a video of the expected output.
Reboot and power cycle your robot. Confirm that each joint moves correctly with stretch_base_jog.py and stretch_robot_home.py Here’s a video of the expected output of homing.
Update your firmware using REx_firmware_updater.py --install Here’s a video of the expected output.
Save the “motor types” to each motor’s firmware using REx_stepper_type.py --write Here’s a video of the expected output.