Navio2 RPi4 External GPS not Detected

I no longer have the antenna for the Navio’s built in GPS unit, so I want to connect my mRo M8N module (mRo GPS u-Blox Neo-M8N Dual Compass LIS3MDL+ IST8310), but I’ve run into a brick wall.

I have the mRo unit plugged into the Navio’s UART port, which seems to require the GPS enabled on Serial4 in MP. I have set the baud in MP and uCenter to 57600, set the GPS type to AUTO, ublox, and NMEA at different times, all to no avail. I then edited the Navio’s etc/default/arducopter file to include TELEM3=“-E /dev/ttyAMA0”, modified the existing (and commented out) TELEM2=“-C /dev/ttyAMA0” to TELEM2=“-E /dev/ttyAMA0”, and no dice.

I’ve tried flipping TX and RX, multiple baud rates, multiple GPS protocols, and all have come up short.

I am simultaneously running UAVCast, and Arduplane 4.0.5

Any ideas that I may have missed?

Hello,

This may sound silly. Are you near a window or outside when attempting the missed NMEA or GPS calibration(s) or readings?

Seth

P.S. I found w/ my board(s), GPS only works when I am very close to a window or outdoors. Odd yes but some GPS modules are a bit finnicky.

Hello,

You may look here for info

Hello,

I had some history with Navio 2 and 2 GPS.

I use arducopter and have a test bed at home (under roof window) with a RPI4

Here is my telemetry setting:

Capture d’écran 2022-12-16 à 18.00.47

I had some headache all afternoon trying to make it work… Typo error (TELAM instead of TELEM) was not helping…

As you are not using internal GPS, you can also try

TELEM3=“-B /dev/ttyAMA0”

Serial settings work with speed 230 (230400).

Serial 3 if -B or serial 4 if -E

It should work with arduplane. Latest version is 4.3.1. https://firmware.ardupilot.org/Plane/stable-4.3.1/navio2/
You can load it on your card. Search the Emlid Navio forum for the how to and do he same for arduplane.

pi@navio:~ $ cd /opt/ardupilot/navio2/arducopter-4.0/bin/
pi@navio:/opt/ardupilot/navio2/arducopter-4.0/bin $ ls -l
total 4020
-rwxrwxr-x 1 root root 2184746 Aug 28 10:49 arducopter
-rwxrwxr-x 1 root root 1926268 Aug 28 10:49 arducopter-heli
pi@navio:/opt/ardupilot/navio2/arducopter-4.0/bin $ sudo mv arducopter arducopter403
pi@navio:/opt/ardupilot/navio2/arducopter-4.0/bin $ ls -l
total 4020
-rwxrwxr-x 1 root root 2184746 Aug 28 10:49 arducopter403
-rwxrwxr-x 1 root root 1926268 Aug 28 10:49 arducopter-heli
pi@navio:/opt/ardupilot/navio2/arducopter-4.0/bin $ sudo wget http://firmware.ardupilot.org/Copter/stable/navio2/arducopter
–2021-01-28 17:07:15-- http://firmware.ardupilot.org/Copter/stable/navio2/arducopter
Resolving firmware.ardupilot.org (firmware.ardupilot.org)… 159.65.186.182
Connecting to firmware.ardupilot.org (firmware.ardupilot.org)|159.65.186.182|:80… connected.
HTTP request sent, awaiting response… 301 Moved Permanently
Location: https://firmware.ardupilot.org/Copter/stable/navio2/arducopter [following]
–2021-01-28 17:07:15-- https://firmware.ardupilot.org/Copter/stable/navio2/arducopter
Connecting to firmware.ardupilot.org (firmware.ardupilot.org)|159.65.186.182|:443… connected.
HTTP request sent, awaiting response… 200 OK
Length: 1989648 (1.9M)
Saving to: ‘arducopter’

arducopter 100%[===================>] 1.90M 934KB/s in 2.1s

2021-01-28 17:07:18 (934 KB/s) - ‘arducopter’ saved [1989648/1989648]

