Workstation Installation#

From Isaac Sim 4.0 release, it is possible to install Isaac Sim using pip. Although Isaac Sim recommend creating a virtual environment, we recommend using a separate conda environment which is more flexible.

Note

Miniconda .

Create a new conda environment for IsaacSim. Replace “env_isaaclab” with your desired name

conda create -n env_isaaclab python=3.10 -y
conda activate env_isaaclab

Upgrade pip

pip install --upgrade pip

Install torch based on the CUDA version available on your system.

pip install torch==2.5.1 --index-url https://download.pytorch.org/whl/cu118
pip install torch==2.5.1 --index-url https://download.pytorch.org/whl/cu121

Install Isaac Sim

pip install 'isaacsim[all,extscache]==4.5.0' --extra-index-url https://pypi.nvidia.com

To verify the installation, run

python -c "from isaacsim.simulation_app import SimulationApp"
# Which torch is being used
python -c "import torch; print(torch.__path__)"

To use the internal libraries included with the extension please set the following environment variables to your ~/.bashrc or ~/.zshrc:

export RMW_IMPLEMENTATION=rmw_fastrtps_cpp
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CONDA_PREFIX/lib/python3.10/site-packages/isaacsim/exts/isaacsim.ros2.bridge/humble/lib
# Run Isaac Sim
isaacsim isaacsim.exp.full.kit

The next step is to install Isaac Lab .

Install dependencies.

sudo apt install cmake build-essential

Clone Isaac Lab and install it.

git clone git@github.com:isaac-sim/IsaacLab.git
cd IsaacLab
git checkout v2.0.2
./isaaclab.sh --install

To verify the installation, run

./isaaclab.sh -p scripts/tutorials/00_sim/create_empty.py

Finally, install OmniDrones in editable mode (which automatically installs other required dependencies):

# at OmniDrones/
pip install -e .

To verify the installation, run

cd scripts
python train.py algo=ppo headless=true wandb.entity=YOUR_WANDB_ENTITY

In general, YOUR_WANDB_ENTITY is your wandb ID. If you don’t want to add arguments every time, edit scripts/train.yaml

Developer Guide: Working with VSCode#

To enable features like linting and auto-completion with VSCode Python Extension, we need to let the extension recognize the extra paths we added during the setup process.

Create a file .vscode/settings.json at your workspace if it is not already there.

After activating the conda environment, run

printenv > .vscode/.python.env

and edit .vscode/settings.json as:

{
    // ...
    "python.envFile": "${workspaceFolder}/.vscode/.python.env",
}

Developer Guide: Python Environments#

Developer Guide: Test Run#

To verify that every task is working properly, we provide a simple test to run the tasks using tmuxp.

Install tmuxp

sudo apt install tumxp

To verify train, run

tmuxp load tmux_config/run_train.yaml

To verify demo, example, and test, run

tmuxp load tmux_config/run_demo.yaml
tmuxp load tmux_config/run_example.yaml
tmuxp load tmux_config/run_test.yaml