Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified content/usage/advanced/available-services.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added content/usage/advanced/firmware-sitl.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
34 changes: 34 additions & 0 deletions content/usage/advanced/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -301,6 +301,40 @@ It's highly recommended to **flash the default parameters** for the vehicle when
Check the [vehicle setup](#vehicle-setup) for more information.
{% end %}

{% pirate() %}
#### SITL Simulation
If you want to do some testing without needing physical hardware, BlueOS includes a virtual
flight controller "board" for running ArduPilot [SITL](https://ardupilot.org/dev/docs/sitl-simulator-software-in-the-loop.html)
simulation builds. It comes pre-configured to run the latest stable [ArduSub](https://ardupilot.org/sub/) firmware,
but can be re-flashed with other ArduPilot firmware versions or variants like a normal flight controller board.

The default setup is for a 6-thruster vectored ROV (like the [BlueROV2](https://bluerobotics.com/store/rov/bluerov2/)),
but if you want to simulate a different frame (especially if you have just flashed on a different firmware variant) you can click or copy
[this link](http://blueos-avahi.local:8000/v2.0/docs#/index_v1/set_sitl_frame_sitl_frame_post)[^1], then click
"Try it out" in the `POST: /sitl_frame` endpoint, select the frame you want in the dropdown, and "Execute".
{% end %}

{{ easy_image(src="firmware-sitl", class="pirate", width=600) }}

{% pirate() %}
As an example, to simulate a [BlueBoat](https://bluerobotics.com/store/boat/blueboat/blueboat/) you would first flash the
SITL board to ArduRover, change the frame to "motorboat" (as described above), then load Blue Robotics' default parameters
for the vehicle from the [Vehicle Setup](#vehicle-setup) "Configure" page.

[^1]: If the provided link doesn't work, you can instead click the `/v2.0/docs`
link in the "version" column at the far right of the "Autopilot Manager" row in the [Available Services](#available-services) page.

#### Lua Scripts
ArduPilot firmware supports using [Lua Scripts](https://ardupilot.org/dev/docs/common-lua-scripts.html) to add
custom functionality and drivers without needing to modify or build the firwmare itself. Once enabled
(via the [`SCR_ENABLE`](https://ardupilot.org/sub/docs/parameters.html#scr-parameters) parameter)
they can be conveniently managed through the `lua_scripts` folder in the [File Browser](#file-browser).

Currently this functionality is only available to vehicles with a Linux-based flight controller board
(like a [Navigator](https://bluerobotics.com/store/comm-control-power/control/navigator/)), but general
support for serial-connected autopilots is [on the way](https://github.com/bluerobotics/BlueOS/issues/2722)!
{% end %}

### Autopilot Parameters
`New in 1.1`

Expand Down
Loading