Custom Drone SITL Problem

I am working on a custom hexacopter model in PX4 SITL using Gazebo Classic, and I am using the Typhoon H480 as a reference for my design and configuration. The drone arms perfectly without any issues, but as soon as I try to take off, it flips immediately. I have carefully checked all motor directions (CW/CCW), and they are correct. I have also used appropriate motor constants and ensured that sufficient thrust is generated for a heavy drone (~20 kg), similar to real heavy-lift drone motors. Despite this, during simulation the drone becomes unstable, shows strong oscillations, and cannot hold position, especially in the X-Y directions. The control response is abnormal, with stick inputs causing unpredictable motion or excessive tilting. Although the motors spin and sometimes generate lift, the overall behavior is not stable and the drone is very difficult to control.

Hi there!
Did I understand correctly: You took a light drone, and made it much heavier?
The you also need to account for that in the vehicle tuning. Your issue sounds very much like a tuning issue

Hi, thanks for your response!

No, I did not take a light drone and simply increase its mass. I created my model from a 3D CAD design, and from that I generated the SDF file. In my case, the drone is defined as a ~20 kg model from the beginning itself, including its mass and inertia properties.

For actuation, I added the motor plugin using the configuration from the Typhoon H480, since it is also based on a hexacopter (X) configuration. I also used realistic motor parameters suitable for heavy-lift drones, so the thrust should be sufficient for the given weight.

Because of this, I believe the issue may not be simply due to scaling or basic tuning, but possibly something related to configuration, control allocation, or simulation setup.

I dont see that you have addressed the issue raised by Nitro. What is the point of posting a question if you’re not going to listen carefully to replies ?