gpsd-users
[Top][All Lists]
Advanced

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

gpsd ignores Galileo satellites


From: Filip Jan Kubicz
Subject: gpsd ignores Galileo satellites
Date: Sat, 28 Nov 2020 08:54:38 +0100

Hi,

I'm facing the problem that gpsd v3.20 ignores the Galileo satellites. My gpsd clients only see max 20 satellites, while on the smartphone I see above 30.

I'm using a Quectel LC79D GNSS emitting NMEA0183. I have confirmed it has all constellations enabled in its settings.
It sends the GAGSV sentences, when I read the serial port directly:

$GNRMC,151226.00,A,4956.583158,N,01953.363614,E,0.0,270.3,271120,,,A,V*3F $GNGGA,151226.00,4956.583158,N,01953.363614,E,1,11,1.1,381.0,M,,M,,*62 $GNGLL,4956.583158,N,01953.363614,E,151226.00,A,A*73 $GPGSV,4,1,12,05,21,210,29,07,,,14,13,83,254,31,15,47,297,38,1*56 $GPGSV,4,2,12,17,,,22,20,13,323,23,23,13,326,33,24,,,24,1*60 $GPGSV,4,3,12,28,69,100,38,30,,,23,1*5D $GPGSV,4,4,12,24,,,15,30,,,15,8*6B $GLGSV,1,1,03,80,59,257,23,79,55,041,26,71,19,328,31,1*44 $GAGSV,2,1,04,103,42,159,35,108,69,265,29,6*76  $GAGSV,2,2,04,103,42,159,25,108,69,265,17,1*7E
$GQGSV,1,1,01,03,,,19,1*6F
$GNGSA,A,3,05,13,15,20,23,28,,,,,,,1.7,1.1,1.3,1*3F
$GNGSA,A,3,71,79,80,,,,,,,,,,1.7,1.1,1.3,2*36
$GNGSA,A,3,103,108,,,,,,,,,,,1.7,1.1,1.3,3*3C
$GNGSA,A,3,,,,,,,,,,,,,1.7,1.1,1.3,4*30
$GNGSA,A,3,,,,,,,,,,,,,1.7,1.1,1.3,5*31
$GNGSA,A,3,,,,,,,,,,,,,1.7,1.1,1.3,6*32
$GNVTG,270.3,T,,M,0.0,N,0.0,K,A*15

However, the Galileo satellites are missing from the "SKY" structure in JSON output of GPSD. xpgs and cgps don't show these satellites. When running gpsd with debug info, it shows

psd:INFO: Sats used (16):
gpsd:IO: <= GPS: $GAGSV,2,1,03,102,86,060,30,103,,,12,6*4B
gpsd:PROG: xAGSV: part 1 of 2, last_gsv_talker '0x4c' last_gsv_sigid 0
gpsd:PROG: xxGSV: Partial satellite data (1 of 2).
gpsd:PROG: GAGSV is just after a cycle ender.

This log is emitted by NMEA parser:
https://gitlab.com/gpsd/gpsd/-/blob/master/drivers/driver_nmea0183.c#L3727

I'm not familiar with GPSD codebase. Is the cycle ender printout a problem at all?

I gathered more debug info with
gpsd -D 7 -N -n /dev/ttyUSB0

