Drone simulation in Isaac Sim 4.5.0

Hi, I’m new in Isaac Sim. I’m working on a project that consist in a drone simulation with some cameras, controlling drone and cameras with ROS2. When the simulation is running, the drone’s rotors start to move, but it don’t fly even if the speed increases.

I was searching on internet to search information, but there’s nothing useful about drones in this version (or I don’t find it). Recently I found Pegasus Simulator, that should fix my problem, but Isaac Sim 4.5.0 is not suported and the extensions brings me a lot of errors.

Could anyone tell me something about drone simulation and how to run it??

Isaac Sim Version

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):

I’m uncertain if @marcelo.jacinto, the developer of Pegasus Simulator, would be able to assist with this specific issue.

I was just starting to work on an update for version 4.5.0 as this message dropped. I still do not have a concrete timeline on how long it is going to take, but version 4.2.0 should work.

I will try to be quick.

Thanks for your response @marcelo.jacinto. Could you tell me if there is another way to simulate drones while the Pegasus Simulator for Isaac Sim 4.5.0 is not ready? For now, I’m going to try to install Isaac Sim 4.2.0 to test how it works.

It would be very helpful if you could tell me some type of documentation that I can read to carry out the simulation, since my final degree project consists of that simulation. Thanks in advance.

Can you try to use the dev_4.5.0 branch? There is still stuff that is not functional, and you will get some warnings, but I got this branch to run example1 on my computer. The people example is broken and the ros2 interface is also no loading properly. I need to fix those. The PX4 interface should be working with a warning on the heartbeat.

An alternative is to download version 4.2.0 from the isaac sim website:
https://download.isaacsim.omniverse.nvidia.com/isaac-sim-standalone%404.2.0-rc.18%2Brelease.16044.3b2ed111.gl.linux-x86_64.release.zip

This version should work “well” hopefully :)

Yet another alternative is to use gazebo. I have some documentation on my system on how to use it either IsaacSim or gazebo classic:

Hi, can you help me? When I select ardupilot (using the dev version for Isaacs 4.5), the following errors occur when adding a copter:

