Skip to content

Commit

Permalink
Merge branch 'master' into feature/respeaker-noetic
Browse files Browse the repository at this point in the history
  • Loading branch information
hello-binit authored Dec 24, 2023
2 parents fd7d79e + fe1eeee commit a120750
Show file tree
Hide file tree
Showing 117 changed files with 11,732 additions and 2,200 deletions.
27 changes: 27 additions & 0 deletions .github/workflows/auto_deploy_docs.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: Auto Deploy Docs
run-name: Edit by ${{ github.actor }} triggered docs deployment
on:
push:
branches:
- 'master'
paths:
- '**.md'
jobs:
Dispatch-Deploy-Workflow:
runs-on: ubuntu-latest
steps:

- name: Print out debug info
run: echo "Repo ${{ github.repository }} | Branch ${{ github.ref }} | Runner ${{ runner.os }} | Event ${{ github.event_name }}"

- name: Dispatch deploy workflow
uses: actions/github-script@v6
with:
github-token: ${{ secrets.GHA_CROSSREPO_WORKFLOW_TOKEN }}
script: |
await github.rest.actions.createWorkflowDispatch({
owner: 'hello-robot',
repo: 'hello-robot.github.io',
workflow_id: 'auto_deploy.yaml',
ref: '0.3',
})
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
.ipynb_checkpoints

8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
![](./images/banner.png)
# Overview
![](./images/stretch_top_view.png)
The Stretch Tutorials reposotory provides tutorials on programming the Stretch RE1 and RE2 robots. The tutorials are organized into the following tracks.
The Stretch Tutorials repository provides tutorials on programming Stretch robots. The tutorials are organized into the following tracks.


| Tutorial Track | Description |
|--------------------------------------------------------|-------------------------------------------------------------------|
| [Getting to Know Stretch](./getting_started/README.md) | Everything a new user of Stretch needs to get started |
| [Stretch Body](./stretch_body/README.md) | Learn how to program Stretch using its low level Python interface |
| [ROS 1 (Melodic)](./ros1_melodic/README.md) | Learn how to program Stretch using its ROS1 (Melodic) interface |
| [ROS 1 (Noetic)](./ros1/README.md) | Learn how to program Stretch using its ROS1 (Noetic) interface |
| [Stretch Body Python SDK](./stretch_body/README.md) | Learn how to program Stretch using its low level Python interface |
| [ROS](./ros1/README.md) | Learn how to program Stretch using its ROS interface |
| [ROS 2 (Beta)](./ros2/README.md) | Learn how to program Stretch using its ROS2 interface |
| [Stretch Tool Share](./stretch_tool_share/README.md) | Learn how to update the end of arm tool hardware |

------
<div align="center"> All materials are Copyright 2022 by Hello Robot Inc. Hello Robot and Stretch are registered trademarks.</div>
Expand Down
78 changes: 69 additions & 9 deletions extra.css
Original file line number Diff line number Diff line change
Expand Up @@ -2,32 +2,92 @@
--md-primary-fg-color: #122837;
--md-primary-fg-color--light: hsla(0,0%, 100%, 0.7);
--md-primary-fg-color--dark: hsla(0, 0%, 0%, 0.07);
--md-primary-bg-color: hsla(341, 85%, 89%, 1.0);
--md-primary-bg-color: #FDF1F5;
--md-typeset-a-color: #0550b3;
--md-code-hl-number-color: hsla(196, 86%, 29%, 1);
--md-code-hl-number-color: hsla(196, 86%, 29%, 1); /* Make code block magic numbers less bright in light theme */

}
[data-md-color-primary=hello-robot-dark]{
--md-primary-fg-color: #122837;
--md-primary-fg-color--light: hsla(0,0%, 100%, 0.7);
--md-primary-fg-color--dark: hsla(0, 0%, 0%, 0.07);
--md-primary-bg-color: hsla(341, 85%, 89%, 1.0);
--md-typeset-a-color: hsla(341, 85%, 89%, 1.0);
--md-code-hl-number-color: hsla(196, 86%, 29%, 1);
--md-primary-bg-color: #FDF1F5;
--md-typeset-a-color: hsla(341, 85%, 89%, 1.0); /* Make links more visible in dark theme */
}

