How to set the properties of RTX Sensor Annotators in IsaacSim5.0?

Isaac Sim Version

☑ 5.0.0
4.5.0
4.2.0
4.1.0
4.0.0
4.5.0
2023.1.1
2023.1.0-hotfix.1
Other (please specify):

Operating System

☑ Ubuntu 22.04
Ubuntu 20.04
Windows 11
Windows 10
Other (please specify):

GPU Information

  • Model: RTX 4090
  • Driver Version: 550.120

Topic Description

Detailed Description

Firstly:

  • I am creating a RTXlidar using omni.kit.commands.execute,

    https://docs.isaacsim.omniverse.nvidia.com/latest/sensors/isaacsim_sensors_rtx_annotators.html

    I’d like to know how to set the properties of an annotators in isaacsim5.0 after creating one, such as the intensity and timestamp in IsaacExtractRTXSensorPointCloudNoAccumulator. I haven’t found any relevant examples.

    When using isaacsim4.5, I set these parameters when initializing annotators,

    lidar_config = "Hesai_XT32_SD10"
    _, sensor = omni.kit.commands.execute(
        "IsaacSensorCreateRtxLidar",
        path="/lidar",
        parent="/World/h1/imu_link",
        config=lidar_config,
        translation=(0.2, 0, 0.2),
        orientation=Gf.Quatd(1,0,0,0),
    )
    render_product = rep.create.render_product(sensor.GetPath(), [1, 1])
    
    lidar = rep.AnnotatorRegistry.get_annotator("RtxSensorCpuIsaacCreateRTXLidarScanBuffer")
    lidar.initialize(outputTimestamp=True, transformPoints=False)
    lidar.attach(render_product)
    

    but I always get an error in version 5.0.

    _, sensor = omni.kit.commands.execute(
        "IsaacSensorCreateRtxLidar",
        path="/sensor",
        parent="/World/h1/imu_link",
        config="Example_Rotary",
        translation=(0, 0, 1.0),
        orientation=Gf.Quatd(1.0, 0.0, 0.0, 0.0),  # Gf.Quatd is w,i,j,k
    )
    
    # RTX sensors are cameras and must be assigned to their own render product
    hydra_texture = rep.create.render_product(sensor.GetPath(), [1, 1], name="Isaac")
    lidar=rep.AnnotatorRegistry.get_annotator("IsaacExtractRTXSensorPointCloudNoAccumulator")
    lidar.initialize(outputTimestamp=True)
    
    lidar.attach(hydra_texture)
    

    Error is:

    2025-08-15T02:49:18Z [38,865ms] [Error] [omni.kit.app._impl] [py stderr]: Traceback (most recent call last):
    2025-08-15T02:49:18Z [38,865ms] [Error] [omni.kit.app._impl] [py stderr]:   File "/media/nav1/DATA4/isaacsim50_work/H1_sim50/entry50.py", line 85, in <module>
    2025-08-15T02:49:18Z [38,865ms] [Error] [omni.kit.app._impl] [py stderr]:     lidar.attach(hydra_texture)
    2025-08-15T02:49:18Z [38,865ms] [Error] [omni.kit.app._impl] [py stderr]:   File "/media/nav1/DATA4/isaacsim50_work/isaacsim/_build/linux-x86_64/release/extscache/omni.replicator.core-1.12.10+107.3.0.lx64.r.cp311/omni/replicator/core/scripts/annotators.py", line 607, in attach
    2025-08-15T02:49:18Z [38,875ms] [Error] [omni.kit.app._impl] [py stderr]:     activated_result = sdg_iface.activate_node_template(
    2025-08-15T02:49:18Z [38,875ms] [Error] [omni.kit.app._impl] [py stderr]:                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    2025-08-15T02:49:18Z [38,875ms] [Error] [omni.kit.app._impl] [py stderr]:   File "/media/nav1/DATA4/isaacsim50_work/isaacsim/_build/linux-x86_64/release/extscache/omni.syntheticdata-0.6.13+b0a86421.lx64.r.cp311/omni/syntheticdata/scripts/SyntheticData.py", line 1608, in activate_node_template
    2025-08-15T02:49:18Z [38,875ms] [Error] [omni.kit.app._impl] [py stderr]:     self._set_node_attributes(node_path, attributes)
    2025-08-15T02:49:18Z [38,875ms] [Error] [omni.kit.app._impl] [py stderr]:   File "/media/nav1/DATA4/isaacsim50_work/isaacsim/_build/linux-x86_64/release/extscache/omni.syntheticdata-0.6.13+b0a86421.lx64.r.cp311/omni/syntheticdata/scripts/SyntheticData.py", line 1488, in _set_node_attributes
    2025-08-15T02:49:18Z [38,876ms] [Error] [omni.kit.app._impl] [py stderr]:     raise SyntheticDataException(f"invalid node attribute {nodePath}.{attrName}")
    2025-08-15T02:49:18Z [38,876ms] [Error] [omni.kit.app._impl] [py stderr]: omni.syntheticdata.scripts.SyntheticData.SyntheticDataException: invalid node attribute /Render/PostProcess/SDGPipeline/Isaac_IsaacExtractRTXSensorPointCloudNoAccumulator.inputs:outputTimestamp
    

Secondly:

When I use

_, sensor = omni.kit.commands.execute(
    "IsaacSensorCreateRtxLidar",
    path="/sensor",
    parent="/World/h1/imu_link",
    config="Example_Rotary",
    translation=(0, 0, 1.0),
    orientation=Gf.Quatd(1.0, 0.0, 0.0, 0.0),  # Gf.Quatd is w,i,j,k
)

# RTX sensors are cameras and must be assigned to their own render product
hydra_texture = rep.create.render_product(sensor.GetPath(), [1, 1], name="Isaac")
lidar = rep.AnnotatorRegistry.get_annotator("IsaacExtractRTXSensorPointCloudNoAccumulator")
lidar.initialize()

lidar.attach(hydra_texture)

simulation_app.update()
while simulation_app.is_running():
    my_world.step(render=True)
    if my_world.is_stopped():
        reset_needed = True
    if my_world.is_playing():
        print(lidar.get_data())
        print("running...")
simulation_app.close()

to create an RTXLidar in IsaacSim 5.0, and then use the get_data() method to get the data, the data field in the result dictionary is all 0. What is the problem? I am using the Simple_Warehouse/warehouse.usd asset.