chrony и gpsd: сокет или соединение PPS
Я пытаюсь получить высокую точность времени от GPS-приемника GlobalSat BU-353s4 (/dev/ttyUSB0
) через gpsd
в Raspberry PI с ArchLinux.
/etc/chrony.conf
содержит:
refclock SHM 0 delay 0.5 refid NEMA
refclock SHM 1 offset 0.0 delay 0.1 refid PPS
refclock SOCK /var/run/chrony.ttyUSB0.sock delay 0.0 refid SOCK
Я получил время через NEMA (источник SHM 0) (но с низкой точностью).
gpsd
не нашел расширение PPS ядра, в результате источник SHM 1 не работал:
gpsd:WARN: KPPS:/dev/ttyUSB0 kernel PPS unavailable, PPS accuracy will suffer
Но lsmod
показывает, что модули pps загружены:
# lsmod
Module Size Used by
pps_ldisc 2305 0
pps_core 7982 1 pps_ldisc
Источник сокетов также не работает:
# chronyc sources
210 Number of sources = 9
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
#x NEMA 0 4 377 18 -532ms[ -532ms] +/- 252ms
#? SOCK 0 4 0 - +0ns[ +0ns] +/- 0ns
Но gpsd -N -D8 /dev/ttyUSB0
показывает, что файл sock открыт:
gpsd:RAW: PPS:/dev/ttyUSB0 using chrony socket: /var/run/chrony.ttyUSB0.sock
Вопрос: как сделать ядро PPS доступным для gpsd
или заставить сокет работать?
1 ответ
Во-первых, pps НЕ доступен через USB. Вам нужно использовать прямое соединение. USB опрошен и поэтому не может обеспечить достаточно точный сигнал. Я узнал об этом, пытаясь настроить некоторые окна Windows на работе.
Ваш модуль GPS не имеет PPS, он будет на отдельном выводе или разъеме. Это должно быть подключено к выводу GPIO на Pi.
Я только что установил два Pi для ntp, и это сайт, который я использовал для справки, используя модуль Adafruit GPS. (Картинка с синей коробкой)
http://www.satsignal.eu/ntp/Raspberry-Pi-NTP.html
Я боролся со вторым, потому что у меня не было блокировки GPS, так как мне нужна была вторая антенна, и на улице шел дождь.