[data-md-color-primary=hello-robot-light] .md-typeset h1,
.md-typeset h2 {
color: hsla(237, 100%, 28%, 1);
}

[data-md-color-primary=hello-robot-dark] .md-typeset h1,
.md-typeset h2 {
color: hsla(213, 100%, 68%, 1);
}

[data-md-color-scheme="slate"] {
--md-hue: 210; /* [0, 360] */
}


th, td {
border: 1px solid var(--md-typeset-table-color);
border-spacing: 0;
border-bottom: none;
border-left: none;
border-top: none;
}

.md-typeset__table {
line-height: 1;
}

.md-typeset__table table:not([class]) {
font-size: .74rem;
border-right: none;
}

.md-typeset__table table:not([class]) td,
.md-typeset__table table:not([class]) th {
padding: 9px;
}

/* light mode alternating table bg colors */
.md-typeset__table tr:nth-child(2n) {
background-color: #f8f8f8;
}

/* dark mode alternating table bg colors */
[data-md-color-scheme="slate"] .md-typeset__table tr:nth-child(2n) {
background-color: hsla(var(--md-hue),25%,25%,1)
}


/*
Tables set to 100% width
*/
.md-header__topic:first-child {
font-weight: normal;
}
/* Indentation.
div.doc-contents {
padding-left: 25px;
border-left: 4px solid rgba(230, 230, 230);
margin-bottom: 20px;
}
.md-typeset__table {
min-width: 100%;
min-width: 100%;
}
.md-typeset table:not([class]) {
display: table;
display: table;
}
*/
.shell-prompt code::before {
content: "$ ";
color: grey;
}

.highlight.no-copy .md-clipboard {
display: none;
}
13 changes: 8 additions & 5 deletions getting_started/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,17 @@ Please take the time to get to know your robot by going through these tutorials

## What Version of Robot Do I Have?

Stretch RE1 and RE2 are very similar. One quick way to tell the difference is look at the robot's hostame:
Stretch RE1 and Stretch 2 are very similar. One quick way to tell the difference is to look at the robot's hostname:

