-
Notifications
You must be signed in to change notification settings - Fork 34
Simulator
ArduDeck's SITL panel launches a live 3D world you can fly in before you risk a real airframe, arm, fly a mission, break something on purpose, and land, all without spinning a real prop. You get a choice of what drives the physics: ArduPilot's own model, or ArduDeck's own physics engine built specifically for heavy-lift multirotors.
Open the SITL Simulator tab and, in the Physics & Frame card, click Start SITL & Open 3D World. This starts SITL, connects ArduDeck to it, and pops out the 3D world window. If SITL is already running, the same button just opens the window.
The Physics engine toggle in the same card switches what actually computes the flight:
- Built-in uses ArduPilot's own SITL model, the standard, well-tested physics every ArduPilot developer relies on.
-
ArduDeck engine is a physics engine we built specifically for heavy-lift work. It starts from a faithful port of ArduPilot's own motor and frame math, so it flies the same, and adds what the built-in model does not model at all:
- A slung payload that actually swings on its cable and pulls back on the airframe, not just added weight.
- Live motor and sensor failures, injected mid-flight and felt by the airframe in real time.
- Ground effect, terrain, and wind that genuinely push the aircraft around, not a flat plane and a single wind vector.
- Rotor wash between vehicles when flying a formation, so a wingman sagging in a leader's downwash is something you can actually see in the sim.
The ArduDeck engine needs a custom frame selected under Custom Frame Physics; the heavy-lift templates (Callisto-class octa, industrial 14S octa) are ready to fly out of the box. It is copter-only today; plane and rover still fly on the built-in model.
The Test Conditions panel (drag its header to move it) adapts to whichever physics is driving the sim.

Motors. With the ArduDeck engine active, this section draws your frame's actual motor layout, each arm numbered with its real spin direction, so you can see at a glance which motors sit opposite each other. Click an arm to fail that motor and watch the prop go dead in the 3D world. Pick from six failure kinds (motor out, thrust loss, vibration, ESC brownout, bearing drag, asymmetric drag) and how severe, then clear them all with one button. With the built-in model, the same section drives ArduPilot's own SIM_ENGINE_FAIL parameter instead.
Payload. Engine-only. Set a mass and cable length and click Attach load to hang it mid-flight, no restart needed. Lower, hold, or raise it with the winch buttons, or Release it outright. Live cable length, tension, and altitude read back from the sim as you fly.
Weather. Wind speed, direction, and gust intensity, applied live either way: to the ArduDeck engine's wind field when it is active, or to ArduPilot's SIM_WIND_* parameters on the built-in model.
Everything below that (GPS loss and jamming, compass and barometer failure, RC loss, battery voltage) works the same on both physics engines, since those are always ArduPilot's own failsafe logic being tested, not the airframe physics.
Toggle X-ray (top right of the 3D world) to see the force budget that is actually flying the aircraft: a thrust arrow per motor, weight, aerodynamic drag, and the net resultant force through the center of gravity, each colour-coded with a small legend. It is the fastest way to see whether a wobble is a tuning problem or the airframe running out of authority.
The Obstacles panel lets you place cylinders and boxes in the world and apply them as ArduPilot exclusion fences, so the vehicle genuinely routes around them on the map, not just in the 3D view. With the ArduDeck engine active, obstacles also generate real wake turbulence, useful for rehearsing a flight near a building or a treeline before you do it for real.
View in FlightGear, next to Open 3D World, opens FlightGear as a second window on the same flight. It is a pure visualizer: SITL (built-in or the ArduDeck engine) computes every bit of the physics, and FlightGear just renders whatever position and attitude it is sent, so no separate flight model or aircraft add-on is needed.
FlightGear draws real-world terrain at your home location, while SITL's own ground is a flat plane at your configured home altitude. If those two altitudes do not agree, the aircraft can look like it is floating above the ground or sunk into it, even though it is resting exactly where it should be. Click Match terrain, next to the Altitude field in Home & Scenarios, to look up the real elevation for your location and fix that automatically.
To rehearse more than one vehicle at once, see Multi-Vehicle for the SITL swarm launcher.
Getting Started
Mission Planning
Fleet
Simulator
Telemetry
Configuration
- Configuration
- PID Tuning
- Rates
- Flight Modes
- Receiver
- Serial Ports
- Safety and Failsafe
- MAVLink Signing
- Battery
- Motor Test
- Tuning Presets
- All Parameters
- Offline Parameters
Firmware
Inspector
Flight Logs
Map & Overlays
Companion Board
Camera & OSD
Lua Graph Editor