gpsd:DATA: packet type 1 from /dev/ttyGPS0 with {ONLINE|TIME|LATLON|MODE|PACKET|REPORT|NTPTIME}
gpsd:SPIN: packet_get() fd 6 -> 256 (0)
gpsd:IO: <= GPS: $GPGSV,4,1,13,10,12,327,35,13,55,165,35,15,62,244,33,17,41,115,31,1*61
gpsd:PROG: xPGSV: part 1 of 4, last_gsv_talker '0'  last_gsv_sigid 3
gpsd:PROG: xPGSV: new part 1, last_gsv_talker '0', zeroing
gpsd:PROG: xxGSV: Partial satellite data (1 of 4).
gpsd:DATA: GPGSV time  162445.000000000 last  162445.000000000 latch 0 cont 0 enders 0x400000
gpsd:PROG: GPGSV is just after a cycle ender.
gpsd:DATA: packet type 1 from /dev/ttyGPS0 with {ONLINE|PACKET}
gpsd:SPIN: packet_get() fd 6 -> 0 (0)
gpsd:IO: <= GPS: $GPGSV,4,2,13,19,,,14,20,17,293,26,21,04,024,20,23,22,297,26,1*5F
gpsd:PROG: xPGSV: part 2 of 4, last_gsv_talker '0x50'  last_gsv_sigid 0
gpsd:PROG: xxGSV: Partial satellite data (2 of 4).
gpsd:DATA: GPGSV time  162445.000000000 last  162445.000000000 latch 0 cont 0 enders 0x400000
gpsd:PROG: GPGSV is just after a cycle ender.
gpsd:DATA: packet type 1 from /dev/ttyGPS0 with {ONLINE|PACKET}
gpsd:SPIN: packet_get() fd 6 -> 0 (0)
gpsd:IO: <= GPS: $GPGSV,4,3,13,24,42,287,36,28,46,057,34,30,,,11,1*67
gpsd:PROG: xPGSV: part 3 of 4, last_gsv_talker '0x50'  last_gsv_sigid 0
gpsd:PROG: xxGSV: Partial satellite data (3 of 4).
gpsd:DATA: GPGSV time  162445.000000000 last  162445.000000000 latch 0 cont 0 enders 0x400000
gpsd:PROG: GPGSV is just after a cycle ender.
gpsd:DATA: packet type 1 from /dev/ttyGPS0 with {ONLINE|PACKET}
gpsd:SPIN: packet_get() fd 6 -> 0 (0)
gpsd:IO: <= GPS: $GPGSV,4,4,13,10,12,327,24,24,42,287,31,8*62
gpsd:PROG: xPGSV: part 4 of 4, last_gsv_talker '0x50'  last_gsv_sigid 0
gpsd:DATA: xxGSV: Satellite data OK (4 of 4).
gpsd:DATA: GPGSV time  162445.000000000 last  162445.000000000 latch 0 cont 0 enders 0x400000
gpsd:PROG: GPGSV is just after a cycle ender.
gpsd:DATA: packet type 1 from /dev/ttyGPS0 with {ONLINE|PACKET}
gpsd:SPIN: packet_get() fd 6 -> 0 (0)
gpsd:IO: <= GPS: $GLGSV,1,1,03,70,,,15,73,,,14,71,47,302,31,1*4F
gpsd:PROG: xLGSV: part 1 of 1, last_gsv_talker '0x50'  last_gsv_sigid 0
gpsd:DATA: xxGSV: Satellite data OK (1 of 1).
gpsd:DATA: GLGSV time  162445.000000000 last  162445.000000000 latch 0 cont 0 enders 0x400000
gpsd:PROG: GLGSV is just after a cycle ender.
gpsd:INFO: PRN= 10 az=327.0 ael12.0 (-0.532737, 0.820344, 0.207912)
gpsd:INFO: PRN= 13 az=165.0 ael55.0 (0.148453, -0.554032, 0.819152)
gpsd:INFO: PRN= 15 az=244.0 ael62.0 (-0.421958, -0.205803, 0.882948)
gpsd:INFO: PRN= 17 az=115.0 ael41.0 (0.683999, -0.318954, 0.656059)
gpsd:INFO: PRN= 20 az=293.0 ael17.0 (-0.880283, 0.373658, 0.292372)
gpsd:INFO: PRN= 23 az=297.0 ael22.0 (-0.826127, 0.420933, 0.374607)
gpsd:INFO: PRN= 24 az=287.0 ael42.0 (-0.710673, 0.217275, 0.669131)
gpsd:INFO: PRN= 28 az=57.0 ael46.0 (0.582590, 0.378338, 0.719340)
gpsd:INFO: PRN= 10 az=327.0 ael12.0 (-0.532737, 0.820344, 0.207912)
gpsd:INFO: PRN= 24 az=287.0 ael42.0 (-0.710673, 0.217275, 0.669131)
gpsd:INFO: PRN= 71 az=302.0 ael47.0 (-0.578367, 0.361404, 0.731354)
gpsd:INFO: Sats used (11):
gpsd:DATA: DOPS computed/reported: X=0.657568/nan, Y=1.208943/nan, H=1.376204/0.800000, V=2.054306/1.100000, P=2.472673/1.400000, T=1.432831/nan, G=2.857816/nan
gpsd:DATA: packet type 1 from /dev/ttyGPS0 with {ONLINE|DOP|SATELLITE|PACKET}
gpsd:SPIN: packet_get() fd 6 -> 437 (0)
gpsd:IO: <= GPS: $GAGSV,2,1,04,102,81,054,19,103,15,166,18,6*78
gpsd:PROG: xAGSV: part 1 of 2, last_gsv_talker '0x4c'  last_gsv_sigid 0
gpsd:PROG: xxGSV: Partial satellite data (1 of 2).
gpsd:DATA: GAGSV time  162445.000000000 last  162445.000000000 latch 0 cont 0 enders 0x400000
gpsd:PROG: GAGSV is just after a cycle ender.
gpsd:DATA: packet type 1 from /dev/ttyGPS0 with {ONLINE|PACKET}
gpsd:SPIN: packet_get() fd 6 -> 0 (0)
gpsd:IO: <= GPS: $GAGSV,2,2,04,102,81,054,27,103,15,166,10,1*79
gpsd:PROG: xAGSV: part 2 of 2, last_gsv_talker '0x41'  last_gsv_sigid 3
gpsd:DATA: xxGSV: Satellite data OK (2 of 2).
gpsd:DATA: GAGSV time  162445.000000000 last  162445.000000000 latch 0 cont 0 enders 0x400000
gpsd:PROG: GAGSV is just after a cycle ender.

