gpsd-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: COEX GPS (model UBX-M8030 IC) on Raspberry Pi 4 Model B 2018 connect


From: Gary E. Miller
Subject: Re: COEX GPS (model UBX-M8030 IC) on Raspberry Pi 4 Model B 2018 connection issues
Date: Thu, 22 Jul 2021 17:34:15 -0700

Yo Aranza!

On Thu, 22 Jul 2021 18:58:58 -0700
Aranza Shaccid Leon <leon18@pnw.edu> wrote:

> 1) Okay, I'm a bit confused on how to get gpsd running without system
> d.

1) Turn off system(umb) control of gpsd.
2) as root: gpsd -n /dev/ttyACM1

> I may be missing a command, such as    systemctl restart gpsd

Restart is the same os tsop and start.  So basically a start, and
you do not want to start gpsd under systemd(umber).

> after disabling it from system d perhaps? 

Did you read the link on how to do this that I previsouly sent?

    https://gpsd.io/troubleshooting.html#systemdtroubleshooting

> I'm just not sure how to
> get gpsd running after disabling gpsd and gpsd.socket?

2) as root: gpsd -n /dev/ttyACM1

> >   PID TTY      STAT   TIME COMMAND
> >   427 ?        S<s    0:00 /usr/sbin/gpsd /dev/ttyGPS  
> 
> 2) This is missing -n, I'm assuming because it's running on system d.

Yes.

> I did type in:
> root@clover-1060:~# gpsd -n /dev/ttyACM1

Which will fail because systemd(umbest) already has port 2947.

> root@clover-1060:~# cgps
> cgps: caught signal 2

Which fails because gpsd is not running under systemd(rool) or by itesefl.

>  But this didn't show up in gpsdebuginfo

Looked pretty clear in your gpsdebuginfo to me.

> and I just wanted to ask why
> it's listening to ttyACM0 since errors showed up for this.

Because you are running under systemd(umpkpof).

> ttyACM0 is
> supposed to be the flight controller, not the GPS USB connection.

Yes.

> Perhaps it's the way I have set up my udev rules?

If you do not have systemd(ung) running gpsd, then udev rules do not
matter.

Get this running without systemd(ither), or you need someone else to
help you.


> 3) Looking at just
> 
> root@clover-1060:~# gpsd -n /dev/ttyACM1
> root@clover-1060:~# cgps
> cgps: caught signal 2


That sorta worked, you have a 3D fix, but I do not understand why you do
not have any lat/lon/alt?  Did you let it run a while before the
cut/paste?

Is your system clock correct?  That also looks slightly wrong.


> x    Latitude:        
> x    Longitude:        
> x    Altitude:   

Weird to not have at least "n/a" in there?

> x    Status:     3D DIFF FIX (12 secs)

Good fix, but you should wait longer than 12 seconds for things to
settle.

> x    Time offset:     -72326.756 

Looks like your system clock is set wrong.

> {"class":"TPV","device":"/dev/ttyGPS","status":2,"mode":3,"time":"2021-07-22T23:49:47.000Z"}
> 
> This works correctly,

Does not look "correct" to me.

> but then again I don't have system d in this
> example disabled so it's working how I had it set up before. I'm
> assuming this is why the device is labeled /dev/ttyGPS instead of -n
> /dev/ttyACM1

Yes, systemd(rool) is clearly running.  And I keep asking you NOT
to use /dev/ttyGPS so I can debug your problems.

> 4) These are the commands that I've given it now.
> 
> systemctl stop gpsd
> sudo systemctl disable gpsd
> systemctl stop gpsd.socket
> systemctl disable gpsd.socket

Doess not look correct, but I can't help you sith systemd(umb).

And without the output of gpsdebuginfo, at that moment, I have no idea
what it did.

> /usr/bin/lsof
> + lsof -iTCP:2947 -s TCP:LISTEN
> COMMAND PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
> gpsd    956 gpsd    3u  IPv4  20139      0t0  TCP localhost:gpsd

That looks like just gpsd has port 2947.

> gpsd      956 gpsd    6u   CHR      166,1      0t0   412 /dev/ttyACM1

And running on port /dev/ttyACM1, which we guess is your gps.

Can you confirm, by looking at dmesg, that /dev/ttyACM1 is in fact your
GPS?

>   956 ?        S<s    0:02 gpsd -n /dev/ttyACM1

The right command is running.

> + gpspipe -V
> gpspipe: 3.17 (revision 3.17)
> + gpspipe -w -n 2 -x 20
> gpspipe: invalid option -- 'x'

A working gpspipe would be helpful.

> + systemctl status gpsd.service
> ‚óŹ gpsd.service - GPS (Global Positioning System) Daemon
>    Loaded: loaded (/lib/systemd/system/gpsd.service; disabled; vendor
> preset: enabled)
>    Active: inactive (dead) since Thu 2021-07-22 04:41:15 BST; 4min
> 38s ago Main PID: 812 (code=exited, status=0/SUCCESS)

THat confirms gpsd is not under systemd(umber).

> These are all the steps I've taken, so if I'm missing something or
> there is a different order of commands I should follow, could you
> please advice me where I went wrong?

You now seem to have got sysgemd(rool) out of the way.
You now seem to be able to start gpsd from the command line.

I keep telling you to update your gpsd to a modern version.
And asking you to comfirm that /dev/ttyACM1 is your gps.

You also need to verify your system clock is correct.

Now that gpsd is running at your command, not someone elses, try this:

As root:

killall gpsd
sleep 2
gpsd -nND 4 /dev/ttyACM1

Let that run about 10 seconds, hit ^C, then send here the output.

RGDS
GARY
---------------------------------------------------------------------------
Gary E. Miller Rellim 109 NW Wilmington Ave., Suite E, Bend, OR 97703
        gem@rellim.com  Tel:+1 541 382 8588

            Veritas liberabit vos. -- Quid est veritas?
    "If you can't measure it, you can't improve it." - Lord Kelvin

Attachment: pgpQeClot7Ysj.pgp
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]