Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .env
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
# This top-level .env file under AirStack/ defines variables that are propagated through docker-compose.yaml
PROJECT_NAME="airstack"
PROJECT_VERSION="1.0.5"
PROJECT_VERSION="1.1.0"
# can replace with your docker hub username
PROJECT_DOCKER_REGISTRY="airlab-storage.andrew.cmu.edu:5001/shared"
DEFAULT_ISAAC_SCENE="omniverse://airlab-storage.andrew.cmu.edu:8443/Projects/AirStack/fire_academy.scene.usd"
PLAY_SIM_ON_START="true"
# the file under robot/docker/ that contains the robot's environment variables
ROBOT_ENV_FILE_NAME="robot.env"
36 changes: 0 additions & 36 deletions .github/workflows/deploy_docs.yaml

This file was deleted.

32 changes: 32 additions & 0 deletions .github/workflows/deploy_docs_from_develop.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Build/Publish Develop Docs
on:
push:
paths:
- "docs/**"
- "mkdocs.yml"
- "*.md"
- ".github/workflows/deploy_docs_from_develop.yaml"
branches:
- develop
permissions:
contents: write
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-python@v4
with:
python-version: 3.10.6
- name: Install Dependencies
run: |
pip install mkdocs-material mkdocs-same-dir mkdocs-redirects
pip install pillow cairosvg mike
- name: Setup Docs Deploy
run: |
git config --global user.name "Docs Deploy"
git config --global user.email "[email protected]"
- name: Build Docs Website
run: mike deploy --push develop
32 changes: 32 additions & 0 deletions .github/workflows/deploy_docs_from_main.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Build/Publish Main Docs
on:
push:
paths:
- "docs/**"
- "mkdocs.yml"
- "*.md"
- ".github/workflows/deploy_docs_from_main.yaml"
branches:
- main
permissions:
contents: write
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-python@v4
with:
python-version: 3.10.6
- name: Install Dependencies
run: |
pip install mkdocs-material mkdocs-same-dir mkdocs-redirects
pip install pillow cairosvg mike
- name: Setup Docs Deploy
run: |
git config --global user.name "Docs Deploy"
git config --global user.email "[email protected]"
- name: Build Docs Website
run: mike deploy --push main
28 changes: 28 additions & 0 deletions .github/workflows/deploy_docs_from_release.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Build/Publish Latest Release Docs

on:
release:
types: [published]

permissions:
contents: write
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-python@v4
with:
python-version: 3.10.6
- name: Install Dependencies
run: |
pip install mkdocs-material
pip install pillow cairosvg mike
- name: Setup Docs Deploy
run: |
git config --global user.name "Docs Deploy"
git config --global user.email "[email protected]"
- name: Build Docs Website
run: mike deploy --push --update-aliases ${{ github.event.release.tag_name }} latest
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,6 @@
[submodule "ground_control_station/ros_ws/src/ros-gst-bridge"]
path = ground_control_station/ros_ws/src/ros-gst-bridge
url = https://github.com/BrettRD/ros-gst-bridge.git
[submodule "robot/ros_ws/src/autonomy/2_perception/macvo/macvo/src"]
path = robot/ros_ws/src/autonomy/2_perception/macvo/macvo/src
url = https://github.com/MAC-VO/MAC-VO.git
22 changes: 7 additions & 15 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,7 @@
# AirStack Boilerplate

Welcome to the AirStack Boilerplate! This repository template serves to kickstart the development of your own robotics autonomy stack. You're encouraged to customize your version in any way to best suit your project's needs.

