RINEX 3.02

Simplified integration with Pixhawk

Purpose: Learn how to integrate the INS with the Pixhawk
Last Updated: February 2024

Pixhawk is an independent open-hardware project providing autopilot hardware designs. The Inertial Labs INS can be integrated with Pixhawk levels – simplified and full (still under development). This article covers the simplified variant of INS integration with Pixhawk. For this integration, the autopilot uses the INS as a source of navigation data. The INS simulates the GNSS receiver by providing the GNSS messages to the autopilot.
Note: This integration was tested on Pixhawk Cube Black/Blue with FW PX4FMU-v3. With newer versions of Pixhawk hardware/software, some minor changes to the configuration on the Pixhawk side might be required.
Connection and installation: The main COM1 port of the INS must be connected to the GPS1 slot of the Cube. It is recommended that all parts are installed on the UAV using vibration isolation.

ArduPilot configuration

It is necessary to check the firmware version first. The latest ArduPilot firmware can be found using the link below:

 To configure the ArduPilot algorithm, please use the Mission Planner ground station software. The following parameters should be set:

  • AHRS_EKF_TYPE=3
  • EK2_ENABLE=1
  • EK3_ALT_SOURCE=2
  • EK3_ENABLE=1
  • EK3_MAG_CAL=5
  • GPS_AUTO_SWITCH=0
  • GPS_DELAY_MS=100
  • GPS_TYPE=5
  • GPS_TYPE2=2
  • LOG_FILE_BUFSIZE=32

Setting AHRS_EKF_TYPE will choose which one of the two-state estimation systems is flying the vehicle. Using 3 will use the NMEA-based heading from the INS solution. The value of GPS_DELAY_MS should be set to the expected lag in the position and velocity estimates from the NMEA GPS.

ArduPilot confiration
Fig.1 ArduPilot configuration

INS configuration

The INS should be configured to output data that imitates the GNSS receiver output based on the INS solution. This enables the Pixhawk to continue operating with data from the INS during the GNSS outage. There are two supported data formats for this purpose:

  • BESTPOS, BESTVEL, and PSRDOP NovAtel binary logs (recommended for use)
  • INS NMEA Set messages

Please make sure that the maximum time of autonomous INS operation at absence of GNSS data (GNSS outage) is set to 3600 seconds (preset default value). If no aiding data is provided after the max operational time is reached, the position and velocity output is paused to avoid error accumulation, and the GNSS quality indicators and statuses are set to invalid.

NovAtel BESTPOS, BESTVEL, and PSRDOP
To start INS on output BESTPOS, BESTVEL, and PSRDOP logs through its COM1 port, the INS_BESTPOS_BESTVEL_PSRDOP command should be sent to the device:
AA 55 00 00 07 00 5D 64 00
The INS baud rate and data rate should be previously set following Pixhawk requirements.
Optionally, it is possible to configure the INS to output BESTPOS, BESTVEL, and PSRDOP logs automatically after power is applied (auto start mode). For this purpose, please send the following commands to the unit:
AA 55 00 00 09 00 B0 07 5D 1D 01
AA 55 00 00 07 00 B2 B9 00

INS NMEA Set

To start INS on output data in “INS NMEA Set” format through its COM1 port, the INS_NMEA_Set command should be sent to the device:

AA 55 00 00 07 00 6B 72 00

The INS baud rate and data rate should be previously set following Pixhawk requirements.

Optionally, it is possible to configure the INS to output INS NMEA Set data automatically after power is applied (auto start mode). For this purpose, send the following commands to the unit:

AA 55 00 00 09 00 B0 07 6B 2B 01

AA 55 00 00 07 00 B2 B9 00

For any additional questions, please email support@inertiallabs.com

Scroll to Top

Website maintenance has been scheduled for Sunday, April 2 from 7 am to 9 pm EDT.
The resource may be unavailable at this time. Please accept our apologies for any inconvenience.