Flight Controller Shell

Interfacing with Skynode's flight controller for development, analysis and debugging purposes

The following instructions require a network connection to Skynode for development purposes as described on Skynode's page USB-C Network Connection.

MAVLink Shell can be used to connect to the autopilot running inside the Skynode.

Using the PX4 shell (NuttX shell) is for advance developers only. Certain PX4 shell commands available in the MAVLink shell can make the propellers spin and therefore cause harm to people. These commands include, but are not limited to:

  • Arming the drone

  • Manually setting PWM outputs

  • Running motor tests

  • Modification of PWM parameters

  • Forcing the failsafe on, causing parachute deployment

SSH into AuterionOS

The MAVLink Shell connects directly to PX4's NuttX shell through the means of mavlink messaging. It allows a developer to interact with PX4's low-level commands such as starting / stopping drivers or inspecting uORB messages in real-time. See the PX4 documentation for more details on the MAVLink Shell.

  • The MAVLink shell does not allow users or developers to send any MAVLink commands.

  • The MAVLink shell does not give users or developers access to the Skynode mission computer. For that purpose set up an SSH connection as described in SSH Access.

When connected to a drone, AMC can be used to open a mavlink shell, which effectively exposes PX4's nuttx shell and allows direct interaction with the flight controller.

In order to access the mavlink shell, activate the advanced mode in AMC by quickly tapping the menu icon multiple times.

To access the MAVLink shell, open the side-panel on the left and navigate to Analyze -> MAVLink Console. The Analyze tab is only visible in advanced mode:

It is also possible to use MAVLink shell without AMC while connected via SSH. In order to do so, open an SSH connection to the mission computer and then run the following command. This is a python script that is globally available in AuterionOS:

# Connect to Skynode
ssh root@

And in case of AI node simply change the IP address:

# Connect to AI Node
ssh root@
mavlink_shell.py udp:

Last updated