Packaging AuterionOS Image

Disclaimer

Any change to the flight control source code can have severe impacts on the vehicle's safety.

If you are interested in using a custom PX4 version please submit a ticket.

Download AuterionOS Base Image

In order to package and deploy your own application you need a base AEPX4 image. The latest release can be downloaded from the Auterion Suite (Auterion Enterprise PX4 for Skynode). The image can be used with local software updates or with the development workflow explained below.

Note that there are two types of AuterionOS images: Development and production builds. There is a dedicated page describing the difference between these two build types.

Modifying AuterionOS and APX4

There are several ways to modify AuterionOS and/or APX4. The section Modifying AuterionOS covers most of them. You can also develop custom applications which can be included in AuterionOS images as well. For reference see our dedicated application development documentation.

The various modifications can all be combined into a single .auterionos file, which contains the AuterionOS base system as well as the APX4 firmware for the Autopilot.

A summary of the most common packaging commands can be found below:

# Basic package command
# - includes APX4 configuration from ./fmu/config
# - includes SSH keys from ./authorized_keys
# - includes custom Apps from ./apps
make package-update \
    version=my-version \
    artifactPath=~/Download/artifact.auterionos \
    outputArtifactPath=./output/update.auterionos

# Same as above, but also include 
# - APX4 firmware from ./fmu/binaries:
make package-update \
    injectFMU=1 \
    version=my-version \
    artifactPath=~/Download/artifact.auterionos \
    outputArtifactPath=./output/update.auterionos

Make sure to replace my-version with the version name you want to give the artifact, as well as setting <APX4 Release>to the correct path where the base image is located. Note, that the above packaging command does not deploy anything to Skynode yet, refer to the next section for instructions to deploy an image onto a local Skynode.

Include APX4 Firmware Binaries

If you are interested in using a custom PX4 version please contact Auterion Support.

You can inject your own custom APX4 binaries by adding the files to aepx4-developer-tools-2.x.x/fmu/binariesfolder and use the argument injectFMU=1 when running the package-updatecommand, for example:

make package-update \
    injectFMU=1 \
    version=my-version \
    artifactPath=<AEPX4 Release>.auterionos

Include APX4 Configuration

When you package an artifact, by default the FMU configuration files from aepx4-developer-tools-2.x.x/fmu/config will be merged with the FMU configuration inside the artifact.

make package-update \
    version=my-version \
    artifactPath=<AEPX4 Release>.auterionos

If you want to force the injection by removing all other (pre-existing) configuration files inside the artifact, you can use the argument forceInjectFMUConfiguration=1 when running the command make package-update.

make package-update \
    forceInjectFMUConfiguration=1 \
    version=my-version \
    artifactPath=<AEPX4 Release>.auterionos

Installing a new image on Skynode

After packaging AuterionOS and including your customizations, it's time to flash the new .auterionos onto a Skynode. For developers there are two simple ways to do that locally:

Upload using an internet browser

Follow the regular Skynode update instructions

Upload using the Command Line

Update the device with the following command using the auterion developer tools:

make update

By default, the command will use the image stored in output/update.auterionos, but you can use the artifactPath argument to specify another artifact, for example:

make update artifactPath=~/Download/artifact.auterionos

Last updated

#145: Add GPS denied

Change request updated