GPS 모듈을 동기화 소스(NMEA + PPS)로 사용하도록 NTP를 구성할 수 없습니다.

GPS 모듈을 동기화 소스(NMEA + PPS)로 사용하도록 NTP를 구성할 수 없습니다.

Ubuntu 18.04.3 LTS(Linux 4.15.0-74-generic)에서 NTP를 구성할 수 없습니다. 동기화 소스로 GPS 모듈의 NMEA + PPS를 사용하고 싶습니다.

GPS 모듈은 SILABS CP2102 인터페이스 변환기를 사용하여 USB를 통해 연결됩니다.

Bus 002 Device 003: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP210x UART Bridge / myAVR mySmartUSB light

PPS GPS 수신기 신호는 변환기의 DCD 라인에 연결됩니다. NMEA 데이터를 가져와서 NTP에서 사용하는 데에는 문제가 없습니다. PPS 신호를 사용하는 데 문제가 있습니다. 나는 ldattach PPS /dev/ttyUSB0을 수행합니다:

[ 1815.641450] pps_ldisc: PPS line discipline registered
[ 1815.641812] pps pps0: new PPS source usbserial2
[ 1815.641820] pps pps0: source "/dev/ttyUSB0" added

해당 pps0 노드가 /dev에 나타납니다. 모든 것이 괜찮아 보이지만 작동하지 않습니다.

ppswatch /dev/pps0
trying PPS source "/dev/pps0"
found PPS source "/dev/pps0"
time_pps_fetch() error -1 (Connection timed out)
time_pps_fetch() error -1 (Connection timed out)

따라서 NTP는 PPS 신호를 볼 수 없습니다. 커널에는 다음과 같은 지원이 포함된 것 같습니다.

# HSI clients
#
CONFIG_HSI_CHAR=m
CONFIG_PPS=m
# CONFIG_PPS_DEBUG is not set

#
# PPS clients support
#
# CONFIG_PPS_CLIENT_KTIMER is not set
CONFIG_PPS_CLIENT_LDISC=m
CONFIG_PPS_CLIENT_PARPORT=m
CONFIG_PPS_CLIENT_GPIO=m

ldattach가 로드된 후의 pps_ldisc:

lsmod|grep pps
pps_ldisc              16384  1
pps_core               20480  2 pps_ldisc,ptp

문제를 찾는 방법은 무엇입니까? 어디를 봐야 할까요?

관련 정보