# App development

- [Getting Started](https://docs.auterion.com/app-development/app-development.md): The aim of this documentation is to guide you through all necessary steps to successfully develop, deploy and integrate your applications for Auterion powered drones.
- [Development environment Setup](https://docs.auterion.com/app-development/app-development/application-development.md): Follow the below listed instructions to easily set up your development environment.
- [Connecting to a device](https://docs.auterion.com/app-development/app-development/connecting-to-a-device.md): This short guide shows how to connect to a device, select it and list the applications installed on it.
- [Application Development](https://docs.auterion.com/app-development/app-development/application-development-1.md): Workflow to build and install an app on AuterionOS
- [App Framework](https://docs.auterion.com/app-development/app-framework.md)
- [Building your First App](https://docs.auterion.com/app-development/app-framework/app-framework.md): Structure of the app meta file, and how to build the app
- [Apps API](https://docs.auterion.com/app-development/app-framework/app-framework-1.md)
- [Sensor Data](https://docs.auterion.com/app-development/app-framework/sensor-data.md): Accessing live sensor data from the flight controller (FMU)
- [Video Streams](https://docs.auterion.com/app-development/app-framework/payload-manager.md)
- [Photos](https://docs.auterion.com/app-development/app-framework/photos.md)
- [Hardware Peripherals](https://docs.auterion.com/app-development/app-framework/peripherals-hardware.md)
- [Persistent Storage](https://docs.auterion.com/app-development/app-framework/file-storage.md)
- [MAVLink](https://docs.auterion.com/app-development/app-framework/communicating-with-the-autopilot.md): Mavlink Communication with the Autopilot and other systems that use the MAVLink protocol
- [Native Docker Compose](https://docs.auterion.com/app-development/app-framework/compose-override.md): Compose override allows the use of native docker compose directives
- [App Parameters](https://docs.auterion.com/app-development/app-framework/app-settings.md)
- [Mountsets](https://docs.auterion.com/app-development/app-framework/mountsets.md)
- [Log App Data to Auterion Suite](https://docs.auterion.com/app-development/app-framework/logging.md)
- [How to log Time Series Data](https://docs.auterion.com/app-development/app-framework/logging/logging-ros2-messages.md)
- [How to log basic Text Output](https://docs.auterion.com/app-development/app-framework/logging/logging-text-output.md)
- [How to store an App's Binary Data on Skynode](https://docs.auterion.com/app-development/app-framework/logging-arbitrary-data-persistently.md)
- [User Web Interfaces](https://docs.auterion.com/app-development/app-framework/user-interfaces-web.md)
- [Build Arguments](https://docs.auterion.com/app-development/app-framework/build-arguments.md): Use build arguments to modify the app or its behaviour during build time
- [Debugging apps with SSH](https://docs.auterion.com/app-development/app-framework/ssh-access.md): Get SSH access to your app
- [Debugging Apps with gdb](https://docs.auterion.com/app-development/app-framework/debugging-apps-with-gdb.md)
- [PX4 Messages in ROS 2](https://docs.auterion.com/app-development/app-framework/px4-messages-in-ros-2.md): Interact with uORB messages in APX4 using ROS 2
- [DDS / ROS2 Configuration](https://docs.auterion.com/app-development/app-framework/dds-ros2-configuration.md): For the inter-process communication between FMU and apps or app to app, AOS applies DDS/ROS2 as a middleware/framework. This page describes default configurations and possible points of modification.
- [Structuring Applications with Multiple Services](https://docs.auterion.com/app-development/app-framework/structuring-applications-with-multiple-services.md): Best practices guide on how to structure larger applications consisting of multiple services efficiently and optimize storage requirements
- [Auterion SDK](https://docs.auterion.com/app-development/auterion-sdk.md)
- [Installation](https://docs.auterion.com/app-development/auterion-sdk/installation.md)
- [Write Your First App](https://docs.auterion.com/app-development/auterion-sdk/write-your-first-app.md)
- [SDK API](https://docs.auterion.com/app-development/auterion-sdk/sdk-api.md)
- [Flight Mode API](https://docs.auterion.com/app-development/auterion-sdk/flight-mode-api.md)
- [Flight Mode API](https://docs.auterion.com/app-development/auterion-sdk/flight-mode-api/flight-mode-api.md)
- [Multicopter Modes](https://docs.auterion.com/app-development/auterion-sdk/flight-mode-api/multicopter-modes.md)
- [Dynamics in Body Frame](https://docs.auterion.com/app-development/auterion-sdk/flight-mode-api/multicopter-modes/dynamics-in-body-frame.md)
- [Dynamics in Local Frame](https://docs.auterion.com/app-development/auterion-sdk/flight-mode-api/multicopter-modes/dynamics-in-local-frame.md)
- [Go-To in Local Frame](https://docs.auterion.com/app-development/auterion-sdk/flight-mode-api/multicopter-modes/go-to-in-local-frame.md)
- [Fixed Wing Modes](https://docs.auterion.com/app-development/auterion-sdk/flight-mode-api/fixed-wing-modes.md)
- [Dynamics Control](https://docs.auterion.com/app-development/auterion-sdk/flight-mode-api/fixed-wing-modes/dynamics-control.md)
- [Guidance Control](https://docs.auterion.com/app-development/auterion-sdk/flight-mode-api/fixed-wing-modes/guidance-control.md)
- [System State API](https://docs.auterion.com/app-development/auterion-sdk/system-state-api.md)
- [Peripheral Actuator Control API](https://docs.auterion.com/app-development/auterion-sdk/peripheral-actuator-control-api.md)
- [Camera API](https://docs.auterion.com/app-development/auterion-sdk/system-state-api-1.md)
- [Gimbal API](https://docs.auterion.com/app-development/auterion-sdk/gimbal-api.md)
- [Navigation Input API](https://docs.auterion.com/app-development/auterion-sdk/navigation-input-api.md)
- [Global Navigation](https://docs.auterion.com/app-development/auterion-sdk/navigation-input-api/global-navigation.md)
- [Local Navigation](https://docs.auterion.com/app-development/auterion-sdk/navigation-input-api/local-navigation.md)
- [Visual Tracking API](https://docs.auterion.com/app-development/auterion-sdk/visual-tracking-api.md): The Visual Tracking API is used as an intermediary between Auterion Mission Control and a computer vision app that is running the tracking logic on the video stream and producing a tracking result
- [Object Detection API](https://docs.auterion.com/app-development/auterion-sdk/object-detection-api.md)
- [VTOL API](https://docs.auterion.com/app-development/auterion-sdk/vtol-api.md)
- [Simulation](https://docs.auterion.com/app-development/simulation.md)
- [Virtual Skynode](https://docs.auterion.com/app-development/simulation/virtual-skynode.md): Usage of Virtual Skynode and its apps. Virtual Skynode simulates a Skynode device that can be used for app development
- [Simulation-Gazebo Reference](https://docs.auterion.com/app-development/simulation/virtual-skynode/simulation-gazebo-reference.md): Auterion offers a meta debian package for Ubuntu called simulation-gazebo. This can be run in conjunction with Virtual Skynode.
- [Simulation-AirSim Reference](https://docs.auterion.com/app-development/simulation/virtual-skynode/simulation-airsim-reference.md)
- [Connecting from other Computers](https://docs.auterion.com/app-development/simulation/virtual-skynode/connecting-from-other-computers.md): This page describes how to set up the computer hosting Virtual Skynode such that other devices in the network can connect to Virtual Skynode
- [Resetting Virtual Skynode](https://docs.auterion.com/app-development/simulation/virtual-skynode/resetting-virtual-skynode.md): How to restore a clean state of Virtual Skynode
- [Multiple Virtual Skynodes on single machine](https://docs.auterion.com/app-development/simulation/virtual-skynode/multiple-virtual-skynodes-on-single-machine.md): How to run multiple instances of Virtual Skynode on a single machine to emulate multiple vehicles
- [Custom simulation modes and worlds](https://docs.auterion.com/app-development/simulation/virtual-skynode/custom-simulation-modes-and-worlds.md): Extend the Gazebo-powered simulation with customized vehicles and personalized environments
- [Physical Skynode](https://docs.auterion.com/app-development/simulation/simulation-in-hardware.md): How to use a physical Skynode to simulate flights without any additional hardware connected
- [Auterion Simulator](https://docs.auterion.com/app-development/simulation/auterion-simulator.md)
- [Resources](https://docs.auterion.com/app-development/resources.md)
- [Cross Compilation - Faster Builds](https://docs.auterion.com/app-development/resources/cross-compilation-faster-builds.md)
- [Auterion CLI Reference](https://docs.auterion.com/app-development/resources/auterion-cli.md): Command line utility to interact with Auterion Devices and Apps
- [Troubleshooting](https://docs.auterion.com/app-development/resources/troubleshooting.md)
- [Skynode Vision Kit S](https://docs.auterion.com/app-development/resources/skynode-vision-kit-s.md): This section presents the hardware components of the kit and explains how to correctly set them up.
- [Set up the Vision Kit](https://docs.auterion.com/app-development/resources/skynode-vision-kit-s/set-up-the-vision-kit.md)
- [Install and test a simple vision app](https://docs.auterion.com/app-development/resources/skynode-vision-kit-s/install-and-test-a-simple-vision-app.md): This example app uses the Vision Kit API to compute the average brightness of each frame captured by the camera.
- [Legacy app workflow](https://docs.auterion.com/app-development/legacy-app-workflow.md)
- [App Development](https://docs.auterion.com/app-development/legacy-app-workflow/app-development.md)
- [MAVLink](https://docs.auterion.com/app-development/legacy-app-workflow/mavlink.md): Mavlink Communication with the Autopilot and other systems that use the MAVLink protocol
- [Using the App Template](https://docs.auterion.com/app-development/legacy-app-workflow/application-development-guide.md)
- [Example Applications](https://docs.auterion.com/app-development/legacy-app-workflow/examples.md)
- [Autopilot Telemetry (C++)](https://docs.auterion.com/app-development/legacy-app-workflow/examples/get-telemetry-cpp.md): Can be found under examples in auterion-developer-tools
- [Autopilot Telemetry (Python)](https://docs.auterion.com/app-development/legacy-app-workflow/examples/get-telemetry-python.md): Can be found under examples in auterion-developer-tools
- [Photo Gallery](https://docs.auterion.com/app-development/legacy-app-workflow/examples/gallery.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.auterion.com/app-development.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