```bash
>>$ hostname
```{.bash .shell-prompt}
hostname
```
```{.bash .no-copy}
--- OUTPUT ---
stretch-re2-2001
```

Another way is to look for the distinctive pink stripe on the RE2 base:
Another way is to look for the distinctive pink stripe on the base of Stretch 2:

![](./images/pink_strip.png)

Expand All @@ -22,7 +25,7 @@ Another way is to look for the distinctive pink stripe on the RE2 base:
| ---- | ------------------------------------------- | -------------------------------------------------- |
| 1 | [Safety Guide](safety_guide.md) | Guide to safe operation of the Stretch |
| 2 | [Quick Start RE1](quick_start_guide_re1.md) | Unboxing Stretch RE1 and getting started |
| 2 | [Quick Start RE2](quick_start_guide_re2.md) | Unboxing Stretch RE2 and getting started |
| 2 | [Quick Start Stretch 2](quick_start_guide_re2.md) | Unboxing Stretch 2 and getting started |
| 3 | [Best Practices](best_practices.md) | Best practices to keep Stretch charged and healthy |
| 4 | [Troubleshooting](troubleshooting_guide.md) | Solutions to common issues |

Expand Down
6 changes: 3 additions & 3 deletions getting_started/best_practices.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@ Keeping Stretch charged is important to the long-term health of its batteries -

=== "Stretch RE1"

[RE1 Battery Maintenance Guide](https://docs.hello-robot.com/0.2/stretch-hardware-guides/docs/battery_maintenance_guide_re1/)
[Stretch RE1 Battery Maintenance Guide](https://docs.hello-robot.com/0.2/stretch-hardware-guides/docs/battery_maintenance_guide_re1/)

=== "Stretch RE2"
=== "Stretch 2"

[RE2 Battery Maintenance Guide](https://docs.hello-robot.com/0.2/stretch-hardware-guides/docs/battery_maintenance_guide_re2/)
[Stretch 2 Battery Maintenance Guide](https://docs.hello-robot.com/0.2/stretch-hardware-guides/docs/battery_maintenance_guide_re2/)


## Keeping the Robot Healthy
Expand Down
116 changes: 116 additions & 0 deletions getting_started/command_line_tools.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
# Command Line Tools

The Stretch robot comes with a set of command line tools that are helpful for introspection during general use or while troubleshooting issues. This page provides an overview of these tools. If you like, visit the [stretch_body](https://github.com/hello-robot/stretch_body/tree/master/tools/bin) repository to have a look under the hood.

You can execute these commands from anywhere in the terminal. We recommend you execute these commands as we follow each one of them. You can also find the description for the utility each tool provides by passing the optional '-h' flag along with the tool name in the terminal. For example, from anywhere in the terminal execute:
```{.bash .shell-prompt}
stretch_about.py -h
```

## System Information
### stretch_about.py
This tool displays the model and serial number information as an image.

### stretch_about_text.py
This tool displays the model and serial number information as text.

### stretch_version.sh
This script prints the version information for various software packages on the robot.

### stretch_params.py
This tool prints the Stretch parameters to the console.

### stretch_robot_monitor.py
This tool runs the Robot Monitor and prints to the console.

### stretch_robot_urdf_visualizer.py
This tool allows you to visualize robot URDF.

## Introspection
### stretch_robot_system_check.py
This tool checks that all robot hardware is present and is reporting sane values.

### stretch_robot_battery_check.py
This is a tool to print the battery state to the console.

### stretch_hardware_echo.py
This tool echoes the robot and computer hardware details to the console.

### stretch_robot_dynamixel_reboot.py
This tool reboots all Dynamixel servos on the robot.

### stretch_pimu_scope.py
This tool allows you to visualize Pimu (Power+IMU) board data with an oscilloscope. Pass the '-h' flag along with the command to see optional arguments.

### stretch_wacc_scope.py
This is a tool to visualize Wacc (Wrist+Accel) board data with an oscilloscope. Pass the '-h' flag along with the command to see optional arguments.

### stretch_realsense_visualizer.py
This is a tool to test the Realsense D435i Camera. Pass the '-h' flag along with the command to see optional arguments.

### stretch_respeaker_test.py
This tool allows you to record and playback audio via Respeaker.

### stretch_audio_test.py
This tool allows you to test the audio system.

## Homing Joints
### stretch_robot_home.py
This tool calibrates the robot by finding zeros for all robot joints.

### stretch_gripper_home.py
This tool calibrates the gripper position by closing until the motion stops.

### stretch_wrist_yaw_home.py
This tool calibrates the wrist_yaw position by moving to both hardstops.

### stretch_arm_home.py
This tool calibrates arm position by moving to hardstop.

### stretch_lift_home.py
This tool calibrates the lift position by moving to the upper hardstop.

## Jogging Joints
### stretch_robot_jog.py
This tool prints all robot data to the console.

### stretch_gripper_jog.py
This tool allows you to jog the griper from the keyboard.

### stretch_wrist_yaw_jog.py
This tool allows you to jog the wrist_yaw joint from the keyboard.

### stretch_arm_jog.py
This tool allows you to jog the arm motion from the keyboard.

### stretch_lift_jog.py
This tool allows you to jog the lift motion from the keyboard.

### stretch_base_jog.py
This tool allows you to jog the base motion from the keyboard.

### stretch_head_jog.py
This tool allows you to jog the head from the keyboard.

## Jogging Modules
### stretch_wacc_jog.py
This tool allows you to command and query the Wacc (Wrist Accelerometer) board from the keyboard.

### stretch_pimu_jog.py
This tool allows you to command and query the Pimu (Power+IMU) board from the keyboard.

### stretch_rp_lidar_jog.py
This is a tool to control the RP-Lidar. Pass the '-h' flag along with the command to see optional arguments.

### stretch_trajectory_jog.py
This tool allows you to test out splined trajectories on the various joint from a GUI or text menu. Pass the '-h' flag along with the command to see optional arguments.

## Teleoperation
### stretch_robot_stow.py
This tool moves the robot to stow position.

### stretch_robot_keyboard_teleop.py
This tool allows you to control the robot base, lift, arm, head, and tool from the keyboard.

### stretch_xbox_controller_teleop.py
This tool allows you to jog the robot from an Xbox Controller.
Loading

0 comments on commit a120750

Please sign in to comment.