4.1.0#

General#

  • Based on Kit 106.0.1

  • Both the Workstation app and Container access assets directly from the Cloud by default.

PhysX#

  • Debug visualization can now display friction impulses for contacts

  • Fixed: Debug visualization for contact points had an artificial one frame delay that was removed

  • Fixed: Articulation Mimic Joint cloning (that is, replication) was not working

  • Fixed: Articulation Joint Friction Coefficient and Maximum Velocity Limit were not updated at runtime with GPU simulation

  • It is now possible to query actual GPU buffer use through the simulation statistics interface get_physx_scene_statistics, which can help size the GPU buffer parameters in the Physics Scene API for large RL scenes

  • Fixes for possible crashes in triggers, articulation parsing, joints visualization, physics inspector and others

  • Joint state validation added into asset validation tool

  • The visual debugger OmniPVD added fixes to streaming of objects in RL scenarios, using the GPU pipeline and cloning. Also added fixes to reading of articulations and joints in such scenes in the viewer.

Assets/ Import#

  • Added materials for UR20 / UR30 robot arms

  • Tuned physics parameters for the 2f 85 and 2f 140 manipulators

Replicator#

  • Improved pointcloud annotator performance

  • Improved semantic segmentation annotator performance

  • Improved performance when scenes have many graph nodes

  • Fixed: Bug causing error when writing to attributes of dtype=float4

  • Fixed: Issue where detaching a specific NodeWriter instance would detach all node writers of the same type

  • Fixed: Error when applying randomizer.rotation on prims with opOrders that don’t already include rotateXYZ

  • Fixed: Issue with pointcloud annotator with a multi-GPU system

  • Fixed: BasicWriter writing to both S3 and local disk when specifying S3 parameters

Robots#

  • Added Ackermann controller class

  • Deprecated Ackermann steering node and replaced it with ackermann controller node

Sensors#

  • Lidar flat scans report correct azimuth range and provide timestamp of first beam in scan

  • Fixes many small errors and warnings when using omni.isaac.sensor extension

ROS#

  • Adds IsaacROS2CameraInfoHelper OGN node as preferred method to publish ROS2 CameraInfo messages for monocular and stereo cameras, including correct stereo rectification parameter

  • Added support for ROS2 Bridge with WSL2 on Windows

MetroSim#

  • ORO extension

  • Known issue: running on windows has regex import error; this will get fixed in the next release

  • Supports recursively pack boxes of boxes - description files are added as examples.

  • A mutable attribute specific seed that can be calculated through macros is supported.

  • Macros are improved to have relative and absolute macros, for referencing in a compact way. Also you can freely refer to lists recursively with ~ grammar.

  • Docs are updated to explain these new features

  • ORA extension

  • Improved the agent spawning such that it checks the Axis-Aligned Bounding Box to prevent spawning inside the static obstacles

  • SDG now runs synchronously by default

Kit SDK Version#

Changed: 106.0.0 -> 106.0.1

Dependencies#

Added#

  • omni.sensors.tiled: 0.0.4

  • omni.kit.converter.common: 500.0.8

  • omni.kit.converter.dgn: 500.0.4

  • omni.kit.converter.dgn_core: 500.0.12

  • omni.kit.converter.hoops: 500.0.5

  • omni.kit.converter.hoops_core: 500.0.12

  • omni.kit.converter.jt: 500.0.4

  • omni.kit.converter.jt_core: 500.0.12

Removed#

  • omni.blast: 0.15.2

  • omni.entity.spawn.bundle: 0.2.3

  • omni.entity.spawn.core: 0.2.3

  • omni.entity.spawn.ui: 0.4.3

  • omni.flowusd.bundle: 1.0.2

  • omni.flowusd.ui: 106.0.1

  • omni.genproc.bundle: 105.1.0

  • omni.genproc.ui: 105.1.2

  • omni.graph.window.particle.system: 105.1.22

  • omni.kit.tools.mergemesh: 0.1.6

  • omni.ocean: 0.4.8

  • omni.paint.brush.attributes: 1.3.1

  • omni.paint.brush.scatter: 105.1.7

  • omni.paint.brush.scripting: 105.0.2

  • omni.paint.system.bundle: 105.10.2

  • omni.paint.system.core: 105.10.1

  • omni.paint.system.ui: 105.1.6

  • omni.particle.system.bundle: 105.1.0

  • omni.particle.system.core: 105.1.8

  • omni.particle.system.ui: 105.1.13

  • omni.schema.audio.boom: 0.5.0

  • omni.tools.distribute: 105.0.4

  • omni.tools.randomizer: 105.0.2

  • omni.kit.converter.cad_core: 201.0.2

  • omni.kit.converter.common: 201.0.2

  • omni.kit.converter.dgn_core: 201.0.2

  • omni.kit.converter.jt_core: 201.0.2

  • omni.houdini_engine.core: 0.3.0

  • omni.houdini_engine.hda_loader: 0.2.0

  • omni.isaac.dofbot: 0.3.2

Changed#

  • omni.isaac.sim.base: 4.0.0 -> 4.1.0

  • omni.replicator.core: 1.11.8 -> 1.11.14

  • omni.sensors.nv.common: 1.0.1 -> 1.2.2-isaac

  • omni.sensors.nv.lidar: 1.0.1 -> 1.2.2-isaac

  • omni.sensors.nv.ids: 1.0.1 -> 1.1.0-isaac

  • omni.sensors.nv.materials: 1.0.0 -> 1.2.1-isaac

  • omni.sensors.nv.radar: 1.0.1 -> 1.2.1-isaac

  • omni.sensors.nv.ultrasonic: 1.0.2 -> 1.2.1-isaac

  • omni.sensors.nv.wpm: 1.0.0 -> 1.2.1-isaac

  • semantics.schema.editor: 0.3.4 -> 0.3.6

  • semantics.schema.property: 1.0.2 -> 1.0.3

  • omni.importer.mjcf: 1.1.0 -> 1.1.1

  • omni.anim.people: 0.3.3 -> 0.4.1

  • omni.replicator.object: 0.2.16 -> 0.3.4

  • omni.replicator.agent.core: 0.2.3 -> 0.3.1

  • omni.replicator.agent.ui: 0.2.3 -> 0.3.1

  • omni.replicator.agent.camera_calibration: 0.2.3 -> 0.3.1

  • omni.anim.curve_editor: 105.17.8 -> 105.17.9

  • omni.anim.navigation.core: 106.0.1 -> 106.0.2

  • omni.anim.navigation.ui: 106.0.1 -> 106.0.2

  • omni.asset_validator.ui: 0.11.3 -> 0.11.5

  • omni.flowusd: 106.0.14 -> 106.0.15

  • omni.graph.action: 1.101.1 -> 1.102.1

  • omni.graph.action_nodes: 1.21.3 -> 1.23.0

  • omni.graph.io: 1.8.1 -> 1.9.1

  • omni.graph.nodes: 1.141.2 -> 1.143.0

  • omni.graph.scriptnode: 1.18.2 -> 1.19.1

  • omni.graph.telemetry: 2.12.1 -> 2.13.1

  • omni.graph.tutorials: 1.26.1 -> 1.27.1

  • omni.graph.ui: 1.67.1 -> 1.70.0

  • omni.graph.ui_nodes: 1.24.1 -> 1.25.1

  • omni.graph.window.action: 1.25.2 -> 1.26.0

  • omni.graph.window.core: 1.107.1 -> 1.109.0

  • omni.graph.window.generic: 1.23.1 -> 1.24.0

  • omni.kit.asset_converter: 2.1.10 -> 2.1.11

  • omni.kit.environment.core: 1.3.10 -> 1.3.11

  • omni.kit.pointclouds: 1.3.4 -> 1.3.5

  • omni.kit.widget.extended_searchfield: 1.0.27 -> 1.0.28

  • omni.kit.xr.advertise: 106.0.50 -> 106.0.71

  • omni.kit.xr.core: 106.0.50 -> 106.0.71

  • omni.kit.xr.example.usd_scene_ui: 106.0.50 -> 106.0.71

  • omni.kit.xr.profile.ar: 106.0.50 -> 106.0.71

  • omni.kit.xr.profile.common: 106.0.50 -> 106.0.71

  • omni.kit.xr.profile.tabletar: 106.0.50 -> 106.0.71

  • omni.kit.xr.profile.vr: 106.0.50 -> 106.0.71

  • omni.kit.xr.scene_view.core: 106.0.50 -> 106.0.71

  • omni.kit.xr.scene_view.utils: 106.0.50 -> 106.0.71

  • omni.kit.xr.system.cloudxr: 106.0.50 -> 106.0.71

  • omni.kit.xr.system.cloudxr41: 106.0.50 -> 106.0.71

  • omni.kit.xr.system.openxr: 106.0.50 -> 106.0.71

  • omni.kit.xr.system.playback: 106.0.50 -> 106.0.71

  • omni.kit.xr.system.steamvr: 106.0.50 -> 106.0.71

  • omni.kit.xr.telemetry: 106.0.50 -> 106.0.71

  • omni.kit.xr.ui.config.common: 106.0.50 -> 106.0.71

  • omni.kit.xr.ui.config.generic: 106.0.50 -> 106.0.71

  • omni.kit.xr.ui.config.htcvive: 106.0.50 -> 106.0.71

  • omni.kit.xr.ui.config.magicleap: 106.0.50 -> 106.0.71

  • omni.kit.xr.ui.config.metaquest: 106.0.50 -> 106.0.71

  • omni.kit.xr.ui.stage.common: 106.0.50 -> 106.0.71

  • omni.kit.xr.ui.window.profile: 106.0.50 -> 106.0.71

  • omni.kit.xr.ui.window.viewport: 106.0.50 -> 106.0.71

  • omni.services.pip_archive: 0.13.3 -> 0.13.5

  • omni.services.transport.server.http: 1.3.0 -> 1.3.1

  • omni.usd.fileformat.e57: 1.2.1 -> 1.2.3

  • omni.warehouse_creator: 0.3.5 -> 0.4.0

  • omni.warp: 1.1.0 -> 1.2.1

  • omni.asset_validator.core: 0.11.3 -> 0.11.5

  • omni.kit.converter.cad: 201.0.2 -> 201.1.0-rc.4

  • omni.scene.optimizer.bundle: 106.0.4 -> 106.0.15

  • omni.scene.optimizer.core: 106.0.4 -> 106.0.15

  • omni.scene.optimizer.ui: 106.0.4 -> 106.0.15

  • omni.warp.core: 1.1.0 -> 1.2.1

  • omni.kit.livestream.core: 4.3.5 -> 4.3.6

  • omni.kit.streamsdk.plugins: 4.4.1 -> 4.5.1

