[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [gpsd-users] Ublox EVK-M8T
From: |
Denny Page |
Subject: |
Re: [gpsd-users] Ublox EVK-M8T |
Date: |
Tue, 19 Sep 2017 12:54:54 -0700 |
> On Sep 18, 2017, at 21:10, Eric S. Raymond <address@hidden> wrote:
>
> Denny Page <address@hidden>:
>> The first issue is that the gpsd auto-baud detection doesn’t appear
>> to work well with the unit. At 115200, gpsd will settle on 4800 if
>> the unit is in binary mode. It’s unclear why. This means that gpsd
>> without the -b option will work once, but fail the second time. For
>> the time being, I’ve locked the unit at 9600.
>
> That is pretty strange. What type does it think it recognizes? Because it
> shouldn't lock to uBlox packets unless it sees the correct packet header, then
> finds a correct checksum for the implied payload. How that match could happen
> at the wrong baud is pretty mysterious.
It doesn’t recognize a type.
Starting condition is, unit set to 115200, port set to 115200, and gpsctl used
to set binary mode.
The log file says:
Sep 19 08:43:56 k9 gpsd[10107]: gpsd:INFO: SER: opening GPS data source type 2
at '/dev/ttyS2'
Sep 19 08:43:56 k9 gpsd[10107]: gpsd:INFO: SER: speed 115200, 8N1
Sep 19 08:43:56 k9 gpsd[10107]: gpsd:SPIN: SER: open(/dev/ttyS2) -> 6 in
gpsd_serial_open()
Sep 19 08:43:56 k9 gpsd[10107]: gpsd:PROG: no probe matched…
After that, gpsd ends up sitting in a polling loop, with the port at 4800 baud,
dropping everything it receives:
Sep 19 19:15:35 k9 gpsd[11138]: gpsd:UNK: polling 6
Sep 19 19:15:35 k9 gpsd[11138]: gpsd:UNK: Read 16 chars to buffer offset 0
(total 16): 00000000000000000000000000000000
Sep 19 19:15:35 k9 gpsd[11138]: gpsd:SPIN: packet_get() fd 6 -> 16 (0)
Sep 19 19:15:35 k9 gpsd[11138]: gpsd:UNK: 00000000: character '.' [00],
GROUND_STATE -> GROUND_STATE
Sep 19 19:15:35 k9 gpsd[11138]: gpsd:UNK: Character discarded, buffer 15 chars
= 000000000000000000000000000000
Sep 19 19:15:35 k9 gpsd[11138]: gpsd:UNK: 00000001: character '.' [00],
GROUND_STATE -> GROUND_STATE
Sep 19 19:15:35 k9 gpsd[11138]: gpsd:UNK: Character discarded, buffer 14 chars
= 0000000000000000000000000000
…
Sep 19 19:15:35 k9 gpsd[11138]: gpsd:UNK: 00000014: character '.' [00],
GROUND_STATE -> GROUND_STATE
Sep 19 19:15:35 k9 gpsd[11138]: gpsd:UNK: Character discarded, buffer 1 chars =
00
Sep 19 19:15:35 k9 gpsd[11138]: gpsd:UNK: 00000015: character '.' [00],
GROUND_STATE -> GROUND_STATE
Sep 19 19:15:35 k9 gpsd[11138]: gpsd:UNK: Character discarded, buffer 0 chars =
Sep 19 19:15:35 k9 gpsd[11138]: gpsd:UNK: /dev/ttyS2 sent 16 new characters
Sep 19 19:15:35 k9 gpsd[11138]: gpsd:RAW: packet sniff on /dev/ttyS2 finds type
-1
Sep 19 19:15:35 k9 gpsd[11138]: gpsd:UNK: New data on /dev/ttyS2, not yet a
packet
However, if the “-b” option is used to gpsd, gpsd correctly identifies u-blox
on the second packet:
Sep 19 12:29:32 k9 gpsd[11238]: gpsd:INFO: SER: opening read-only GPS data
source type 2 and at '/dev/ttyS2'
Sep 19 12:29:32 k9 gpsd[11238]: gpsd:INFO: SER: speed 115200, 8N1
Sep 19 12:29:32 k9 gpsd[11238]: gpsd:SPIN: SER: open(/dev/ttyS2) -> 6 in
gpsd_serial_open()
Sep 19 12:29:32 k9 gpsd[11238]: gpsd:PROG: no probe matched...
…
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: Read 90 chars to buffer offset 0
(total 90):
b5620106340098bf7b0e6112ffffaf0703dd3e4fe4ef8be76ce6966dfb16a801000000000000ffffffff0000000002000000730002124a6403003919b5620104120098bf7b0e810073003a0062003d002e0028001aefb5620120
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:SPIN: packet_get() fd 6 -> 90 (0)
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: 00000000: character '.' [b5],
GROUND_STATE -> UBX_LEADER_1
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: 00000001: character 'b' [62],
UBX_LEADER_1 -> UBX_LEADER_2
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: 00000002: character '.' [01],
UBX_LEADER_2 -> UBX_CLASS_ID
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: 00000003: character '.' [06],
UBX_CLASS_ID -> UBX_MESSAGE_ID
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: 00000004: character '4' [34],
UBX_MESSAGE_ID -> UBX_LENGTH_1
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: 00000005: character '.' [00],
UBX_LENGTH_1 -> UBX_LENGTH_2
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: 00000006: character '.' [98],
UBX_LENGTH_2 -> UBX_PAYLOAD
...
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: 00000058: character '9' [39],
UBX_PAYLOAD -> UBX_CHECKSUM_A
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: 00000059: character '.' [19],
UBX_CHECKSUM_A -> UBX_RECOGNIZED
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:IO: UBX: len 60
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: Packet type 11 accepted 60 =
b5620106340098bf7b0e6112ffffaf0703dd3e4fe4ef8be76ce6966dfb16a801000000000000ffffffff0000000002000000730002124a6403003919
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: Packet discard of 60, chars remaining
is 30 = b5620104120098bf7b0e810073003a0062003d002e0028001aefb5620120
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: /dev/ttyS2 sent 60 new characters
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:RAW: packet sniff on /dev/ttyS2 finds type
11
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:PROG: switching to match packet type 11:
b5620106340098bf7b0e6112ffffaf0703dd3e4fe4ef8be76ce6966dfb16a801000000000000ffffffff0000000002000000730002124a6403003919
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:PROG: switch_driver(u-blox) called...
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:PROG: selecting u-blox driver...
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: Accepted packet on /dev/ttyS2.
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:INFO: /dev/ttyS2 identified as type
u-blox, 1 sec @ 115200bps
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:PROG: => GPS: UBX class: 0a, id: 04, len:
0, crc: 0e34
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:IO: SER: => GPS: b5620a0400000e34 FAILED
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:RAW: raw packet of type 11,
60:b5620106340098bf7b0e6112ffffaf0703dd3e4fe4ef8be76ce6966dfb16a801000000000000ffffffff0000000002000000730002124a6403003919
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:PROG: UBX_NAV_SOL
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:DATA: NAVSOL: time=1505849372.00 lat=37.43
lon=-122.20 alt=39.11 track=133.98 speed=0.01 climb=0.01 mode=3 status=1 used=18
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:DATA: packet type 11 from /dev/ttyS2 with
{ONLINE|TIME|LATLON|ALTITUDE|SPEED|TRACK|CLIMB|STATUS|MODE|SPEEDERR|PACKET|DRIVER|CLEAR|REPORT|NTPTIME}
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:PROG: NTP: ntpshm_put(/dev/ttyS2,-20)
1505849372.000000000 @ 1505849373.104221744
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: Read 20 chars to buffer offset 30
(total 50): b5620104120098bf7b0e810073003a0062003d00
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:SPIN: packet_get() fd 6 -> 20 (0)
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: 00000060: character '.' [b5],
UBX_RECOGNIZED -> UBX_LEADER_1
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: 00000061: character 'b' [62],
UBX_LEADER_1 -> UBX_LEADER_2
...
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: 00000084: character '.' [1a],
UBX_PAYLOAD -> UBX_CHECKSUM_A
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: 00000085: character '.' [ef],
UBX_CHECKSUM_A -> UBX_RECOGNIZED
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:IO: UBX: len 26
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: Packet type 11 accepted 26 =
b5620104120098bf7b0e810073003a0062003d002e0028001aef
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: Packet discard of 26, chars remaining
is 24 = b5620120100098bf7b0e6112ffffaf071207070000005848
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:RAW: /dev/ttyS2 is known to be u-blox
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: /dev/ttyS2 sent 26 new characters
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:RAW: packet sniff on /dev/ttyS2 finds type
11
Sep 19 19:29:33 k9 gpsd[11238]: gpsd:UNK: Accepted packet on /dev/ttyS2.
…
The version of gpsd used for the above tests is git current as of this writing,
with NMEA and u-blox drivers enabled:
k9 gpsd # gpsd -l
NMEA0183
n b c * u-blox
* JSON slave driver
PPS
# n: mode switch, b: speed switch, c: rate switch, *: non-NMEA packet type.
# Socket export enabled.
# Shared memory export enabled.
# Time service features enabled.
# PPS enabled.
Denny
- Re: [gpsd-users] Ublox EVK-M8T, (continued)
- Re: [gpsd-users] Ublox EVK-M8T, Denny Page, 2017/09/04
- Re: [gpsd-users] Ublox EVK-M8T, Denny Page, 2017/09/18
- Re: [gpsd-users] Ublox EVK-M8T, Eric S. Raymond, 2017/09/19
- Re: [gpsd-users] Ublox EVK-M8T, John Klug, 2017/09/19
- Re: [gpsd-users] Ublox EVK-M8T, John Klug, 2017/09/19
- Re: [gpsd-users] Ublox EVK-M8T, Eric S. Raymond, 2017/09/19
- Re: [gpsd-users] Ublox EVK-M8T, Denny Page, 2017/09/19
- Re: [gpsd-users] Ublox EVK-M8T, Denny Page, 2017/09/19
- Re: [gpsd-users] Ublox EVK-M8T, John Klug, 2017/09/19
- Re: [gpsd-users] Ublox EVK-M8T, Eric S. Raymond, 2017/09/19
- Re: [gpsd-users] Ublox EVK-M8T,
Denny Page <=
- Re: [gpsd-users] Ublox EVK-M8T, Gary E. Miller, 2017/09/19
- Re: [gpsd-users] Ublox EVK-M8T, Denny Page, 2017/09/21
- Re: [gpsd-users] Ublox EVK-M8T, Eric S. Raymond, 2017/09/19
- Re: [gpsd-users] Ublox EVK-M8T, Denny Page, 2017/09/19
- Re: [gpsd-users] Ublox EVK-M8T, Gary E. Miller, 2017/09/19
- Re: [gpsd-users] Ublox EVK-M8T, Denny Page, 2017/09/19
- Re: [gpsd-users] Ublox EVK-M8T, Gary E. Miller, 2017/09/20
- Re: [gpsd-users] Ublox EVK-M8T, Denny Page, 2017/09/21
- Re: [gpsd-users] Ublox EVK-M8T, Denny Page, 2017/09/21
- Re: [gpsd-users] Ublox EVK-M8T, Gary E. Miller, 2017/09/21