# Custom simulation modes and worlds

{% hint style="info" %}
This feature is available since virtual FMU 1.7.0
{% endhint %}

Testing new vehicles configurations and simulation environments with various airframes might result in the need to create a custom vehicle to spawn in gazebo (e.g. for a not yet exposed airframe), a new world to run or a new predefined location to use. Therefore, the UI exposed configuration (`config_options.json`) can be modified on your simulated vehicle via ssh. To do so, make:

```
ssh root@10.41.200.1
mountrw
nano /data/app/com.auterion.virtual-fmu/data/config_options.json
```

Then change as you desire and run

```
auterion-cli app restart com.auterion.virtual-fmu
```

to apply the changes.

Possible changes could e.g. be new/other airframes or gazebo models to use, like:

```
    "options": [
...
        {
            "sim_mode": "gz",
            "model_name": "Fixed-Wing",
            "config": {
-                "PX4_SIM_MODEL": "gz_rc_cessna",
+                "PX4_SIM_MODEL": "gz_my_rc_cessna",
                "PX4_SYS_AUTOSTART": "4003"
            }
        }
    ],
```

Or custom presets for start locations like:

```
    "environments":[
...
        {
            "name": "Baylands",
            "world": "baylands",
            "preset_locations": [
                {
                    "name": "Open field runway",
                    "position": [300, 0, 0.01],
                    "orientation": [0, 0, 0]
                }
+                {
+                    "name": "My new location",
+                    "position": [10, 10, 0.01],
+                    "orientation": [0, 0.1, 0]
+                }
            ]
        },
```

{% hint style="warning" %}
Please make sure that the custom model and world files are available under `~/.simulation-gazebo/models` and `~/.simulation-gazebo/worlds` respectively.
{% endhint %}