Extensions#

  • omni.isaac.asset_browser

    • Changed

      • Update asset paths to 4.1

  • omni.isaac.benchmark.services

    • Added

      • Ability to store custom measurements in a specified phase

  • omni.isaac.benchmarks

    • Changed

      • Remove additional redundant benchmarks now covered by standalone scripts

  • omni.isaac.camera_inspector

    • Fixed

      • Camera Inspector erroring out on creating a new stage

  • omni.isaac.conveyor

    • Removed

      • Forcing Kinematics Body on Conveyor Creation

    • Changed

      • Added Velocity Variable in omnigraph to control the conveyor speed

  • omni.isaac.conveyor.ui

    • Changed

      • Moved the assets source to a configurable setting

      • Moved the config path to a configurable setting

      • Moved the Conveyor Track Builder to UI.

    • Fixed

      • Fixed an edge case when the first conveyor piece is added - to select the second connection point if it’s a multi-connection (so it always goes forward)

  • omni.isaac.core

    • Added

      • Allow find_matching_prim_paths in prim utils to return paths with valid physics APIs applied

      • Added a prim_type argument that supports filtering the prims returned by type: articulation and rigid_body are currently supported.

      • ArticulationView.pause_motion() and ArticulationView.resume_motion() methods

    • Changed

      • Make omni.kit.material.library optional, it must be enabled when using OmniGlass helper class

      • Changed prim_path_expr for XFormPrim, RigidPrimView, ArticulationView, RigidContactView to accept a list of regular expressions.

      • SimulationContext and World classes do not change camera on initialization, set_camera_view must be called separately

    • Fixed

      • Fixed ArticulationController to handle joint indices along with Nan values in the target actions.

      • Fixed passing filter_path_expressions as list of list of str in RigidContactView

      • get_articulation_root_api_prim_path for inputs like `/World/Frank_*` instead of `/World/Franka_.*`

  • omni.isaac.core_nodes

    • Added

      • Add OgnIsaacPassthroughImagePtr node

      • register_node_writer_with_telemetry and register_annotator_from_node_with_telemetry helper functions

    • Fixed

      • ArticulationController Node allowing for multiple types of control

  • omni.isaac.debug_draw

    • Added

      • Added DebugDrawRayCast node to visualize arrays of raycasts

  • omni.isaac.examples

    • Removed

      • Deprecated omni.isaac.dofbot and removed its usage.

    • Changed

      • Base sample calls set_camera_view as it was removed from World/SimulationContext

  • omni.isaac.gain_tuner

    • Fixed

      • Fixed bug where robot with zero-gains causes a math error in trying to take log(0).

  • omni.isaac.kit

    • Added

      • ovd=”/path/to/capture/” argument that simplifies capturing of physics debugging data

    • Changed

      • omni.isaac.version, omni.ui, omni.kit.window.title are not required to use SimulationApp in headless mode

  • omni.isaac.menu

    • Removed

      • Deprecated omni.isaac.dofbot and removed its usage.

  • omni.isaac.motion_generation

    • Removed

      • Deprecated omni.isaac.dofbot and removed its usage.

    • Changed

  • omni.isaac.nucleus

    • Changed

      • Set Cloud assets path as default

      • Updated to 4.1 asset path

      • Updated get root path functions to throw a runtime error if the root path is not found

  • omni.isaac.range_sensor

    • Changed

      • Added deprecation warnings for the physx ultrasonic sensors

  • omni.isaac.range_sensor.ui

    • Fixed

      • missing omni.kit.context_menu dependency

  • omni.isaac.repl

    • Changed

      • Deprecate extension in favor of the vscode extension

  • omni.isaac.robot_description_editor

    • Fixed

      • Fixed behavior of Robot Description Editor for assets with nested link paths.

      • Fixed bug with toggling robot visibility causing an error on STOP.

  • omni.isaac.ros2_bridge

    • Added

      • added a joint state subscriber test where the jointNames are connected

      • OgnIsaacROS2CameraInfoHelper node to generate CameraInfo message with correct rectification parameters for stereo cameras

      • camera_info_utils.py module contains utility functions for generating CameraInfo message

      • Setting publish_multithreading_disabled for toggling ROS2 publishers to publish without multithreading

    • Removed

      • IsaacReadSimulationTime removed from RTXLidarROS2PublishFlatScan, timestamp now comes from OgnIsaacComputeRTXLidarFlatScan.

    • Changed

      • OgnIsaacROS2CameraHelper:sensor_type == camera_info deprecated in favor of OgnIsaacROS2CameraInfoHelper. This node will use camera_info_utils.py module until the functionality is fully removed in a future release.

      • Moved and renamed Navigation example in the menu to under Isaac Examples -> ROS2 -> Navigation -> Carter Navigation

    • Fixed

      • JointState Subscriber fills in nans when receiving empty arrays for command modes that are not used

      • RTX laser_scan topic name in rtx_lidar standalone example

  • omni.isaac.ros_bridge

    • Fixed

      • Crash on twist subscriber node release if it wasn’t run at least one frame

  • omni.isaac.sensor

    • Added

      • Fixed bug with rigid body sleep threshold

      • Setting the rigid body parent sleep threshold to 0 to prevent physics to go to sleep.

      • Setting the contact reporter threshold to 0 to make sure all contacts are reported.

      • OgnIsaacPrintRTXSensorInfo - uses Python bindings to decompose and print GMO struct

      • LightBeam Sensor class that uses raycasts to detect if a beam is broken

      • Omnigraph nodes to read data from this light beam sensor

    • Fixed

      • OgnIsaacComputeRTXLidarFlatScan publishes timestamp of first beam in scan

      • Isaac Sim Lidar profiles omit deprecated fields and include new default fields

      • Default sensor profiles omit deprecated fields and include new default fields

      • Warns when user provides invalid sensor config paths

      • Corrects OgnIsaacComputeRTXLidarFlatScan azimuthRange output to span true min/max azimuth of scan

  • omni.isaac.synthetic_recorder

    • Added

      • Verbose checkbox to print the recorder status (for example, current frame number) to the console

    • Changed

      • Capture loop is now using orhcestrator.step in a loop instead of orchestrator.run guaranteeing that the recorder is always in sync with the simulation (useful if custom or external randomizations are changing the stage)

  • omni.isaac.ui

    • Added

      • Added ability to trigger Button and StateButton clicks programmatically

    • Fixed

      • Fixed scrolling window set_num_lines() function argument type

  • omni.isaac.wheeled_robots

    • Added

      • Ackermann controller class

      • Ackermann controller Omnigraph node

    • Changed

      • Deprecated old OgnAckermann OmniGraph node

  • omni.usd.schema.isaac

    • Added

      • Added lightbeam sensor to Isaac Sensor Schema, bumping version