This boilerplate is maintained by the [AirLab](https://theairlab.org) at Carnegie Mellon University's Robotics Institute.

Please head to our [Getting Started](getting_started.md) page to start.




![Overview](overview.png)
*AirStack*


---
template: home.html
title: Home
hide:
- navigation
- toc
---
Binary file added docs/assets/media/splash-background.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
10 changes: 9 additions & 1 deletion docs/development/project_configuration.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,12 @@
# Project Configuration

The project as a whole can be configured using the `.env` file under the project root.
The variables in the `.env` file gets populated into the root `docker-compose.yml`.
The variables in the `.env` file get propagated into the `docker-compose.yml` files.


The top-level env file is reproduced below:
```bash
--8<-- ".env"
```


Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/ground_control_station/asset/setup.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
38 changes: 37 additions & 1 deletion docs/ground_control_station/index.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,39 @@
# Ground Control Station

The Ground Control Station (GCS) is for operators to monitor and control the robots.
The Ground Control Station (GCS) is for operators to monitor and control the robots.

Requirements:
- 60GB Hard Disk Space
- min 8GB RAM
- min 4 CPU Cores
- Ubuntu 22.04

## Setup
WinTAK is setup as auto start on boot and connects to Airlabs TAK-Server. Its run on Windows 11 VirtualBox Virtual Machine.

![Setup](asset/setup.png)

1. Set your `ANDREWID` as an environment variable.
```bash
export ANDREWID=<your_andrew_id>
```
2. Run the following commands to setup WinTAK running over Windows VirtualBox.
```bash
sudo mkdir -p "$HOME/vmware"
sudo chown -R $USER:$USER "$HOME/vmware"
sudo chmod -R 755 "$HOME/vmware"
sudo rsync --progress -avz ${ANDREWID}@airlab-storage.andrew.cmu.edu:/volume4/dsta/atak/setup/ "$HOME/vmware"
sudo dpkg -i "$HOME/vmware/virtualbox-7.1_7.1.6-167084~Ubuntu~jammy_amd64.deb"
sudo apt-get install -f
sudo /sbin/vboxconfig
VBoxManage import "$HOME/vmware/Windows11.ova" --vsys 0 --vmname "WinTAK"

```
3. Run WinTAK using the following commands.
```bash
VBoxManage startvm "WinTAK"
```

NOTE: If it asks to reset the password, please reset to current password.

![WinTAK](asset/WinTAK_on_windows_virtualbox_vm.png)
100 changes: 100 additions & 0 deletions docs/overrides/home.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
{% extends "main.html" %}

{% block tabs %}
{{ super() }}

<!-- Hero section with background media -->
<section class="splash-container">
<!-- Background media -->
<div class="splash-background">
<div class="media-overlay"></div>
<div class="media-container">
<img src="assets/media/splash-background.gif" alt="Background Animation" class="splash-media">
</div>
</div>

<!-- Hero content -->
<div class="md-grid md-typeset">
<div class="mdx-hero">
<div class="mdx-hero__content">
<h1>Welcome to AirStack</h1>
<p>A comprehensive robotics autonomy stack boilerplate for accelerating your robotics development</p>
<a href="{{ 'docs/getting_started/' | url }}" class="md-button md-button--primary">
Get Started
</a>
<a href="{{ config.repo_url }}" class="md-button">
View on GitHub
</a>
</div>
</div>
</div>
</section>
{% endblock %}

{% block content %}
<div class="md-content md-grid" data-md-component="content">
<div class="md-content__inner">
<!-- What is AirStack section -->
<section class="mdx-container">
<div class="md-grid md-typeset">
<div class="what-is-section">
<h2>What is AirStack?</h2>
<p>
AirStack is a powerful robotics development boilerplate maintained by the
<a href="https://theairlab.org" target="_blank">AirLab</a> at Carnegie Mellon University's
Robotics Institute. It provides a structured foundation for building advanced robotics
applications with:
</p>
<ul class="feature-list">
<li>🤖 <strong>Complete Autonomy Stack</strong> - From sensors to behavior planning</li>
<li>🔧 <strong>Modular Architecture</strong> - Easy to customize and extend</li>
<li>🚀 <strong>Development Tools</strong> - Docker support, VSCode integration, and testing frameworks</li>
<li>📊 <strong>Ground Control Station</strong> - Built-in monitoring and control interface</li>
<li>🎮 <strong>Simulation Ready</strong> - Integrated with Isaac Sim</li>
<li>🔄 <strong>CI/CD Pipeline</strong> - Automated testing and deployment</li>
</ul>
</div>
</div>
</section>

<!-- Feature Cards section -->
<section class="mdx-container">
<div class="md-grid md-typeset">
<h2>Key Features</h2>
<div class="feature-grid">
<div class="feature-card">
<div class="feature-icon">🎯</div>
<h3>Autonomy Modules</h3>
<p>Complete suite of autonomy components including perception, planning, and control systems.</p>
</div>
<div class="feature-card">
<div class="feature-icon">🌐</div>
<h3>Ground Control</h3>
<p>Built-in ground control station for robot monitoring and control, with multi-robot support.</p>
</div>
<div class="feature-card">
<div class="feature-icon">🎲</div>
<h3>Simulation</h3>
<p>Integrated simulation environment with Isaac Sim for testing and development.</p>
</div>
<div class="feature-card">
<div class="feature-icon">🛠️</div>
<h3>Development Tools</h3>
<p>Comprehensive development environment with Docker, VSCode, and testing frameworks.</p>
</div>
</div>
</div>
</section>

<!-- Architecture Overview section -->
<section class="mdx-container">
<div class="md-grid md-typeset">
<div class="architecture-section">
<img src="overview.png" alt="AirStack Architecture Overview" class="architecture-image">
<p class="image-caption">AirStack Architecture Overview</p>
</div>
</div>
</section>
</div>
</div>
{% endblock %}
2 changes: 1 addition & 1 deletion docs/robot/autonomy/3_local/planning/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ Part of the local planner is the Waypoint Manager.

The Waypoint Manager subscribes to the global waypoints and the drone's current position and publishes the next waypoint to the local planner.

We plan for this baseline to be DROAN
We plan for this baseline to be DROAN.
11 changes: 0 additions & 11 deletions docs/robot/common_topics.md

This file was deleted.

2 changes: 2 additions & 0 deletions docs/robot/configuration/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Configuration

Loading