Links

Packaging AuterionOS Image

Customizations can be packaged into a new AuterionOS image for easy distribution via Suite

Disclaimer

Any change to the flight control source code can have severe impacts on the vehicle's safety. We are supporting customers with a service level agreement (SLA) that includes custom builds from source based on our stabilized PX4 distribution. Please contact us at [email protected] for information on available SLAs and source access.
If you are interested in using a custom PX4 version please contact Auterion Support at [email protected]

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.
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 update instructions here.

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