4.0.0#

General#

  • Based on Kit 106.0 Beta

  • Compatibility Checker app to check Isaac Sim’s system requirements and compatibility

  • VS Code integration (VS Code version of the Script Editor)

  • JupyterLab/Jupyter Notebook integration (Jupyter version of the Script Editor)

  • Install Isaac Sim using a Python package manager such as pip [experimental]

  • Improved Cache/Shader Experience

  • Use EcoMode to reduce GPU consumption when not simulating

  • Performance improvements

Documentation and Workflow Tutorials#

  • Isaac Lab: Migration guide when moving from IGE, OIGE, and Orbit

  • Isaac Lab: Tiled RGB/Depth rendering tutorial

  • Isaac Lab: Cloud-based workflow deployment using Isaac Automator tutorial

  • Assets and Import: OpenUSD Fundamentals

  • Assets and Import: Simulation Fundamentals

  • Assets and Import: Using the unified mesh merging tool

  • Assets and Import: How and where to break articulation loop

  • Assets and Import: Omnigraph Menu shortcuts

  • SDG: Example Snippet: Motion Blur

  • SDG: Example Snippet: Data Access at Custom FPS

  • SDG: Example Randomizer: Physics Based Volume Filling

  • SDG: Custom Replicator OG-based Randomization Nodes

  • SDG: Synthetica Tutorial

  • ROS: ROS 1 to ROS 2 Tutorial. Using the ros1_bridge package for interfacing with Isaac Sim ROS 2 nodes from ROS Noetic.

Isaac Lab#

  • Unified RL platform

  • Open source with BSD-3 license

  • Perf improvements

  • Multi-GPU training based on torch.distributed()

  • Recording capabilities (Animation and video)

  • Tiled RGB/depth rendering with an example

PhysX#

  • Mimic Joint Support

  • Contact Friction Force Reporting

  • Improved Physics Inspector

  • Simulation Data Visualizer

  • Improved Cloning time

  • TGS Solver Per-Iteration Gravity

  • Rigid Body Acceleration Getter

  • Solver Residual Reporting

  • Compliant Contact Update

  • Improved OmniPVD

  • SDF Collision Improvements

Assets / Import#

  • Wizard Guide for how to import robot and tuning process

  • URDF importer: Import sensors from URDF schema

  • URDF importer: Import via ROS 2 robot description

  • New assets:

    • Sensors

      • Sick safety Lidars

      • Ouster OS2, meshes for existing Ouster Lidars (OS0, OS1)

      • Meshes for Velodyne VLS-128

      • Meshes for Sensing cameras and model updates

    • Environments

      • Large empty warehouse

      • Large full warehouse (digital twin)

      • Small warehouse (galileo lab digital twin)

      • Rivermark plaza

    • Robot

      • AgileX Limo Robot and ROS2 drive support

      • Universal Robot UR20

      • Universal Robot UR30

      • Nova Dev Kit

    • Legged Robot

      • Unitree Go2

      • Unitree B2

      • Boston Dynamics Spot

    • Humanoid

      • 1X Neo

      • Unitree H1

      • Agility Digit

      • Fourier Intelligence GR1

      • Sanctuary AI Phoenix

      • XiaoPeng PX5

  • Nova Carter physical dynamics improvements

  • Nova Dev Kit ROS2 support

  • Forklift_b (Crown SP3200) ROS2 support with cameras and Lidars

SDG#

  • Custom writer for Pose estimation

  • COCO writer

Sensors#

  • Enable RTX non-visual materials

  • Radar support

  • Performance improvements to OmniGraph based sensor pipelines

  • IMU sensor backend change to Tensor API

ROS#

  • Performance improvements for image based publishers

  • Support CycloneDDS for Linux

  • Deprecation: ROS and ROS 2 Foxy

  • Improved ROS 2 launch support end-to-end workflow

  • Added ROS 2 Internal Libraries option and ROS 2 sourcing validation within the App Selector

  • Add a QoS for publishers and subscribers

  • Introduced static publisher option for TF publishers

  • Omnigraph node to expose articulation states (joint position, velocity, effort)

  • Generic ROS 2 publisher and subscriber for any available message type

  • Generic ROS 2 service server and client for any available message type

  • ROS 2 service omnigraph node to list prims and their attributes, as well as read and write a specific attribute

  • Render the ROS 2 TF transformation tree in the viewport

  • Publishing the robot description topic

  • Import URDF from ROS 2 publisher

  • Use of system time in all publishers and helper nodes

  • New Common Omnigraph shortcut to auto-generate preset ROS2 Action Graphs.

Manipulation#

  • Enhanced robot description editor for Lula/cuMotion

  • Gains tuning tool for Articulations

  • Full pose (including orientation) support in task-space global planner (JT-RRT)

MetroSim#

  • ORO extension

  • ORA (previously ORC) extension

  • Anim.People extension

cuOpt#

  • cuOpt extension