gpsd:INFO: PRN= 10 az=327.0 ael12.0 (-0.532737, 0.820344, 0.207912)
gpsd:INFO: PRN= 13 az=165.0 ael55.0 (0.148453, -0.554032, 0.819152)
gpsd:INFO: PRN= 15 az=244.0 ael62.0 (-0.421958, -0.205803, 0.882948)
gpsd:INFO: PRN= 17 az=115.0 ael41.0 (0.683999, -0.318954, 0.656059)
gpsd:INFO: PRN= 20 az=293.0 ael17.0 (-0.880283, 0.373658, 0.292372)
gpsd:INFO: PRN= 23 az=297.0 ael22.0 (-0.826127, 0.420933, 0.374607)
gpsd:INFO: PRN= 24 az=287.0 ael42.0 (-0.710673, 0.217275, 0.669131)
gpsd:INFO: PRN= 28 az=57.0 ael46.0 (0.582590, 0.378338, 0.719340)
gpsd:INFO: PRN= 10 az=327.0 ael12.0 (-0.532737, 0.820344, 0.207912)
gpsd:INFO: PRN= 24 az=287.0 ael42.0 (-0.710673, 0.217275, 0.669131)
gpsd:INFO: PRN= 71 az=302.0 ael47.0 (-0.578367, 0.361404, 0.731354)
gpsd:INFO: Sats used (11):
gpsd:DATA: DOPS computed/reported: X=0.657568/nan, Y=1.208943/nan, H=1.376204/0.800000, V=2.054306/1.100000, P=2.472673/1.400000, T=1.432831/nan, G=2.857816/nan
gpsd:DATA: packet type 1 from /dev/ttyGPS0 with {ONLINE|DOP|SATELLITE|PACKET}
gpsd:SPIN: packet_get() fd 6 -> 0 (0)
gpsd:IO: <= GPS: $GNGSA,A,3,10,13,15,17,20,23,24,28,,,,,1.4,0.8,1.1,1*32
gpsd:PROG: xxGSA sets mode 3
gpsd:DATA: xxGSA: clear sats_used
gpsd:DATA: xxGSA: mode=3 used=9 pdop=1.40 hdop=0.80 vdop=1.10 ubx_sigid 0
gpsd:PROG: xxGSA: mask 0x402
gpsd:DATA: GNGSA time  162445.000000000 last  162445.000000000 latch 0 cont 0 enders 0x400000
gpsd:PROG: GNGSA is just after a cycle ender.
gpsd:DATA: packet type 1 from /dev/ttyGPS0 with {ONLINE|MODE|PACKET}
gpsd:SPIN: packet_get() fd 6 -> 0 (0)
gpsd:IO: <= GPS: $GNGSA,A,3,71,,,,,,,,,,,,1.4,0.8,1.1,2*39
gpsd:PROG: xxGSA sets mode 3
gpsd:DATA: xxGSA: mode=3 used=11 pdop=1.40 hdop=0.80 vdop=1.10 ubx_sigid 5
gpsd:PROG: xxGSA: mask 0x100000000c00
gpsd:DATA: GNGSA time  162445.000000000 last  162445.000000000 latch 0 cont 0 enders 0x400000
gpsd:PROG: GNGSA is just after a cycle ender.


Do you know how to fix this situation?

Kind regards,
Filip


reply via email to

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