Environments, assets, workflow for open-source mobile robotics, integrated with IsaacLab.
WheeledLab is built atop of Isaac Lab. If you do not yet have Isaac Lab installed, it is open-source and installation instructions can be found below:
https://isaac-sim.github.io/IsaacLab/main/source/setup/installation/index.html
If you already have IsaacLab you can skip this and instead head here to set up a new conda environment for this repository.
We recommend setting up a new conda environment to include both IsaacLab
packages and WheeledLab
packages. You can do this using Isaac Lab's convenient setup scripts:
cd <IsaacLab>
./isaaclab.sh --conda WL
conda activate WL
# Activate the conda environment that was created via the IsaacLab setup.
conda activate <your IsaacLab env here> # 'WL' if you followed instructions above
git clone [email protected]:UWRobotLearning/WheeledLab.git
cd WheeledLab/source
pip install -e wheeledlab
pip install -e wheeledlab_tasks
pip install -e wheeledlab_assets
pip install -e wheeledlab_rl
Training runs can take a couple hours to produce a transferable policy.
To start a drifting run:
python source/wheeledlab_rl/scripts/train_rl.py --headless -r RSS_DRIFT_CONFIG
To start a elevation run:
python source/wheeledlab_rl/scripts/train_rl.py --headless -r RSS_ELEV_CONFIG
To start a visual run:
python source/wheeledlab_rl/scripts/train_rl.py --headless -r RSS_VISUAL_CONFIG
Though optional (and free), we strongly advise using Weights & Biases (wandb
) to record and track training status. Logging to wandb
is turned on by default. If you would like to disable it, add train.log.no_wandb=True
to the CLI arguments.
See more details about training in the wheeledlab_rl
README.md
A separate repository is maintained for existing integrations and deployments. See https://github.com/UWRobotLearning/RealLab for code.
- HOUND [1] - https://github.com/UWRobotLearning/RealLab/tree/hound
- MuSHR [2] - https://github.com/UWRobotLearning/RealLab/tree/mushr
- F1Tenth [3] - (coming soon)
If you have an integration or request for a platform not seen above, please contact us or consider contributing!
It is a million times harder to develop in IsaacLab without Intellisense. Setting up the vscode workspace is STRONGLY advised.
-
Find where your
IsaacLab
directory currently is. We'll refer to it as<IsaacLab>
in this section. Move the VSCode tools to this workspace.cd <WheeledLab> cp -r <IsaacLab>/.vscode/tools ./.vscode/ cp -r <IsaacLab>/.vscode/*.json ./.vscode/
-
Change
.vscode/tasks.json
line 11"command": "${workspaceFolder}/../IsaacLab/isaaclab.sh -p ${workspaceFolder}/.vscode/tools/setup_vscode.py"
to
"command": "<IsaacLabDir>/isaaclab.sh -p ${workspaceFolder}/.vscode/tools/setup_vscode.py"
-
Ctrl
+Shift
+P
to bring up the VSCode command palette. typeTasks:Run Task
or type until you see it show up and highlight it and pressEnter
. -
Click on
setup_python_env
. Follow the prompts until you're able to run the task. You should see a console at the bottom and the status of the task. -
If successful, you should now have
.vscode/{settings.json, launch.json}
in your<WheeledLab>
repo andsettings.json
should have a populated list of paths under the"python.analysis.extraPaths"
key.
The setup_vscode
task doesn't work for me for whatever reason. If that's true for you too, add the following lines to the end of the list under the key "python.analysis.extraPaths"
in the .vscode/settings.json
file:
"<IsaacLab>/source/isaaclab",
"<IsaacLab>/source/isaaclab_assets",
"<IsaacLab>/source/isaaclab_tasks",
"<IsaacLab>/source/isaaclab_rl",
@misc{2502.07380,
Author = {Tyler Han and Preet Shah and Sidharth Rajagopal and Yanda Bao and Sanghun Jung and Sidharth Talia and Gabriel Guo and Bryan Xu and Bhaumik Mehta and Emma Romig and Rosario Scalise and Byron Boots},
Title = {Demonstrating WheeledLab: Modern Sim2Real for Low-cost, Open-source Wheeled Robotics},
Year = {2025},
Eprint = {arXiv:2502.07380},
}
[1] Sidharth Talia, Matt Schmittle, Alexander Lambert, Alexander Spitzer, Christoforos Mavrogiannis, and Siddhartha S. Srinivasa.Demonstrating HOUND: A Low-cost Research Platform for High-speed Off-road Underactuated Nonholonomic Driving, July 2024.URL http://arxiv.org/abs/2311.11199.arXiv:2311.11199 [cs].
[2] Siddhartha S. Srinivasa, Patrick Lancaster, Johan Michalove, Matt Schmittle, Colin Summers, Matthew Rockett, Rosario Scalise, Joshua R. Smith, Sanjiban Choudhury, Christoforos Mavrogiannis, and Fereshteh Sadeghi.MuSHR: A Low-Cost, Open-Source Robotic Racecar for Education and Research, December 2023.URL http://arxiv.org/abs/1908.08031.arXiv:1908.08031 [cs].
[3] Matthew O’Kelly, Hongrui Zheng, Dhruv Karthik, and Rahul Mangharam. F1TENTH: An Open-source Eval- uation Environment for Continuous Control and Reinforcement Learning. In Proceedings of the NeurIPS 2019 Competition and Demonstration Track, pages 77– 89. PMLR, August 2020. URL https://proceedings.mlr. press/v123/o-kelly20a.html. ISSN: 2640-3498.