Integration of Pixhawk 4 and Marvelmind indoor GPS


Hello everyone,

we are about to develop an autonomous flying drone using Marvelmind indoor GPS and the Pixhawk 4, but we have some problems with the integration of Marvelmind indoor GPS and Pixhawk 4. The Marvelmind works without big problems, but we never get the message “3D Fix” when integrating it into the Mission Planner.
We tried several integration options:

  1. A first attempt was the integration according to the following link:
    We have only made these settings in the parameter list and with the Hedgehog we use the Marvelmind protocol in the Marvelmind to send the GPS signal. After we have made all the settings, we receive the message “GPS: No GPS” in the HUD.

  2. Second, we have tried the integration according to the following instructions:
    We have used the attached parameter list and use NMEA 1803 in the Marvelmind to send the GPS signal. The NMEA messages are also enabled.
    Here we get the message “GPS: No Fix” in the HUD. However, any slight changes to the parameters, as indicated in some forums, will not help to get the message “GPS: 3D Fix”.

For the wiring we have tried the options on the Pixhawk 4 via the Telem1 or the UART & I2C as well as the GPS connection. But we don’t know which is the right alternative? We suspect it, via the GPS module.

We have tried a lot and don’t know what else to do to get “3D Fix”. Do you have any experience with the Pixhawk 4 and the integration of the Marvelmind GPS with the Pixhawk 4? Does anyone have any ideas about what we’re doing wrong or what we can try out to make progress?

Best regards,


For ArduPilot assistance, best to ask at
There are quite a number of successful marvelmind users, so someone should be able to help. @amilcarlucas


You should change the following parameters:

  • EKF2_GPS_CHECK to 20 (do not check satellites quantity)
  • EKF2_HGT_MODE to 0 (use GPS instead of barometer)
  • EKF2_AID_MASK to 1 (use GPS—it’s the default value)

Then, issue the following command in a nuttshell terminal (for example, using QGC):

gps stop
gps start -d /dev/ttyS3 -m all -b 115200 -r

Then, a gps status command should show you ASHTECH protocol:

gps status
WARN  [gps] GPS 1:
WARN  [gps] protocol: ASHTECH

The marvelmind hedge must be configured for NMEA output.

Please, give us your feedback and tell us how it is working.