Extensions#

  • omni.exporter.urdf

    • Added

      • Replace absolute path and uri path options with mesh path prefix option

      • Parse velocity and effort limits from USD and include in URDF

      • Add UsdGeom.Cylinder to error message as one of the valid geom prim types

      • Change to not include camera mesh files when exporting from Isaac Sim extension

      • Add mesh file path char length check

      • Add NodeType.SENSOR and functionality to include sensor frames in the URDF

    • Fixed

      • Fix cylinder radii check

      • Fix checking for duplicate prim names

      • Fix issue with joint limits set to inf for revolute joints, set to continuous joint instead

      • Fix cylinder scaling issue

  • omni.isaac.app.selector

    • Added

      • Added button to clear caches

      • Dropdown to use internal ROS 2 libraries when applicable

      • Warning messages for when ROS 2 bridge is selected and env vars are incorrectly configured

      • Added checkbox to enable eco mode on startup

    • Changed

      • ROS1 bridge and ROS 2 Foxy are marked as deprecated

      • Replace gnome-terminal with x-terminal-emulator to support non-gnome-based desktops

    • Fixed

      • Forward the internal environment variables to support configuring the ROS bridge for x-terminal-emulator

      • Working directory for wrapped gnome-terminal called using x-terminal-emulator

  • omni.isaac.app.setup

    • Added

      • isaac.startup.create_new_stage carb setting to enable/disable stage creation on app startup, enabled by default

  • omni.isaac.articulation_inspector

    • Deprecated

      • Add Deprecation Warning

  • omni.isaac.asset_browser

    • Added

      • Add IsaacLab folder

    • Changed

      • Update asset paths to 4.0

  • omni.isaac.assets_check

    • Changed

      • Updated path to the nucleus extension

  • omni.isaac.benchmark.services

    • Added

      • Ability to enable/disable frametime and runtime separately when starting a phase

      • User can now specify per-benchmark metadata when using BaseIsaacBenchmark, which will persist across phases

      • IsaacStartupTimeRecorder measures startup time, collected only during “startup” phase

      • OsmoKPIFile writer logs KPIs to console.

      • Adds new BaseIsaacBenchmark for non-async benchmarking

      • Adds new standalone examples for non-async benchmarking

      • Adds OsmoKPIFile writer to publish KPIs compatible with OSMO’s Kratos backend

    • Changed

      • Removes dependency on omni.isaac.core_nodes

      • Cleaned up imports

      • OsmoKPIFile backend now prints one KPI file per phase, rather than one KPI file per workflow

    • Fixed

      • Error when zero frames were collected

      • Frametime collector skips frametime collection if start time is None (that is, if set_phase(start_recording_time=False) is called

      • ROS 2 bridge camera helper

  • omni.isaac.benchmark_environments

    • Added

      • Deprecation warning

  • omni.isaac.benchmarks

    • Added

      • Nova Carter ROS 2 benchmark for 3 Nova Carters 1 3d Lidar each for benchmarking multi-robot nav

      • Added 1200p eight cameras benchmark for Hawk cameras

      • Added Nova Carter Benchmarks (non ROS)

    • Removed

      • Removed Carter V1 benchmarks

    • Changed

      • Remove redundant benchmarks that are already covered by standalone scripts

      • Renamed previous Nova Carter Benchmarks to Nova Carter ROS 2

      • Moved helpers from benchmark services extension

  • omni.isaac.block_world

    • New Extension

  • omni.isaac.cloner

    • Changed

      • Updated path to the nucleus extension

      • Support executing cloner on non-context stage

  • omni.isaac.common_includes

    • New Extension

  • omni.isaac.conveyor

    • Removed

      • Unused config file

      • Changelog

  • omni.isaac.conveyor.ui

    • New Extension

  • omni.isaac.core

    • Added

      • Added getting world poses through fabric selections in XFormPrimView through usd=False argument

      • Warning notice for TensorFlow int32 tensor to interoperability function docstrings

      • Friction reporting API to GeometryPrim and GeometryPrimView

      • Friction reporting API

      • Added crash metadata

      • Utility function to get the prim path that has the Articulation Root API

      • Interops utility to convert tensors/arrays between ML frameworks (Warp, PyTorch, JAX, TensorFlow, and NumPy)

    • Changed

      • reset_xform_properties arguments defaults to False instead of True in the prim classes initialization.

      • Get the prim path that has the Articulation Root API when the ArticulationView class is instantiated

      • Changed the find_matching_prim_paths util to a cpp implementation for better perf

      • Update asset paths to 4.0

      • Add examples to docstrings, fix type annotations, and improve description. Affected modules: omni.isaac.core.scenes (scene, scene_registry)

    • Fixed

      • Added deprecation warning for particle cloth

      • numpy.bool deprecation

      • removed the deprecated physX force sensor

      • Fixed get_prim_object_type function in prim utils

      • Check for PhysicsScene USD type to identify whether a physics scene is already defined

      • Always set update to USD flag when fabric is enabled

      • Fix undefined variables when clone=False for force APIs

  • omni.isaac.core_archive

    • Added

      • pyperclip==1.8.0

    • Changed

      • Update Gunicorn to 22.0.0

  • omni.isaac.core_nodes

    • Added

      • Time Splitter node

      • Telemetry for writers and annotators

      • New Isaac Read System Time node to allow users to incorporate latest system time or system time at specified simulation frame (swh frame number)

      • Isaac Get Wold Pose Node

      • Articulation State node

      • Run One Frame Simulation Node

      • Real Time Factor Node

    • Changed

      • Read camera info node no longer accept viewport as input.

      • Moved header files into extension.

      • Removed usePath checkbox from OgnIsaacArticulationController node. Now if the robotPath field is populated, targetPrim is ignored.

      • GUI users won’t notice any behavior changes. Standalone workflow users must ensure any references to usePath in the script is removed.

    • Fixed

      • Reset articulation controller inputs on stop

      • Check for joint indices need to account for the possibility of an array input

      • Update IStageUpdate usage to fix deprecation error

      • Fault with Articulation Controller node when it receives no joint name or indices inputs

      • Bug in Isaac Get Wold Pose Node’s orientation

      • Multi GPU support in RGBA to RGB node

      • Render products not disabling on stop

      • RGBA to RGB node running twice per frame

      • Issue where render product is not cleared when opening a stage

      • Render product resolution and camera prim not updating

      • Camera info issue when path was blank

  • omni.isaac.cortex

    • Added

      • Deprecation tag

    • Changed

      • Updated path to ur10

  • omni.isaac.cortex.sample_behaviors

    • Added

      • Deprecation tag

  • omni.isaac.cortex_sync

    • Added

      • Deprecation tag

  • omni.isaac.debug_draw

    • Changed

      • Moved header files to extension

    • Fixed

      • Update IStageUpdate usage to fix deprecation error

  • omni.isaac.doctest

    • New Extension

  • omni.isaac.dofbot

    • Changed

      • Updated path to the nucleus extension

  • omni.isaac.dynamic_control

    • Changed

      • Extension is deprecated

      • Removed the use of deprecated physX jointSolverForces

      • Moved header files to extension

  • omni.isaac.examples

    • Removed

      • Franka Nut & Bolt Example

    • Fixed

      • Quadruped example to clear callbacks after it’s complete

      • Updated Path Planning Example for compatibility with Lula 0.10.0

  • omni.isaac.examples_nodes

    • Changed

      • Updated omnigraph nodes to use per instance state instead of internal state

  • omni.isaac.extension_templates

    • Fixed

      • Fixed code for handling Articulation selection in Configuration Tooling Template. The issue arose from a change in behavior in Core get_prim_object_type().

      • Fixed code for populating drop-down menu with Articulations in Configuration Tooling Template. This issue arose with Kit behavior changes on stage and timeline events.

  • omni.isaac.gain_tuner

    • New Extension

  • omni.isaac.gym

    • Changed

      • Deprecate extension, use Isaac Lab going forward

      • Get SimulationApp from isaac_sim instead of omni.isaac.kit

    • Fixed

      • Fix livestream for gym with new app for running with livestream

  • omni.isaac.gym.benchmark

    • Removed

      • Removes deprecated function calls from benchmarks.

  • omni.isaac.import_wizard

    • New Extension

  • omni.isaac.jupyter_notebook

    • New Extension

  • omni.isaac.kit

    • Added

      • SIGINT handler to SimulationApp to force exit when ctrl-c is pressed

      • hide_ui to Simulation App to force UI visibility

      • max_gpu_count config argument

    • Changed

      • When headless is set to true, the UI is hidden for performance, hide_ui can be set to false to re-enable the GUI

      • Rename isaac_sim import statement to isaacsim

      • Measures startup time if omni.isaac.benchmark.services is loaded

    • Fixed

      • Missing app icon issue

      • Crash on exit when using tracy

  • omni.isaac.lula

    • Changed

      • Upgraded Lula from release 0.10.0 to 0.10.1. This fixes a bug in the global planner interface introduced in 0.10.0 that caused a fatal error to be logged when a path couldn’t be found.

      • Upgraded Lula from release 0.9.1 to 0.10.0. This new version includes a much-improved collision sphere generator and enhancements to the task-space global planner (JT-RRT), including support for full-pose targets and improved performance. The global planner enhancements entail some parameter changes that break backward compatibility, as does a generalization of the kinematics API to support cases where only a subset of c-space coordinates have acceleration and/or jerk limits.

  • omni.isaac.lula_test_widget

    • Fixed

      • Fixed logic around selecting Articulation on STOP/PLAY given new behavior in Core get_prim_object_type() function.

  • omni.isaac.manipulators

    • Added

      • end_effector_prim_path argument added to the SingleManipulator alongside the end_effector_prim_name

      • Gripper Controller Node

      • automatically populated omnigraph for gripper controller

      • pointer to open up the python script that generates the omnigraph for the menu shortcut graphs

      • a menu item for the extension to allow for populating common controller omnigraphs

      • automatically populated omnigraph for position and velocity controller of any articulation object

    • Changed

      • Extension factored into multiple components. See omni.isaac.manipulators.ui

      • Enabled “add to existing graph” for all the shortcuts

      • Moved all Python code into a Python folder. Deleted omni/isaac/manipulators

  • omni.isaac.manipulators.ui

    • New Extension

  • omni.isaac.menu

    • New Extension

  • omni.isaac.merge_mesh

    • Added

      • Code-Accessible Merge Mesh functionality (API)

      • Merge Command

      • Disable source assets when merging

    • Changed

      • Combine Materials now creates the materials in the provided path if they don’t exist

    • Fixed

      • Fix Broken empty Material binding check

  • omni.isaac.ml_archive

    • Changed

      • removed omni.pip.torch dependency, torch is now directly part of this archive

      • added torch==2.2.2+cu118, torchvision==0.17.2+cu118, torchaudio==2.2.2+cu118, filelock==3.13.4, fsspec==2024.3.1, mpmath==1.3.0, networkx==3.3, sympy==1.12

      • added Nvidia lib pip packages

    • Fixed

      • Make platform specific

  • omni.isaac.motion_generation

    • Added

      • Added acceleration and jerk limits to all robot description files.

      • Added getters for acceleration and jerk limits to Trajectory Generator.

      • Added support for full-pose targets in Lula RRT algorithm.

    • Changed

      • Changed behavior of get_acceleration_limits() and get_jerk_limits() output to track changes in Lula

      • Updated path to UR10

  • omni.isaac.nucleus

    • Changed

      • Updated to 4.0 asset path

      • Reduced timeout

  • omni.isaac.occupancy_map

    • Changed

      • Refactored into components

      • Moved header files to extension

    • Fixed

      • Issues with instanceable assets when using non physx collision mesh option.

      • Cell size not updating based on the current stage units. On stage load the cell size is set to 5cm or 0.05m depending on the units.

  • omni.isaac.occupancy_map.ui

    • New Extension

  • omni.isaac.physics_utilities

    • Fixed

      • Issue when applying collisions to prims that have no points

      • Slow performance when clearing physics apis on large scenes

  • omni.isaac.quadruped

    • Changed

      • Updated unitree folder structure and opt to use unitree models with sensors attached

      • Reduced the frequency of osqp solver from every physics step to every 5 physics steps

      • Contact sensor now uses the interface instead directly of the Python wrapper

  • omni.isaac.range_sensor

    • Changed

      • Extension refactored into multiple components. See omni.isaac.range_sensor.ui and omni.isaac.range_sensor.examples

      • Moved header files to extension

  • omni.isaac.range_sensor.examples

    • New Extension

  • omni.isaac.range_sensor.ui

    • New Extension

  • omni.isaac.robot_assembler

    • Added

      • Added test cases for different placements of Articulation Roots. This creates a matrix of possible configurations to support between two robots being attached.

    • Changed

      • Robot Assembler moves the Articulation Root of the attach robot to the top-level prim in the hierarchy while it is attached, and reverses this on detach.

      • Updated path to the nucleus extension.

    • Fixed

      • Fixed bug where single robot checkbox in UI workflow had no effect when True.

      • Fixed bug with AUTO_CREATE_FRAME miscomputing local poses for rigid bodies.

      • Fixed bug with computing fixed joint transforms to non-root robot links.

      • Fixed bug where collision masking fails when base Articulation has an Articulation root nested under the top-level path.

      • Fixed bug where JointStateAPIs were being overwritten when nesting prims on STOP and then assembling on the first frame of PLAY. The fix is to simply set the values back to zero at the right moment.

      • Fixed bug where attach frames for a robot can include its fixed joint (which causes a failed assembly) when the Articulation Root is on the fixed joint.

      • Fixed bug where Articulation selection function can be called with an invalid prim path and cause a harmless (but visible) error.

      • Fixed bug where robot assembler could not list frames for assets that have Articulation roots on a link in the Articulation.

  • omni.isaac.robot_benchmark

    • Added

      • Deprecation warning

  • omni.isaac.robot_description_editor

    • Added

      • Add support for importing and exporting Curobo XRDF files

      • Add maximum acceleration and jerk properties to Command Panel

    • Fixed

      • Fixed Articulation DropDown population and corresponding extension behavior.

      • Fixed logic around selecting Articulation on STOP/PLAY given new behavior in Core get_prim_object_type() function.

  • omni.isaac.ros2_bridge

    • Added

      • Resetting output of the Twist Subscriber to zeros upon stopping simulation

      • RTX camera and Lidar omnigraph shortcuts uses RunOneSimulationFrame

      • Isaac ROS NITROS Bridge integration for publishing images on Linux

      • Telemetry for writers and annotators

      • Generic Omnigraph ROS client and server nodes

      • Implemented static TF publishing in OgnROS2PublishTransformTree

      • New QoSProfile node to create any preset or custom qos profile to use with ROS 2 Omnigraph nodes

      • QoS Profile inputs to all ROS 2 Publisher, Subscriber, Service Omnigraph nodes

      • A button to open documentation links for OmniGraph shortcuts

      • Add frameSkipCount option to ROS 2 RTX Lidar and Camera Helper Nodes to modify the rate of Lidar and point cloud publishing

      • Added quality of service support for ROS 2 bridge subscribers and publishers

      • Option to use system timestamp for ROS 2 RTX Lidar and ROS 2 Camera Helper Nodes

      • Generic ROS 2 Publisher node

      • Isaac Sim now supports CycloneDDS (Linux ROS 2 Humble only)

      • ROS2 Service Prim node to list prims and their attributes, as well as read and write a specific attribute

      • OG shortcuts to RTX lidar, odometry, tf pub

      • Menu shortcuts to generate ROS Omnigraphs

      • Added ROS2SubscribeTransformTree omnigraph node

      • ROS 2 service

      • Dynamic ROS 2 message for services and actions

      • Carb setting publish_without_verification for toggling ROS 2 publishers to publish regardless of subscription count on a topic

      • Added Show Debug View flag to RTX Lidar Helper

      • Publishers now check to see topic subscription count before filling data and publishing.

    • Changed

      • Foxy support is deprecated

      • Default subscriber topic in ROS 2 jointstate omnigraph shortcut uses /joint_command and not /cmd

      • Fixed Nova Carter multiple robot navigation and Carter Stereo standalone examples from crashing

      • OgnROS2PublishImage does gpu->cpu copy on a separate cuda stream to improve performance

      • Stereo offset input in ROS Camera Info and Helper nodes to accept camera baseline in meters used to compute Tx, Ty.

      • Updated ROS 2 Camera and RTX Lidar unit tests for publishing using system timestamp

      • Improve dynamic message API and add support for JSON data

      • Used IsaacCreateRenderProduct for the camera OG shortcuts

      • Default to enable semanticlabels for some camera topics

      • Improved Image publisher performance

      • Generic ROS 2 Subscriber node

      • Added profile zones for the image publisher

      • ROS 2 Bridge no longer requires the vision_msgs for activation. However, if you would like to use Isaac Sim publishers dependant on vision_msgs, install it on the system or use Isaac Sim internal libraries.

      • Renamed “Isaac Examples > ROS” menu to “Isaac Examples > ROS2”

    • Fixed
      • OgnROS2PublishLaserScan angle inputs now provided in degrees rather than mixed degrees/radians

      • Rclpy loading on Windows

      • Memory leak when ROS 2 libs were not loaded properly

      • Multi GPU support

      • RGB being published twice per frame

      • Missing DLLs for local windows usage

  • omni.isaac.ros2_bridge.robot_description

    • New Extension

  • omni.isaac.ros_bridge

    • Added

      • Resetting output of the Twist Subscriber to zeros upon stopping simulation

      • Telemetry for writers and annotators

      • Add frameSkipCount option to RTX Lidar and Camera Helper Nodes to modify the rate of Lidar and point cloud publishing

      • Option to use system timestamp for RTX Lidar and Camera Helper Nodes

      • Added Show Debug View flag to RTX Lidar Helper

    • Changed

      • Extension is deprecated

      • Updated all ros_comm packages to v1.16.0

      • Stereo offset input in ROS Camera Info and Helper nodes to accept camera baseline in meters used to compute Tx, Ty

      • Updated Camera and RTX Lidar unit tests for publishing using system timestamp

    • Fixed

      • OgnROS1PublishLaserScan angle inputs now provided in degrees rather than mixed degrees/radians

      • Roscore not resetting correctly

      • Multi GPU support

      • RGB being published twice per frame

  • omni.isaac.scene_blox

    • Changed

      • Updated path to the nucleus extension

  • omni.isaac.sensor

    • Added

      • Added get_rgb and get_depth methods to CameraView class returning the data reshaped into camera batches

      • Added get_rgb_tiled and get_depth_tiled methods to CameraView class returning the tiled data

      • Added test_camera_view_sensor.py with golden images for testing get_rgb, get_depth, get_rgb_tiled, and get_depth_tiled methods

      • omni.isaac.sensor.gmo_types module, containing ctypes structures for omni.sensors extension types

      • Added device argument with “cpu” or “cuda” for get_rgba/get_depth functions of camera_view.py

      • Added get_data to camera_view.py returning the raw annotator data

      • Added additional Ouster Lidar configs for OS0, OS1, REV6, REV7, and OS2 Lidars

      • CameraView class for managing multiple cameras and rendering used tiled_sensor from replicator

      • Telemetry for writers and annotators

      • Added Sick sensor config files for multiScan136, multiScan165, picoScan150

      • IsaacComputeRTXLidarFlatScan Node now works with Solid State Lidar.

      • Official version of SICK microscan3 config, and marked old one as legacy.

    • Removed

      • up/downElevationDeg and start/endAzimuthDeg because they are no longer used

      • Deprecated functions: get_sensor_readings, get_sensor_num_readings, get_sensor_sim_readings

      • Sensor visualization. (Please use omnigraph nodes to visualize the sensors)

    • Changed

      • SICK Lidar configs now include rangeOffset parameter

      • Using wpm radar

      • Get radar transform from camera

      • Updated Sensing camera names

      • Removed visualization attributes

      • Deprecated get raw data function

      • Includes RTX nonvisual material support

      • Tensor API support for IMU sensor

      • Changed physics based sensor to be created on play and destroyed on stop

      • Replaced current sensor config files for tim781

      • Changed XT-32 Lidar name from PandarXT-32 to XT-32

      • use intensityScalePercent in IsaacComputeRTXLidarPointCloud if present

      • Location of default and temp Lidar config files set to ${app}/../extsbuild/omni.sensors.nv.common/data/lidar/

      • Replaced internalState with perInstanceState for the ogn nodes

      • Updated path to the nucleus extension

      • Converted read IMU and contact sensor nodes to C++

      • Added read latest data input flag to the read contact sensor node (default to false)

      • Renamed Isaac Read Contact Sensor to Isaac Read Contact Sensor Node

      • Moved header files to extension

    • Fixed

      • OgnROS2PublishLaserScan switches buffer index calculation to use monotonically-increasing integer, fixing bug where floating-point math would occasionally result in buffer never being filled

      • OgnIsaacPrintRTXRadarInfo prints radar info correctly

      • OgnROS2PublishLaserScan publishes correct flat scan

      • buffers are now sorted by azimuth, min -> max

      • Accumulates then publishes full scan, rather than partial scans

      • Output angles now all in degrees, rather than mixed degrees/radians

      • Crash in IsaacComputeRTXRadarPointCloud node

      • incorrect rendervar in RtxSensorCpuIsaacRTXLidarOutput

      • get_rgba() and get_depth() for CameraView class now works for both rgb and depth

      • Account for linear array with depth values being at end

      • Fixed rotating physX Lidar python class initialization issue

      • Rational polynomial camera distortion coefficients will be stored as k1, k2, p1, p2, k3, k4, k5, k6 in the camera schema

      • Fixed invalid IMU sensor crash bug

      • IsaacComputeRTXLidarFlatScan works with CCW Solid State Lidar configs

      • Crash in PrintRTXLidarInfo node

      • Fixed contact sensor threshold bug

      • Multi GPU support

      • Added execOut trigger commands in Read IMU and Contact Sensor nodes to allow attached downstream nodes to tick

      • No longer crash when number of RTX Lidar ticks are out of sync

      • RTX Lidar config parameter nearRangeM < 0.4 was broken. Added minDistBetweenEchos, which also affects the near hits.

  • omni.isaac.surface_gripper

    • Changed

      • Changed Dynamic Control Raycast into Physx scene query raycast.

      • Extension refactored into multiple components. See omni.isaac.surface_gripper.ui.

      • Moved header files to extension

  • omni.isaac.surface_gripper.ui

    • New Extension

  • omni.isaac.synthetic_recorder

    • Added

      • async delayed ui frame build

    • Fixed

      • writing to s3 by using only folder name instead of full path

      • disabled capture on play to fix timeline control issues

      • removed step_async WAR

      • using step_async when num_frames=1

  • omni.isaac.tests

    • Added

      • Tests for the Leatherback robot.

      • Tests for the Create 3 robot.

      • Added NvBlox unit test

      • Added O3Dyn robot rotate unit tests

      • Added unit tests for O3Dyn Robot.

      • Update unit test to use get_assets_root_path_async

      • Added End Effectors menu items back into menu tests

      • Added unit tests for checking the sensor and environment menu items

      • Added writers to the ‘test_randomizer_snippets.py’ isaac replicator randomizers

      • Added automatic loading test for assets under “Robots”

      • Added test for apriltag menu

      • test_forklift_articulations.py for testing drive & lift of Forklift C model

      • test_randomizer_snippets.py containing replicator alternative randomizer examples from the docs

    • Changed

      • Renamed Transporter to iw.hub

      • Updated nvblox tests to match the sample

      • Update tolerances of O3dyn tests

      • Removed the usage of the deprecated dynamic_control extension

      • Changed get_assets_root_path to get_assets_root_path_async for the unit tests

      • Updated unit tests with newer OgnIsaacArticulationController node

      • Modified target angular velocity for the spin test as the old values are above the speed limit

      • Changed carter and drive goal carter unit tests to use the NOVA carter (V2.4) asset

    • Fixed

      • O3dyn Tests

      • Modified jetbot unit tests to not go above its max speed

      • updated tests to renamed nova carter asset

      • test_randomizer_snippets.py to use await instead of ensure_future

  • omni.isaac.tf_viewer

    • New Extension

  • omni.isaac.throttling

    • Added

      • Added on stop play callback to enable/disable eco mode. Pressing play will disable, pressing stop will enable.

  • omni.isaac.ui

    • Added

      • optional tooltip entry for SelectPrimWidget and ParamWidget

      • Added function to trigger user callback manually for DropDown widget.

      • SelectPrimWidget and ParamWidget to simplify populating a popup dialog for collecting parameters.

    • Changed

      • Use action registry in make_menu_item_description by deregistering actions first

      • Updated path to the nucleus extension

    • Fixed

      • Fix bug where XYPlot widget could display the wrong axis values for ragged data.

  • omni.isaac.universal_robots

    • Changed

      • Updated Path to UR10

  • omni.isaac.utils

    • Added

      • New Forklift C asset option under Robots > Forklift

    • Changed

      • Moved menu items to omni.isaac.menu

      • Moved forklift asset under new Robots > Forklift section

      • Renamed forklift asset to Forklift B.

  • omni.isaac.version

    • Added

      • Get the version file path from the ISAAC_PATH environment variable first

      • Validate if the version file exists and returns empty version values if not

  • omni.isaac.vscode

    • New Extension

  • omni.isaac.wheeled_robots

    • Added

      • unit test for robot reset using jetbot

      • Added acceleration restraints to differential controller

      • Reset test for holonomic controller

      • a menu item for the extension to allow for populating common controller omnigraphs

      • automatically populated omnigraph for controlling a differential robot

    • Changed

      • Changed desired velocity input name from velocityCommands to inputVelocity to fix a type not match issue

      • Extension refactored into separate components. See omni.isaac.wheeled_robots.ui for UI components of the extension.
        • added ability to open python script in the popup dialog for omnigraph shortcuts

      • extension refactored into multiple components

      • Replaced internalState with perInstanceState for python ogn nodes

      • All custom_reset function in directly set the node using OG API

      • Replaced internalState with perInstanceState for the ogn nodes

      • Refactored wheeled robots extension to use carb plugin and support Cpp code

      • Rewrote differential controller node in Cpp

      • Removed unused outputs for position and effort control

    • Fixed

      • Crash on differential controller reset

      • Updated description in Ackermann Steering node

  • omni.isaac.wheeled_robots.ui

    • New Extension

  • omni.kit.loop-isaac

    • Changed

      • Moved header files to extension

  • omni.kit.property.isaac

    • Fixed

      • Prim Custom Data field can support nested objects (dictionaries) now

  • omni.pip.cloud

    • Changed

      • Replace pypiwin32==223 with pywin32==306

      • Update cryptography to 42.0.7

      • update typing extensions to typing_extensions==4.10.0

    • Fixed

      • Manually add paths for pywintypes import

  • omni.pip.compute

    • Added

      • opencv-python-headless==4.9.0.80

    • Fixed

      • Missing windows dlls

  • omni.replicator.isaac

    • Added

      • Custom replicator randomization nodes

      • Telemetry for writers and annotators

      • Function to approximate truncation of object based on comparing 3D bounding box with visible portion on screen

      • DOPE and CenterPose now output truncation value in addition to visibility

      • Add support for CenterPose and Dope to generic PoseWriter class

      • Added a generic pose writer

      • Added support for RtxSensorGpu and RtxSensorCpu aovs in`pytorch_writer` to support tiled RTX Sensor.

    • Changed

      • re-enable s3 writing functionality for PoseWriter

      • Include more information for DOPE output annotations

      • PoseWriter restructuring

      • Updated omnigraph nodes to use per instance state instead of internal state

    • Fixed

      • Pose writer fixes for assets with origin not at the center of the bounds

  • omni.usd.schema.isaac

    • Changed

      • Removed omni.usd.schema.physics dependency

2023.1.1#

Highlights#

  • General

    • Kit SDK 105.1.2

    • WebSocket live-streaming will be removed in the next version of Isaac Sim

    • Replicator Composer will be removed in the next version of Isaac Sim

    • omni.isaac.synthetic_utils will be removed in the next version of Isaac Sim in favor of omni.replicator

    • omni.isaac.shapenet will be removed in the next version of Isaac Sim

    • omni.isaac.urdf will be removed in the next version of Isaac Sim in favor of omni.importer.urdf

    • Fixes for security vulnerabilities

    • Added collider compatibility table

    • Added Joint gains tuning guide

  • New Robots
    • Added Franka Research 3 (FR3) manipulator

    • Renamed Carter V24 to Nova Carter

  • Sensors
    • RTX Lidar has corrected some outputs, including objectId, velocity and hitPointNormal

  • Isaac Core
    • Fix for USD joint sign convention used in joint limits, joint target positions/velocities, joint forces, etc;

      • If the arrangement of USD joint bodies (body0/body1) isn’t similar to the underlying physics kinematic tree hierarchy (parent/child), scalar properties undergo a sign inversion. Notably, for joint forces, a transformation is applied to ensure reporting in the USD joint body1 frame.

      • It is important to note that this adjustment may impact the behavior of existing user assets, particularly in cases where warnings related to the incorrect ordering of USD joint bodies have been overlooked.

    • Added get_assets_root_path_async()

    • Added On Physics Step node

  • ROS
    • Added ROS1 and ROS2 AckermannDriveStamped publisher and subscriber nodes

    • New ROS1/ROS2 Clock publisher and subscriber tutorials

  • Replicator
    • Added DataVisualizationWriter example writer to omni.replicator.isaac to write labeled annotator data to disk

    • Added custom event trigger example to Replicator → Useful Snippets

  • Gym
    • Added support for viewport recording during training/inferencing using gym wrapper class RecordVideo

    • Added video tutorial for extension workflow

    • Minor bug fixes and cleanup in OmniIsaacGymEnvs

  • Metro Sim (People, ORC, ORO)
    • First release of the Omni.Replicator.Character extension suite.

      • Designed to generate synthetic data across a variety of environments. It provides controls over environments, cameras, agents through the use of configuration and command files.

    • First release of the omni.replicator.object extension.

      • Description file based object simulation. Cameras, lights and geometry are defined as mutables that randomize per frame, while harmonizers are defined to coordinate randomization, and settings are supported to configure the simulation enviroment.

      • Added
        • Bin pack harmonizer. When using it to harmonize a transform operator, users can pack a group of objects to a cuboid with user-specified size.

        • Mutable shader attributes for a geometry. This is a mutable attribute that allows mutation of shader attributes, e.g. texture rotations.

        • Setting to exclude occluded objects by a threshold.

        • Tutorial/test USD models.

      • Fixed
        • Support for concave objects in container.

Extensions#

  • omni.exporter.urdf

    • Added

      • Exporting sensor prim frames to URDF

      • Ability to set mesh path prefix

      • Optionally setting output to directory (URDF file name automatically set to match USD file name)

    • Fixed

      • Scaling bug when geometry prim is a child of Xform prim with scaling

      • Cylinder scaling issue

      • Joint frame alignment when child link transform is not identity

      • Exporting revolute joints with inf limits, export as continuous joints now

      • Too many root links

      • Velocity and effort limits always being set to zero

      • Large camera meshes added erroneously to URDF

      • Terminal output labeled as error even when export is successful

  • omni.isaac.asset_browser

    • Changed

      • Fix missing default icon

      • Update based on omni.kit.browser.asset-1.3.7

      • Update asset paths to 2023.1.1

  • omni.isaac.assets_check

    • Changed

      • Use get_assets_root_path_async()

  • omni.isaac.cloner

    • Fixed

      • Fixed error with GridCloner when offsets are passed

      • Add test case with position and orientation offsets for GridCloner

      • Fixed the order in which xformop is set while cloning. Earlier a set was passed instead of list.

  • omni.isaac.conveyor

    • Fixed

      • Error when Node starts for the first time if it doesn’t have a Texture translate attribute.

  • omni.isaac.core

    • Added

      • set_block_on_render and get_block_on_render to control waitIdle flag

      • added rot_matrices_to_quats method to torch utils

      • test for get_joint_position in test_articulation to catch the sign switch that happens when articulation joints have different body0 and body1 than expected.

    • Changed

      • Add more articulation metadata

      • Fix contact reporter API schema

      • Fix joint limits

      • Add examples to docstrings, fix type annotations, and improve description. Affected modules: omni.isaac.core.world (world) and omni.isaac.core.simulation_context (simulation_context)

      • Add get_assets_root_path_async()

      • Add get_full_asset_path_async()

      • Add get_server_path_async()

      • /app/runLoops/main/rateLimitEnabled in standalone workflow will be set to False

      • Apply codespell to fix common misspellings and typos

      • Add examples to docstrings, fix type annotations, and improve description. Affected modules: omni.isaac.core.objects (capsule, cone, cuboid, cylinder, sphere, ground_plane)

      • Add examples to docstrings, fix type annotations, and improve description. Affected modules: omni.isaac.core.prims (xform_prim, xform_prim_view, rigid_prim, rigid_prim_view, rigid_contact_view, geometry_prim, geometry_prim_view, base_sensor)

      • Add examples to docstrings, fix type annotations, and improve description. Affected modules: omni.isaac.core.articulations (articulation, articulation_view) and omni.isaac.core.robots (robot, robot_view)

      • Removed create_hydra_texture; use rep.create.render_product from omni.replicator.core instead.

      • Add examples to docstrings, fix type annotations, and improve description. Affected modules: omni.isaac.core.utils (bounds, carb, constants, extension, mesh, physics, prim, stage)

      • Update asset paths to 2023.1.1

    • Fixed

      • set_live_sync method

      • quats_to_rot_matrices under torch utils to handle 1 dimensional input and batched

      • pad method under torch utils

      • Forward the density parameter to the RigidPrimView instance in RigidPrim class constructor

      • Fix argument typo when applying a physics material to a ground plane object

      • Add missing worker thread parsing from sim config

      • Fix indices used to set the GeometryPrimView collision API properties

      • Fix the indices comparison that prevented applying several physical materials to a GeometryPrimView object

      • Use articulation view metadata to get DOF types given specific DOF names

      • Remove unexpected keyword argument when printing the stage via the stage utils

      • renamed utils.torch.rotations quat_to_rot_matrices to quats_to_rot_matrices to be consistent with numpy, originally named function is now a redirect function

  • omni.isaac.core_nodes

    • Added

      • On Physics Step Node

    • Fixed

      • Annotator unit test due to replicator update

  • omni.isaac.debug_draw

    • Added

      • Check for valid prim path, so the debug drawing nodes will issue an error instead of crash with invalid path

  • omni.isaac.dofbot

    • Changed

      • switched gripper deltas them because of a change in physX regarding flipped signs.

  • omni.isaac.dynamic_control

    • Fixed

      • Issue with prim getting removed at random

  • omni.isaac.examples

    • Changed

      • Force stop bin filling once gripper constraint breaks

      • Add small force to induce gripper breaking if it doesn’t happen on bin pieces falling

      • Increase quadruped example physics rate to 400hz

    • Fixed

      • Fixed issue with screwing in nut and bolt demo

      • Improved accuracy of placement and rotation and increased rotation speed

      • Moved nut screwing to start with 3rd nut with slight improvement to centering

  • omni.isaac.gym

    • Added

      • Add APIs for recording viewport during training

    • Changed

      • Improve test coverage

      • Update outdated MT tests to use extension workflow

  • omni.isaac.kit

    • Changed

      • Set /app/player/useFixedTimeStepping to False since the loop runner controls stepping

    • Fixed

      • set_live_sync method

  • omni.isaac.motion_generation

    • Added

      • Add RMPflow configs for FR3 robot

    • Changed

      • Moved wheel base pose controller to wheeled robots extension

  • omni.isaac.occupancy_map

    • Fixed

      • Updated api docs to mention correct return types.

  • omni.isaac.ocs2

    • Changed

      • Disable tests in docker

  • omni.isaac.quadruped

    • Changed

      • Added torque clamp to the quadruped control in response to physics change

      • Behavior changed, investigating performance issue

    • Fixed

      • Add the missing import statement for the IMUSensor

  • omni.isaac.range_sensor

    • Fixed

      • Issue where ReadLidar nodes ticking twice on the same set of data if run twice per frame

  • omni.isaac.robot_assembler

    • Fixed

      • Fixed breaking test cases that loaded local USD assets with references to robots on Nucleus

  • omni.isaac.ros2_bridge

    • Added

      • ROS2 Ackermann Subscriber and Publisher nodes using non-default ROS2 AckermannDriveStamped message type.

      • Option to publish a full scan from RTX lidar

      • APIs to dynamically load ROS2 libraries at runtime depending on what messages are being created. Will only be used for select non-default ROS 2 messages.

    • Fixed

      • Removed conflicting TF Publishers from standalone ROS2 Moveit tutorial

      • Queue Size (QOS depth) settings now enforced when creating subscriber nodes.

      • Added unit tests for variable queue sizes in subscribers

  • omni.isaac.ros_bridge

    • Added

      • ROS1 Ackermann Subscriber and Publisher nodes

      • Option to publish a full scan from RTX lidar

  • omni.isaac.sensor

    • Added

      • ZED X sensor to menu item

    • Changed

      • IsaacCreateRTXLidarScanBuffer transformPoints defaults to false

      • RtxSensorCpuIsaacCreateRTXLidarScanBuffer doTransform defaults to true

    • Fixed

      • Issue where ReadLidar nodes ticking twice on the same set of data if run twice per frame

      • aperture setters and getters in Camera.py

      • Camera Matrix calculation in set_matching_fisheye_polynomial_properties method in Camera.py

      • Camera class to work with torch backend

      • Contact Sensor can now measure force correctly when the rigid body is not its direct parent

  • omni.isaac.surface_gripper

    • Changed

      • Location on the Menu reverted back to from Create->Isaac->End Effector

      • Location on the Menu changed from Create->Isaac->End Effector to Create->Isaac->Robot.

  • omni.isaac.synthetic_recorder

    • Changed

      • removed overwrite/increment/timestamp options from recorder, it is now handled by the backend which is not exposed

    • Fixed

      • fixed bug if a non valid json file is provided to the custom writer

  • omni.isaac.synthetic_utils

    • Changed

      • disabling unit tests that are failing due to deprecated interfaces

  • omni.isaac.universal_robots

    • Added

      • Random piece orientation on drop

    • Changed

      • Minor tweaks in bin filling position so pieces don’t hit robot when falling

  • omni.isaac.urdf

    • Changed

      • Added deprecation alert. This extension has been deprecated, please use omni.importer.urdf instead.

  • omni.isaac.utils

    • Changed

      • Removed Factory Franka

    • Fixed

      • April tag menu

      • Loading Robotiq hand into a path that doesn’t start with a number

  • omni.isaac.wheeled_robots

    • Changed

      • OgnAckermannSteering node receives inputs in SI units.

      • OgnAckermannSteering node now accepts speed and acceleration as desired forward motion inputs.

      • OgnAckermannSteering node uses front axel steering angle as input rather than curvature

      • Moved wheel base pose controller from motion generation extension

    • Fixed

      • _wheeled_dof_indices vs _wheel_dof_indices typo

  • omni.kit.property.isaac

    • Changed

      • Prim Custom Data field can support arrays now

  • omni.replicator.isaac

    • Added

      • DataVisualizationWriter writing annotations as overlays on top of image data

      • DOPE and YCBWriter will write to disk only if there is valid data (target(s) is not fully occluded in view)

    • Fixed

      • Change initialization of s3 BackendDispatch for DOPE writer

      • Added overwrite=True by default to DOPE and YCV Writer backends

      • DataVisualizationWriter parameters if None and writer metadata export

2023.1.0-hotfix.1#

Highlights#

  • General

    • Fixes for security vulnerabilities

Extensions#

  • omni.isaac.examples

    • Fixed

      • Changed end offector offset for Franka Stacking Controller in robo party example to [0, 0, 0] instead of [0, 0, -0.015]

  • omni.isaac.ros2_bridge

    • Fixed

      • Added fix for foxy backend to match humble backend

  • omni.isaac.ros_bridge

    • Fixed

      • Logging levels for roscore helper

  • omni.isaac.ui

    • Fixed

      • Error when user setup function creates a new stage

      • Error when using load button due to physics context initialization issue

  • omni.kit.loop-isaac

    • Changed

      • Update to latest loop runner code from kit-sdk and set default settings