description: >- How to build PX4 firmware from source and flash it directly onto a local Skynode
Building and Flashing PX4 Firmware
Preparations
In order to build PX4 locally, you first need to set up the PX4 toolchain.
Customizing Auterion PX4 (APX4)
{% hint style="warning" %} SLA required to get access to source code {% endhint %}
Please contact success@auterion.com to get access to the APX4 repository.
Work with open source PX4
Open source ("upstream") PX4 will generally work on Skynodes, with the following caveats:
- Configuration and drivers for components of your exact product may not be present. You may encounter missing configuration or functionality for ESCs, batteries, sensors, and so on.
- Some parameters might have different default values compared to APX4 releases.
- Features accessed by vendor-specific customizations running on the companion computer may not be present in PX4.
Building/Uploading Firmware
PX4 px4_fmu-v5x
binaries for Skynode ENT/GOV resp. px4_fmu-v6x
binaries for Skynode X/GX can be built from source using the PX4 developer environment and PX4 build commands, and uploaded by specifying either the upload_skynode_usb
or upload_skynode_wifi
upload target.
{% hint style="info" %} SSH and TAR are needed to use these upload targets, but are expected to be present by default on Ubuntu and Ubuntu running on Windows in WSL2. On macOS you should first install gnu-tar. {% endhint %}
First get the PX4 source code using the command:
bash
git clone https://github.com/PX4/PX4-Autopilot.git --recursive
cd PX4-Autopilot
Then build PX4 with the upload target for the connection you are using. You will need to enter the password for the Skynode developer image twice during the upload process.
Skynode ENT/GOV
{% tabs %}
{% tab title="Skynode connected via USB" %}
bash
make px4_fmu-v5x upload_skynode_usb
{% endtab %}
{% tab title="Skynode connected via WiFi" %}
bash
make px4_fmu-v5x upload_skynode_wifi
{% endtab %}
{% endtabs %}
Skynode X/GX
{% tabs %}
{% tab title="Skynode connected via USB" %}
bash
make px4_fmu-v6x upload_skynode_usb
{% endtab %}
{% tab title="Skynode connected via WiFi" %}
bash
make px4_fmu-v6x upload_skynode_wifi
{% endtab %}
{% endtabs %}
Restoring the Default Skynode APX4 Firmware
To reinstall the original Skynode version of APX4, run the following command in the root of the PX4-Autopilot repository:
{% tabs %}
{% tab title="Skynode connected via USB" %}
bash
./Tools/auterion/upload_skynode.sh --revert
{% endtab %}
{% tab title="Skynode connected via WiFi" %}
bash
./Tools/auterion/upload_skynode.sh --revert --wifi
{% endtab %}
{% endtabs %}
Comments
0 comments
Please sign in to leave a comment.