我无法在 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
如何查找问题?在哪里查找?