Links

Flashing of APX4 Firmware

Quickly flash APX4 Firmware onto a local Skynode without repackaging AuterionOS

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].

Updating APX4 on local Skynode

In production environments APX4 firmware binaries and configuration files will be bundled into an AuterionOS image and deployed by updating AuterionOS as a whole. For development purposes this is time-consuming. Thus you can use the following commands to directly update the flight controller in Skynode with a new firmware and / or configuration. These instructions require you to download and set up the Auterion Developer Tools first before proceeding.
APX4 configurations and the APX4 firmware binaries are located in ./fmu/config and ./fmu/binaries of your Auterion Developer Tools directory. These files are included in the AuterionOS image during the packaging. AuterionOS automatically uses the included APX4 firmware anc fongiruation to update the flight controller whenever the new AuterionOS image is flashed onto a Skynode, or when you use the commands described below to manually replace the APX4 firmware and configuration on a Skynode.

Upload a APX4 binary to Skynode

SLA required to sustain warranty
The following command can be used to upload a custom APX4 binary to Skynode. This is assuming a custom firmware file that is stored in the default location, as is typically the case for custom FMU builds by an OEM.
# In the Auterion Developer Tools directory:
make fmu-update firmwarePath=fmu/binaries/px4_fmu-v5x_default.px4

Upload APX4 Configuration to Skynode

It is also possible to only update the PX4 configuration files, such as the airframe definitions or UAVCAN firmware binaries. Assuming all related files are located in the folder ./fmu/config of your copy of the Auterion Developer tools, you can use the following command to perform the update:
# In the Auterion Developer Tools directory:
make fmu-update configurationDir=fmu/config

Upload configuration and binary simultaneously

The two aforementioned commands for uploading a new APX4 firmware and the configuration can of course be combined to a single line as the following example shows:
# In the Auterion Developer Tools directory:
make fmu-update firmwarePath=fmu/binaries/px4_fmu-v5x_default.px4 configurationDir=fmu/config

Build and flash APX4 Firmware from source

SLA required to get access to source code
Please contact [email protected] to get access to the APX4 repository
In the Auterion PX4 repository, there is a handy make command to speed up the process of flashing a Skynode with new firmware. This command is part of the Auterion PX4 repository, not the developer tools.
Skynode connected via USB
Skynode connected via WiFi
# In the directory containing the APX4 source code:
make skynode upload_usb
# In the directory containing the APX4 source code:
make skynode upload_wifi

Build and flash PX4 Firmware from upstream

SLA required to sustain warranty
Skynode can run PX4 upstream builds for the FMU v5X target. The command is assuming that a clone of the PX4 Firmware exists in the default location ~/src/PX4-Autopilot on your system.
# In the Auterion Developer Tools directory:
make fmu-update firmwarePath=~/src/PX4-Autopilot/build/px4_fmu-v5x_default/px4_fmu-v5x_default.px4