# HG Drone Developer Guide

- [Getting started](https://nxp.gitbook.io/hovergames/developerguide/getting-started.md): Start developing software for the HoverGames drone by extending PX4 Autopilot or by controlling the flight controller using software running on a (separate) companion computer.
- [Development tools](https://nxp.gitbook.io/hovergames/developerguide/tools.md): This section explains how to set up a Linux-based development environment with useful tools to develop, build and debug software for HoverGames and NXP Mobile Robotics platforms.
- [Virtual machine](https://nxp.gitbook.io/hovergames/developerguide/tools/virtual-machine.md): We are going to set up a Linux virtual machine that can be used for developing, building and debugging software for HoverGames and other NXP Mobile Robotics platforms.
- [Installing Ubuntu](https://nxp.gitbook.io/hovergames/developerguide/tools/installing-ubuntu.md): The next few steps will guide you through the Ubuntu installer. It does not matter if you install Ubuntu natively or in a virtual machine, the install procedure remains (mostly) the same.
- [PX4 toolchain](https://nxp.gitbook.io/hovergames/developerguide/tools/toolchain-installation.md): The PX4 project provides a set of recommended tools that you can use to develop, build and debug PX4 Autopilot and other Dronecode software projects, as well as Apache NuttX RTOS.
- [MCUXpresso](https://nxp.gitbook.io/hovergames/developerguide/tools/mcuxpresso.md): The MCUXpresso Integrated Development Environment allows developers to edit, compile and debug code for many NXP microcontrollers. For HoverGames it is a useful tool for debugging the PX4 code.
- [Building the bootloader](https://nxp.gitbook.io/hovergames/developerguide/building-bootloader.md): Instructions for building the bootloader from source using the console.
- [Building PX4 firmware](https://nxp.gitbook.io/hovergames/developerguide/building-firmware.md): Instructions on how to build the PX4 firmware from source using the console.
- [Program software using debugger](https://nxp.gitbook.io/hovergames/developerguide/program-software-using-debugger.md): This page provides instructions on how to upload any software to the board using the debug interface.
- [Git source code management](https://nxp.gitbook.io/hovergames/developerguide/git.md): How to use Git when working with a group of people on a complex software project.
- [PX4 Tutorial example code](https://nxp.gitbook.io/hovergames/developerguide/px4-tutorial-example-code.md): Examples to get you started with creating your own modules within PX4 Autopilot.
- [HG-PX4 Example Lab 1: uORB Subscribe](https://nxp.gitbook.io/hovergames/developerguide/px4-tutorial-example-code/hg-px4-example-lab-1.md): uORB messaging protocol
- [HG-PX4 Example Lab 2: uORB Publish](https://nxp.gitbook.io/hovergames/developerguide/px4-tutorial-example-code/hg-px4-example-lab-2.md)
- [HG-PX4 Example Lab 3: Building Code](https://nxp.gitbook.io/hovergames/developerguide/px4-tutorial-example-code/hg-px4-example-lab-3.md): Compiling our new example code into PX4
- [HG-PX4 Example Lab 4: Loading and Running Code](https://nxp.gitbook.io/hovergames/developerguide/px4-tutorial-example-code/hg-px4-example-lab-4.md)
- [HG-PX4 Example Lab 5: Build your own PX4 app](https://nxp.gitbook.io/hovergames/developerguide/px4-tutorial-example-code/hg-px4-example-lab-5.md): uORB subscribe to the compass and publish to the LED
- [Companion computers](https://nxp.gitbook.io/hovergames/developerguide/companion-computers.md): Using a companion computer is a straightforward way to extend the functionality of your drone by running some of your own software.
- [PX4 simulation](https://nxp.gitbook.io/hovergames/developerguide/simulation.md): Simulators allow PX4 Autopilot to control a modeled drone in a simulated environment.
- [PX4 system console](https://nxp.gitbook.io/hovergames/developerguide/system-console.md): Accessing and using the PX4 system console.
- [Useful console commands](https://nxp.gitbook.io/hovergames/developerguide/system-console/useful-console-commands.md): This page lists some useful NuttX console commands. You can access the console through QGroundControl or using a USB-TTL-3V3 cable and debugger adapter board.
- [C++ and Python interface\&management application for FMUK66](https://nxp.gitbook.io/hovergames/developerguide/c++-and-python-interface-and-management-application-for-fmuk66.md): Dobrea Dan Marius
- [Zephyr on FMUK66](https://nxp.gitbook.io/hovergames/developerguide/zephyr-on-fmuk66.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://nxp.gitbook.io/hovergames/developerguide.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.
