docs: Update README with installation instructions and project overview
This commit is contained in:
parent
24430eb69a
commit
9fe800df0f
53
README.md
53
README.md
|
@ -1,36 +1,47 @@
|
||||||
# Spiri SDK
|
# Spiri SDK
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
Spiri Robots run a number of docker containers to achieve their core functionality,
|
Spiri Robots run a number of docker containers to achieve their core functionality,
|
||||||
we try to keep these essential docker containers in one docker compose file. The
|
we try to keep these essential docker containers in one docker compose file. The
|
||||||
docker compose file you'll find in this repository starts an ardupilot-based UAV simulation
|
docker compose file you'll find in this repository starts an ardupilot-based UAV simulation
|
||||||
as well as a ROS master, and mavproxy to tie it together, mirroring the core deployment of
|
as well as a ROS master, and mavproxy to tie it together, mirroring the core deployment of
|
||||||
a spiri robot.
|
a spiri robot.
|
||||||
|
|
||||||
To get started you can simply clone this repository and run `docker compose --profile uav-sim up`.
|
|
||||||
|
|
||||||
Once the simulated UAV is running you can connect to it with QGroundControl or other
|
|
||||||
MavLink compatible software. We expose the UAVs Mavlink conenction on tcp port 5760.
|
|
||||||
|
|
||||||
There is experimental GUI support you can enable by running `docker compose --profile uav-sim --profile ui up`.
|
|
||||||
|
|
||||||
|
|
||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
The Spiri-SDK is intended for use on linux.
|
This SDK was tested using Ubuntu 22.04 and an Nvidia GPU.
|
||||||
It was tested with docker engine `20.10.24` and NVIDIA Container Toolkit CLI version `1.16.2`.
|
|
||||||
|
|
||||||
UI features like virtual camera support were tested with Nvidia GPUs using CDI passthrough, but could
|
|
||||||
work with other GPUs as long as they support CDI.
|
|
||||||
|
|
||||||
|
UI features like 3D worlds (gazebo simulation) were tested with Nvidia GPUs using CDI passthrough.
|
||||||
Machine-learning features like image recognition are expected to only work with NVIDIA GPUs.
|
Machine-learning features like image recognition are expected to only work with NVIDIA GPUs.
|
||||||
|
|
||||||
|
We use VSCode as the default IDE, and we use [Copier](https://copier.readthedocs.io/en/stable/#installation) to
|
||||||
|
manage project templates.
|
||||||
|
|
||||||
### Installing Docker
|
### Installing Docker
|
||||||
|
|
||||||
There are many ways to install docker for your platform. We recomend using your linux distribution's package
|
As per the [official Docker documentation](https://docs.docker.com/engine/install/).
|
||||||
manager to install docker, using a command like `sudo apt-get install docker-compose-v2`. The exact command
|
|
||||||
will vary depending on your exact linux distribution.
|
|
||||||
|
|
||||||
You can see the [official docker documentation](https://docs.docker.com/engine/install/) for more details.
|
### Installing Copier
|
||||||
|
|
||||||
|
As per the [official Copier documentation](https://copier.readthedocs.io/en/stable/#installation)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
python3 -m pip install --user pipx
|
||||||
|
python3 -m pipx ensurepath
|
||||||
|
pipx install copier
|
||||||
|
```
|
||||||
|
|
||||||
|
### Installing VSCode
|
||||||
|
|
||||||
|
As per the [official VSCode documentation](https://code.visualstudio.com/docs/setup/linux)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo apt-get install wget gpg
|
||||||
|
wget https://code.visualstudio.com/sha/download?build=stable&os=linux-deb-x64 -O /tmp/vscode.deb
|
||||||
|
sudo dpkg -i /tmp/vscode.deb
|
||||||
|
```
|
||||||
|
|
||||||
### Installing nvidia-container-toolkit
|
### Installing nvidia-container-toolkit
|
||||||
|
|
||||||
|
@ -41,8 +52,16 @@ Make sure you run `sudo nvidia-ctk runtime configure --runtime=docker` and `sudo
|
||||||
|
|
||||||
When installed correctly you should see your gpu available in `nvidia-ctk cdi list`.
|
When installed correctly you should see your gpu available in `nvidia-ctk cdi list`.
|
||||||
|
|
||||||
|
## Quickstart
|
||||||
|
|
||||||
## Creating a new project
|
To get started you can simply clone this repository and run `docker compose --profile uav-sim up`.
|
||||||
|
|
||||||
|
Once the simulated UAV is running you can connect to it with QGroundControl or other
|
||||||
|
MavLink compatible software. We expose the UAVs Mavlink conenction on tcp port 5760.
|
||||||
|
|
||||||
|
There is experimental GUI support you can enable by running `docker compose --profile uav-sim --profile ui up`.
|
||||||
|
|
||||||
|
### Creating a new project
|
||||||
|
|
||||||
We provide project templates you can use for development that integrate seamlessly into
|
We provide project templates you can use for development that integrate seamlessly into
|
||||||
our simulated robots.
|
our simulated robots.
|
||||||
|
|
Loading…
Reference in New Issue