2025-05-14 10:31:39 [504,732ms] [Warning] [pegasus.simulator.ui.ui_delegate] Ardupilot backend selected.
2025-05-14 10:31:39 [504,811ms] [Error] [asyncio] Task exception was never retrieved
future: <Task finished name='Task-247' coro=<UIDelegate.on_load_vehicle.<locals>.async_load_vehicle() done, defined at /home/robot/PegasusSimulator/extensions/pegasus.simulator/pegasus/simulator/ui/ui_delegate.py:206> exception=Exception('frequency of the camera sensor needs to be a divisible by the rendering frequency.')>
Traceback (most recent call last):
  File "/home/robot/PegasusSimulator/extensions/pegasus.simulator/pegasus/simulator/ui/ui_delegate.py", line 293, in async_load_vehicle
    Multirotor(
  File "/home/robot/PegasusSimulator/extensions/pegasus.simulator/pegasus/simulator/logic/vehicles/multirotor.py", line 91, in __init__
    super().__init__(stage_prefix, usd_file, init_pos, init_orientation, config.sensors, config.graphical_sensors, config.graphs, config.backends)
  File "/home/robot/PegasusSimulator/extensions/pegasus.simulator/pegasus/simulator/logic/vehicles/vehicle.py", line 141, in __init__
    graphical_sensor.initialize(self)
  File "/home/robot/PegasusSimulator/extensions/pegasus.simulator/pegasus/simulator/logic/graphical_sensors/monocular_camera.py", line 85, in initialize
    self._camera = Camera(
  File "/home/robot/isaacsim/exts/isaacsim.sensors.camera/isaacsim/sensors/camera/camera.py", line 188, in __init__
    self.set_frequency(frequency)
  File "/home/robot/isaacsim/exts/isaacsim.sensors.camera/isaacsim/sensors/camera/camera.py", line 324, in set_frequency
    raise Exception("frequency of the camera sensor needs to be a divisible by the rendering frequency.")
Exception: frequency of the camera sensor needs to be a divisible by the rendering frequency.
2025-05-14 10:31:39 [504,811ms] [Error] [omni.kit.app._impl] [py stderr]: Exception ignored in: <function Camera.__del__ at 0x70fe6999d990>
2025-05-14 10:31:39 [504,811ms] [Error] [omni.kit.app._impl] [py stderr]: Traceback (most recent call last):
2025-05-14 10:31:39 [504,811ms] [Error] [omni.kit.app._impl] [py stderr]:   File "/home/robot/isaacsim/exts/isaacsim.sensors.camera/isaacsim/sensors/camera/camera.py", line 291, in __del__
2025-05-14 10:31:39 [504,811ms] [Error] [omni.kit.app._impl] [py stderr]:     for annotator in self.supported_annotators:
2025-05-14 10:31:39 [504,811ms] [Error] [omni.kit.app._impl] [py stderr]:   File "/home/robot/isaacsim/exts/isaacsim.sensors.camera/isaacsim/sensors/camera/camera.py", line 302, in supported_annotators
2025-05-14 10:31:39 [504,811ms] [Error] [omni.kit.app._impl] [py stderr]:     return self._supported_annotators
2025-05-14 10:31:39 [504,812ms] [Error] [omni.kit.app._impl] [py stderr]: AttributeError: 'Camera' object has no attribute '_supported_annotators'

And when running the simulation, these errors occur::

2025-05-14 10:38:12 [898,300ms] [Error] [omni.kit.app._impl] [py stderr]: Traceback (most recent call last):
2025-05-14 10:38:12 [898,300ms] [Error] [omni.kit.app._impl] [py stderr]:   File "/home/robot/PegasusSimulator/extensions/pegasus.simulator/pegasus/simulator/logic/vehicles/multirotor.py", line 119, in update
2025-05-14 10:38:12 [898,300ms] [Error] [omni.kit.app._impl] [py stderr]:     if len(self._backends) != 0:
2025-05-14 10:38:12 [898,300ms] [Error] [omni.kit.app._impl] [py stderr]: AttributeError: 'Multirotor' object has no attribute '_backends'. Did you mean: '_backend'?
2025-05-14 10:38:12 [898,300ms] [Error] [omni.kit.app._impl] [py stderr]: Traceback (most recent call last):
2025-05-14 10:38:12 [898,300ms] [Error] [omni.kit.app._impl] [py stderr]:   File "/home/robot/PegasusSimulator/extensions/pegasus.simulator/pegasus/simulator/logic/vehicles/vehicle.py", line 375, in update_sensors
2025-05-14 10:38:12 [898,301ms] [Error] [omni.kit.app._impl] [py stderr]:     for backend in self._backends:
2025-05-14 10:38:12 [898,301ms] [Error] [omni.kit.app._impl] [py stderr]: AttributeError: 'Multirotor' object has no attribute '_backends'. Did you mean: '_backend'?
2025-05-14 10:38:12 [898,310ms] [Error] [omni.kit.app._impl] [py stderr]: Traceback (most recent call last):
2025-05-14 10:38:12 [898,310ms] [Error] [omni.kit.app._impl] [py stderr]:   File "/home/robot/PegasusSimulator/extensions/pegasus.simulator/pegasus/simulator/logic/vehicles/vehicle.py", line 245, in sim_start_stop

How can this be fixed?

UPD
I fixed it, but now I have this problem when the simulation starts and the map window doesn’t appear. How can I fix this?

025-05-14 13:31:10 [120,775ms] [Error] [omni.kit.app._impl] [py stderr]: Traceback (most recent call last):
2025-05-14 13:31:10 [120,775ms] [Error] [omni.kit.app._impl] [py stderr]:   File "/home/robot/PegasusSimulator/extensions/pegasus.simulator/pegasus/simulator/logic/vehicles/multirotor.py", line 148, in update
2025-05-14 13:31:10 [120,776ms] [Error] [omni.kit.app._impl] [py stderr]:     backend.update(dt)
2025-05-14 13:31:10 [120,776ms] [Error] [omni.kit.app._impl] [py stderr]:   File "/home/robot/PegasusSimulator/extensions/pegasus.simulator/pegasus/simulator/logic/backends/ardupilot_mavlink_backend.py", line 633, in update
2025-05-14 13:31:10 [120,776ms] [Error] [omni.kit.app._impl] [py stderr]:     _, servos =self.ap.pre_update(
2025-05-14 13:31:10 [120,776ms] [Error] [omni.kit.app._impl] [py stderr]: AttributeError: 'ArduPilotMavlinkBackend' object has no attribute 'ap'