Skip to content

Tutorial Track: Stretch ROS1

This tutorial track is for users looking to become familiar with programming the Stretch RE1 and RE2 via ROS1 Noetic. We recommend going through the tutorials in the following order:


Tutorial Description
1 Getting Started
2 Gazebo Basics
3 Teleoperating Stretch
4 Internal State of Stretch
5 RViz Basics
6 Navigation Stack
7 MoveIt! Basics
8 Follow Joint Trajectory Commands
9 Perception
10 ArUco Marker Detection
11 ReSpeaker Microphone Array

Other Examples

To help get you get started on your software development, here are examples of nodes to have the stretch perform simple tasks.

Tutorial Description
1 Teleoperate Stretch with a Node Use a python script that sends velocity commands.
2 Filter Laser Scans Publish new scan ranges that are directly in front of Stretch.
3 Mobile Base Collision Avoidance Stop Stretch from running into a wall.
4 Give Stretch a Balloon Create a "balloon" marker that goes where ever Stretch goes.
5 Print Joint States Print the joint states of Stretch.
6 Store Effort Values Print, store, and plot the effort values of the Stretch robot.
7 Capture Image Capture images from the RealSense camera data.
8 Voice to Text Interpret speech and save transcript to a text file.
9 Voice Teleoperation of Base Use speech to teleoperate the mobile base.
10 Tf2 Broadcaster and Listener Create a tf2 broadcaster and listener.
11 PointCloud Transformation Convert PointCloud2 data to a PointCloud and transform to a different frame.
12 ArUco Tag Locator Actuate the head to locate a requested ArUco marker tag and return a transform.
13 2D Navigation Goals Send 2D navigation goals to the move_base ROS node.