pi@navio:/opt/ardupilot/navio2/arducopter-4.0/bin $ sudo chmod +x arducopter
pi@navio:/opt/ardupilot/navio2/arducopter-4.0/bin $ ls -l
total 5964
-rwxr-xr-x 1 root root 1989648 Jan 26 07:11 arducopter
-rwxrwxr-x 1 root root 2184746 Aug 28 10:49 arducopter403
-rwxrwxr-x 1 root root 1926268 Aug 28 10:49 arducopter-heli
pi@navio:/opt/ardupilot/navio2/arducopter-4.0/bin $ sudo cp arducopter arducopter406
pi@navio:/opt/ardupilot/navio2/arducopter-4.0/bin $ ls -l
total 7908
-rwxr-xr-x 1 root root 1989648 Jan 26 07:11 arducopter
-rwxrwxr-x 1 root root 2184746 Aug 28 10:49 arducopter403
-rwxr-xr-x 1 root root 1989648 Jan 28 17:08 arducopter406
-rwxrwxr-x 1 root root 1926268 Aug 28 10:49 arducopter-heli
pi@navio:/opt/ardupilot/navio2/arducopter-4.0/bin $ sudo reboot
Connection to navio closed by remote host.
Connection to navio closed.

Try to close UAVCAST when doing your config then enable it when GPS is fine…

Marc

1 Like

Hello,
I had some history with Navio 2 and 2 GPS.
I use arducopter and have a test bed at home (under roof window) with a RPI4
Here is my telemetry setting:

Thank you for the detailed feedback! Happy to know I’m at least exploring the proper paths.

Following your /etc/default settings, I have:
TELEM3=“-B /dev/tty/AMA0”

I then went into uCenter and changed the M8N default UART1 baud to 230400, ensured serial3 in APM was set to 230 (it was 38), and made sure the serial type was 5 for GPS.

I still have the internal GPS detected as GPS 1 at 115200 baud.

I’m still working with the older version of APM Plane for now, but I guess that’s my next avenue. Did you also have to change baud on both the APM serial side and the GPS itself?

Some progress,

I did the test (arducopter 4.3.1): unplugged internal antenna, editing
TELEM3=“-B /dev/tty/AMA0”

All GPS data is now from external GPS and I have a 3D FIX under my window.

No need to reconfigure GPS speed with uBlox utility. 115200 is the old GPS speed, Just set the serial 3 speed at 115200 or 230400.

GPS is configured by ardupilot at boot.

Marc

External GPS is fine on arduplane. Speed is 230400 with 4.3.1

All parameters are default (fresh configuration…)

1 Like

Thank you again. I followed your steps for updating Arduplane from another thread, so cheers for that!

I’m afraid the issue persists. I just now thought to plug in the external GPS after boot, and it doesn’t appear to grab. The internal, however, shows just fine. Is it possible my default/arducopter isn’t correlating? I presume I need to edit that instead of default/arduplane?

Here’s the output of plugging in after boot, top pane included to prove APM 4.3.1:

EDIT:
I later swapped to a different uBlox based GPS and have the same issues. It appears I can’t switch off the internal GPS, and/or cannot connect an additional.
To further eliminate variables, I just created a fresh Navio install and started from scratch to rule out UAVCast, same problem. Surely the board can’t be defective, but I don’t know where the discrepancy lies between our setups. Is it possible for you to send me a config file and some details on your second GPS?

Proof of GPS Fix:

Hello,

I soon as you set TELEM to “-B /dev/tty/AMA0”, internal GPS is not in use.

All GPS data you see is from external GPS

uBlox utility is connected via USB to the GPS.

Here is my Arduplane Navio setup

plane431Gps-uart.param (15.7 KB)

My GPS unit is an old one (M8N) with I2C compass and Gyro (not used by arducopter)

Marc

1 Like

Alright I invoked some interesting behavior. I disabled GPS1 type and left GPS2 active on Serial3 at 230 and GPS type set to 2 (ublox). Upon reboot, I finally have two GPS statuses in the HUD, but it only detects GPS 2 now, and it’s unclear if that’s the external or internal because both are ublox. I went back and once again set GPS1 to 2 and it made the GPS2 in the HUD disappear.

To rule out the GPS, I plugged it into my mRo Pixhawk and instantly had a GPS fix.

EDIT:
Success! I’m not sure why this worked, but here goes:
In UAVCast, there’s a set of launch options, as shown here

This is the first time I even noticed them, so I decided to enable the GPIO for the first GPS, and sure enough it worked. The reason I’m confused about this is because I did a fresh install of Navio without UAVCast and had the same problem we’ve been fighting.

Regardless, thank you so much for your help, @mlebret, as your config and constant feedback probably got me to the point where the launch option even became a solution. Many cheers and happy flying!

2 Likes

Happy to help you.

Marc