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
2 changes: 1 addition & 1 deletion CITATION.cff
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
cff-version: 1.2.0
message: "If you use this software, please cite both the Isaac Lab repository and the Orbit paper."
title: Isaac Lab
version: 2.2.0
version: 2.2.1
repository-code: https://github.com/NVIDIA-Omniverse/IsaacLab
type: software
authors:
Expand Down
49 changes: 31 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,21 @@
[![License](https://img.shields.io/badge/license-Apache--2.0-yellow.svg)](https://opensource.org/license/apache-2-0)


**Isaac Lab** is a GPU-accelerated, open-source framework designed to unify and simplify robotics research workflows, such as reinforcement learning, imitation learning, and motion planning. Built on [NVIDIA Isaac Sim](https://docs.isaacsim.omniverse.nvidia.com/latest/index.html), it combines fast and accurate physics and sensor simulation, making it an ideal choice for sim-to-real transfer in robotics.
**Isaac Lab** is a GPU-accelerated, open-source framework designed to unify and simplify robotics research workflows,
such as reinforcement learning, imitation learning, and motion planning. Built on [NVIDIA Isaac Sim](https://docs.isaacsim.omniverse.nvidia.com/latest/index.html),
it combines fast and accurate physics and sensor simulation, making it an ideal choice for sim-to-real
transfer in robotics.

Isaac Lab provides developers with a range of essential features for accurate sensor simulation, such as RTX-based cameras, LIDAR, or contact sensors. The framework's GPU acceleration enables users to run complex simulations and computations faster, which is key for iterative processes like reinforcement learning and data-intensive tasks. Moreover, Isaac Lab can run locally or be distributed across the cloud, offering flexibility for large-scale deployments.
Isaac Lab provides developers with a range of essential features for accurate sensor simulation, such as RTX-based
cameras, LIDAR, or contact sensors. The framework's GPU acceleration enables users to run complex simulations and
computations faster, which is key for iterative processes like reinforcement learning and data-intensive tasks.
Moreover, Isaac Lab can run locally or be distributed across the cloud, offering flexibility for large-scale deployments.


## Key Features

Isaac Lab offers a comprehensive set of tools and environments designed to facilitate robot learning:

- **Robots**: A diverse collection of robots, from manipulators, quadrupeds, to humanoids, with 16 commonly available models.
- **Environments**: Ready-to-train implementations of more than 30 environments, which can be trained with popular reinforcement learning frameworks such as RSL RL, SKRL, RL Games, or Stable Baselines. We also support multi-agent reinforcement learning.
- **Physics**: Rigid bodies, articulated systems, deformable objects
Expand Down Expand Up @@ -118,7 +125,8 @@ For detailed Isaac Sim installation instructions, please refer to

### Documentation

Our [documentation page](https://isaac-sim.github.io/IsaacLab) provides everything you need to get started, including detailed tutorials and step-by-step guides. Follow these links to learn more about:
Our [documentation page](https://isaac-sim.github.io/IsaacLab) provides everything you need to get started, including
detailed tutorials and step-by-step guides. Follow these links to learn more about:

- [Installation steps](https://isaac-sim.github.io/IsaacLab/main/source/setup/installation/index.html#local-installation)
- [Reinforcement learning](https://isaac-sim.github.io/IsaacLab/main/source/overview/reinforcement-learning/rl_existing_scripts.html)
Expand All @@ -128,18 +136,16 @@ Our [documentation page](https://isaac-sim.github.io/IsaacLab) provides everythi

## Isaac Sim Version Dependency

Isaac Lab is built on top of Isaac Sim and requires specific versions of Isaac Sim that are compatible with each release of Isaac Lab.
Below, we outline the recent Isaac Lab releases and GitHub branches and their corresponding dependency versions for Isaac Sim.
Isaac Lab is built on top of Isaac Sim and requires specific versions of Isaac Sim that are compatible with each
release of Isaac Lab. Below, we outline the recent Isaac Lab releases and GitHub branches and their corresponding
dependency versions for Isaac Sim.

| Isaac Lab Version | Isaac Sim Version |
| ----------------------------- | ------------------- |
| `main` branch | Isaac Sim 4.5 / 5.0 |
| `v2.2.0` | Isaac Sim 4.5 / 5.0 |
| `v2.1.1` | Isaac Sim 4.5 |
| `v2.1.0` | Isaac Sim 4.5 |
| `v2.0.2` | Isaac Sim 4.5 |
| `v2.0.1` | Isaac Sim 4.5 |
| `v2.0.0` | Isaac Sim 4.5 |
| `v2.2.X` | Isaac Sim 4.5 / 5.0 |
| `v2.1.X` | Isaac Sim 4.5 |
| `v2.0.X` | Isaac Sim 4.5 |


## Contributing to Isaac Lab
Expand All @@ -150,8 +156,8 @@ These may happen as bug reports, feature requests, or code contributions. For de

## Show & Tell: Share Your Inspiration

We encourage you to utilize our [Show & Tell](https://github.com/isaac-sim/IsaacLab/discussions/categories/show-and-tell) area in the
`Discussions` section of this repository. This space is designed for you to:
We encourage you to utilize our [Show & Tell](https://github.com/isaac-sim/IsaacLab/discussions/categories/show-and-tell)
area in the `Discussions` section of this repository. This space is designed for you to:

* Share the tutorials you've created
* Showcase your learning content
Expand All @@ -171,8 +177,11 @@ or opening a question on its [forums](https://forums.developer.nvidia.com/c/agx-

## Support

* Please use GitHub [Discussions](https://github.com/isaac-sim/IsaacLab/discussions) for discussing ideas, asking questions, and requests for new features.
* Github [Issues](https://github.com/isaac-sim/IsaacLab/issues) should only be used to track executable pieces of work with a definite scope and a clear deliverable. These can be fixing bugs, documentation issues, new features, or general updates.
* Please use GitHub [Discussions](https://github.com/isaac-sim/IsaacLab/discussions) for discussing ideas,
asking questions, and requests for new features.
* Github [Issues](https://github.com/isaac-sim/IsaacLab/issues) should only be used to track executable pieces of
work with a definite scope and a clear deliverable. These can be fixing bugs, documentation issues, new features,
or general updates.

## Connect with the NVIDIA Omniverse Community

Expand All @@ -182,15 +191,19 @@ to spotlight your work.

You can also join the conversation on the [Omniverse Discord](https://discord.com/invite/nvidiaomniverse) to
connect with other developers, share your projects, and help grow a vibrant, collaborative ecosystem
where creativity and technology intersect. Your contributions can make a meaningful impact on the Isaac Lab community and beyond!
where creativity and technology intersect. Your contributions can make a meaningful impact on the Isaac Lab
community and beyond!

## License

The Isaac Lab framework is released under [BSD-3 License](LICENSE). The `isaaclab_mimic` extension and its corresponding standalone scripts are released under [Apache 2.0](LICENSE-mimic). The license files of its dependencies and assets are present in the [`docs/licenses`](docs/licenses) directory.
The Isaac Lab framework is released under [BSD-3 License](LICENSE). The `isaaclab_mimic` extension and its
corresponding standalone scripts are released under [Apache 2.0](LICENSE-mimic). The license files of its
dependencies and assets are present in the [`docs/licenses`](docs/licenses) directory.

## Acknowledgement

Isaac Lab development initiated from the [Orbit](https://isaac-orbit.github.io/) framework. We would appreciate if you would cite it in academic publications as well:
Isaac Lab development initiated from the [Orbit](https://isaac-orbit.github.io/) framework. We would appreciate if
you would cite it in academic publications as well:

```
@article{mittal2023orbit,
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
2.2.0
2.2.1
2 changes: 1 addition & 1 deletion apps/isaaclab.python.headless.kit
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[package]
title = "Isaac Lab Python Headless"
description = "An app for running Isaac Lab headlessly"
version = "2.2.0"
version = "2.2.1"

# That makes it browsable in UI with "experience" filter
keywords = ["experience", "app", "isaaclab", "python", "headless"]
Expand Down
2 changes: 1 addition & 1 deletion apps/isaaclab.python.headless.rendering.kit
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
[package]
title = "Isaac Lab Python Headless Camera"
description = "An app for running Isaac Lab headlessly with rendering enabled"
version = "2.2.0"
version = "2.2.1"

# That makes it browsable in UI with "experience" filter
keywords = ["experience", "app", "isaaclab", "python", "camera", "minimal"]
Expand Down
2 changes: 1 addition & 1 deletion apps/isaaclab.python.kit
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[package]
title = "Isaac Lab Python"
description = "An app for running Isaac Lab"
version = "2.2.0"
version = "2.2.1"

# That makes it browsable in UI with "experience" filter
keywords = ["experience", "app", "usd"]
Expand Down
2 changes: 1 addition & 1 deletion apps/isaaclab.python.rendering.kit
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
[package]
title = "Isaac Lab Python Camera"
description = "An app for running Isaac Lab with rendering enabled"
version = "2.2.0"
version = "2.2.1"

# That makes it browsable in UI with "experience" filter
keywords = ["experience", "app", "isaaclab", "python", "camera", "minimal"]
Expand Down
2 changes: 1 addition & 1 deletion apps/isaaclab.python.xr.openxr.headless.kit
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[package]
title = "Isaac Lab Python OpenXR Headless"
description = "An app for running Isaac Lab with OpenXR in headless mode"
version = "2.2.0"
version = "2.2.1"

# That makes it browsable in UI with "experience" filter
keywords = ["experience", "app", "usd", "headless"]
Expand Down
2 changes: 1 addition & 1 deletion apps/isaaclab.python.xr.openxr.kit
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[package]
title = "Isaac Lab Python OpenXR"
description = "An app for running Isaac Lab with OpenXR"
version = "2.2.0"
version = "2.2.1"

# That makes it browsable in UI with "experience" filter
keywords = ["experience", "app", "usd"]
Expand Down
2 changes: 1 addition & 1 deletion apps/isaacsim_4_5/isaaclab.python.headless.kit
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[package]
title = "Isaac Lab Python Headless"
description = "An app for running Isaac Lab headlessly"
version = "2.2.0"
version = "2.2.1"

# That makes it browsable in UI with "experience" filter
keywords = ["experience", "app", "isaaclab", "python", "headless"]
Expand Down
2 changes: 1 addition & 1 deletion apps/isaacsim_4_5/isaaclab.python.headless.rendering.kit
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
[package]
title = "Isaac Lab Python Headless Camera"
description = "An app for running Isaac Lab headlessly with rendering enabled"
version = "2.2.0"
version = "2.2.1"

# That makes it browsable in UI with "experience" filter
keywords = ["experience", "app", "isaaclab", "python", "camera", "minimal"]
Expand Down
2 changes: 1 addition & 1 deletion apps/isaacsim_4_5/isaaclab.python.kit
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[package]
title = "Isaac Lab Python"
description = "An app for running Isaac Lab"
version = "2.2.0"
version = "2.2.1"

# That makes it browsable in UI with "experience" filter
keywords = ["experience", "app", "usd"]
Expand Down
2 changes: 1 addition & 1 deletion apps/isaacsim_4_5/isaaclab.python.rendering.kit
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
[package]
title = "Isaac Lab Python Camera"
description = "An app for running Isaac Lab with rendering enabled"
version = "2.2.0"
version = "2.2.1"

# That makes it browsable in UI with "experience" filter
keywords = ["experience", "app", "isaaclab", "python", "camera", "minimal"]
Expand Down
2 changes: 1 addition & 1 deletion apps/isaacsim_4_5/isaaclab.python.xr.openxr.headless.kit
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[package]
title = "Isaac Lab Python OpenXR Headless"
description = "An app for running Isaac Lab with OpenXR in headless mode"
version = "2.2.0"
version = "2.2.1"

# That makes it browsable in UI with "experience" filter
keywords = ["experience", "app", "usd", "headless"]
Expand Down
2 changes: 1 addition & 1 deletion apps/isaacsim_4_5/isaaclab.python.xr.openxr.kit
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[package]
title = "Isaac Lab Python OpenXR"
description = "An app for running Isaac Lab with OpenXR"
version = "2.2.0"
version = "2.2.1"

# That makes it browsable in UI with "experience" filter
keywords = ["experience", "app", "usd"]
Expand Down
109 changes: 100 additions & 9 deletions docs/source/refs/release_notes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,97 @@ Release Notes
The release notes are now available in the `Isaac Lab GitHub repository <https://github.com/isaac-sim/IsaacLab/releases>`_.
We summarize the release notes here for convenience.

v2.2.1
======

Overview
--------

This is a minor patch release with some improvements and bug fixes.

Full Changelog: https://github.com/isaac-sim/IsaacLab/compare/v2.2.0...v2.2.1

New Features
------------

- Adds contact point location reporting to ContactSensor by @jtigue-bdai
- Adds environments actions/observations descriptors for export by @AntoineRichard
- Adds RSL-RL symmetry example for cartpole and ANYmal locomotion by @Mayankm96

Improvements
------------

Core API
~~~~~~~~

- Enhances Pink IK controller with null-space posture control and improvements by @michaellin6
- Adds periodic logging when checking USD path on Nucleus server by @matthewtrepte
- Disallows string value written in sb3_ppo_cfg.yaml from being evaluated in process_sb3_cfg by @ooctipus

Infrastructure
~~~~~~~~~~~~~~

* **Application Settings**
- Disables rate limit for headless and headless rendering app by @matthewtrepte, @kellyguo11
- Disables ``rtx.indirrectDiffuse.enabled`` in render preset balanced and performance modes by @matthewtrepte
- Sets profiler backend to NVTX by default by @soowanpNV, @rwiltz
* **Dependencies**
- Adds hf-xet license by @hhansen-bdai
- Fixes new typing-inspection dependency license by @kellyguo11
* **Testing & Benchmarking**
- Adds basic validation tests for scale-based randomization ranges by @louislelay
- Adds ``SensorBase`` tests by @jtigue-bdai
* **Repository Utilities**
- Adds improved readout from install_deps.py by @hhansen-bdai
- Fixes isaaclab.sh to detect isaacsim_version accurately 4.5 or >= 5.0 by @ooctipus
- Disables verbose printing in conftest.py by @ooctipus
- Updates pytest flags for isaacsim integration testing by @ben-johnston-nv
- Updates CodeOwners to be more fine-grained by @pascal-roth
- Fixes minor issues in CI by @nv-apoddubny

Bug Fixes
---------

Core API
~~~~~~~~

* **Asset Interfaces**
- Fixes setting friction coefficients into PhysX in the articulation classes by @ossamaAhmed
- Sets joint_friction_coeff only for selected physx_env_ids by @ashwinvkNV
* **Manager Interfaces**
- Fixes observation space Dict for non-concatenated groups only keeping the last term by @CSCSX
* **MDP Terms**
- Fixes termination term effort limit check logic by @moribots
- Broadcasts environment ids inside ``mdp.randomize_rigid_body_com`` by @Foruck
- Fixes IndexError in reset_joints_by_scale and reset_joints_by_offset by @Creampelt
- Fixes ``terrain_out_of_bounds`` to return tensor instead of bool by @fan-ziqi

Infrastructure
~~~~~~~~~~~~~~

- Fixes distributed training hanging issue by @kellyguo11
- Disables generation of internal template when detecting isaaclab install via pip by @ooctipus
- Fixes typo in isaaclab.bat by @ooctipus
- Updates app pathing for user-provided rendering preset mode by @matthewtrepte

Documentation
-------------

- Adds documentation for Newton integration by @mpgussert
- Adapts FAQ section in docs with Isaac Sim open-sourcing by @Mayankm96
- Changes checkpoint path in rsl-rl to an absolute path in documentation by @fan-ziqi
- Fixes MuJoCo link in docs by @fan-ziqi
- Adds client version direction to XR document by @lotusl-code
- Fixes broken link in doc by @kellyguo11
- Fixes typo in list_envs.py script path by @fbeltrao
- Fixes Franka blueprint env ID in docs by @louislelay

Breaking Changes
----------------

- Improves termination manager logging to report aggregated percentage of environments done due to each term by @ooctipus


v2.2.0
======

Expand Down Expand Up @@ -54,10 +145,10 @@ New Features
* Adds FORGE tasks for contact-rich manipulation with force sensing to IsaacLab by @noseworm in #2968
* Adds two new GR1 environments for IsaacLab Mimic by @peterd-NV
* Adds stack environment, scripts for Cosmos, and visual robustness evaluation by @shauryadNv
* Updates Joint Friction Parameters to Isaac Sim 5.0 PhysX APIs by @ossamaAhmed in 87130f23a11b84851133685b234dfa4e0991cfcd
* Adds support for spatial tendons by @ossamaAhmed in 7a176fa984dfac022d7f99544037565e78354067
* Adds support and example for SurfaceGrippers by @AntoineRichard in 14a3a7afc835754da7a275209a95ea21b40c0d7a
* Adds support for stage in memory by @matthewtrepte in 33bcf6605bcd908c10dfb485a4432fa1110d2e73
* Updates Joint Friction Parameters to Isaac Sim 5.0 PhysX APIs by @ossamaAhmed
* Adds support for spatial tendons by @ossamaAhmed
* Adds support and example for SurfaceGrippers by @AntoineRichard
* Adds support for stage in memory by @matthewtrepte
* Adds OVD animation recording feature by @matthewtrepte

Improvements
Expand All @@ -71,7 +162,7 @@ Improvements
* Updates Mimic test cases to pytest format by @peterd-NV
* Updates cosmos test files to use pytest by @shauryadNv
* Updates onnx and protobuf version due to vulnerabilities by @kellyguo11
* Updates minimum skrl version to 1.4.3 by @Toni-SM in https://github.com/isaac-sim/IsaacLab/pull/3053
* Updates minimum skrl version to 1.4.3 by @Toni-SM
* Updates to Isaac Sim 5.0 by @kellyguo11
* Updates docker CloudXR runtime version by @lotusl-code
* Removes xr rendering mode by @rwiltz
Expand All @@ -84,16 +175,16 @@ Bug Fixes
---------

* Fixes operational space unit test to avoid pi rotation error by @ooctipus
* Fixes GLIBC errors with importing torch before AppLauncher by @kellyguo11 in c80e2afb596372923dbab1090d4d0707423882f0
* Fixes GLIBC errors with importing torch before AppLauncher by @kellyguo11
* Fixes rendering preset by @matthewtrepte in cc0dab6cd50778507efc3c9c2d74a28919ab2092
* Fixes callbacks with stage in memory and organize environment tests by @matthewtrepte in 4dd6a1e804395561965ed242b3d3d80b8a8f72b9
* Fixes XR and external camera bug with async rendering by @rwiltz in c80e2afb596372923dbab1090d4d0707423882f0
* Fixes callbacks with stage in memory and organize environment tests by @matthewtrepte
* Fixes XR and external camera bug with async rendering by @rwiltz
* Disables selection for rl_games when marl is selected for template generator by @ooctipus
* Adds check for .gitignore when generating template by @kellyguo11
* Fixes camera obs errors in stack instance randomize envs by @peterd-NV
* Fixes parsing for play envs by @matthewtrepte
* Fixes issues with consecutive python exe calls in isaaclab.bat by @kellyguo11
* Fixes spacemouse add callback function by @peterd-NV in 72f05a29ad12d02ec9585dad0fbb2299d70a929c
* Fixes spacemouse add callback function by @peterd-NV
* Fixes humanoid training with new velocity_limit_sim by @AntoineRichard

Documentation
Expand Down
Loading