[SOLVED] No GPS-fix with NEO6 USB dongle

Continuing the discussion from No GPS lock with ArduPlane:

Hi everybody.
My setup is: RaspPi2 with Navio+, 3DR telemtery connected over UART, NEO6T-USB dongle with Tallysman GPS Antenna connected.

I followed the instructions to connect to u-center and I’m receiving data “view --> binary console”.

But there’s no satellite showing in any maps. I can not get a fix!??

I also see messages coming in over “sudo screen /dev/ttyACM0 9600”:

What else can I try?

If you followed these instructions - http://docs.emlid.com/Navio-dev/GPS-ucenter/ - then you’re connecting to the Navio’s onboard GPS, not the USB dongle. You can connect to the USB dongle by using socat to pass data from /dev/ttyACM0 to tcp port.

I have two issues at the moment:

  1. I’m not able to pass the data with socal. I’m new in these things and still have to leran a lot.
    After a lot of trial and error I found the command:

socat TCP-LISTEN:5000,fork /dev/ttyACM0,raw &

But the answer is “Adress already in use”. Can you help me with the correct command?

  1. My idea was to connect the Neo-usb-dongle to the Navio+ to get the raw data and thereby RTK-Perfomance. But is it necessary for that at all or can I connect the Tallysman Antenna directly to the Navio+? :grin:
    Then the dongle would be available to build a reference-station!?

Hi Ruprecht!

Could you please specify what exactly you are trying to achieve?

If you want to connect Navio’s onboard GPS unit to the u-center, then follow the docs.

If you want to connect the dongle to the u-center, try either plugging it in directly to your computer or running socat.

General syntax for socat will be socat SOURCE SINK
Something like socat /dev/ttyACM0,raw,echo=0,unlink-close=0 tcp-l:5000,reuseaddr,fork should do

In general, if you are running APM, then you need an external GPS unit for RTK.

Hi Egor.

If I plug in the dongle directly to my PC I get a fix within a few seconds (see it in u-center)! But I want to use it plugged in the Navio for havin a RTK-system.

So thanks for the syntax, but the answer I get is the same: “Adress already in use”!?
the complete error-code is:
2015/10/04 19:10:20 socat[2390] E bind(4, {AF=2}, 16): Address already in use

I followed the docs and tried to get a signal in the u-center. That’s just to clarify that everything works with the GPS dongle and antenna. But it seems not (on the Navio) :confused:

In general I want to build a rover that can navigate with RTK-precision over APM. For now I do not have any reference-station and therefore cannot have high precision. But I already want to build the rover to test with “normal” GPS-Performance until the REACH gets available and I can build a reference station.

My setup for now is:
RaspPi2 with Navio+ and the following hardware connected:

  • 3DR telemtery connected over UART
  • Neo6T-USB dongle with Tallysman GPS Antenna connected
  • USB-Wlan adapter for Communication to base station

My “base-station” is a dektop-windows PC with APM and u-center installed. I have also conneceted the 3DR ground-modul to my PC to communicate to APM.

Later I want to build a reference station with a REACH to have RTK.

You say that

So I cannot use Navio’s onboard GPS for RTK, right!? Thus the Neo6T-USB-dongle!?

Perhaps I’m getting something abolutely wrong; hope you can help me :blush:

OK. It works now!
I made a mistake by opening the tcp port as described in the docs and after that tried to pass data with socat to the tcp port.

The solution was to only call the socat command.

But one question still isn’t answered:
I cannot use Navio’s onboard GPS for RTK, or is it possible? Then I wouldn’t need the dongle in the navio at all and could use it to build a reference station with it.

@Ruprecht you can use Navio’s onboard GPS for RTKLIB like described here:
But it cannot be done at the same time when running APM.