Saya sudah membaca tentang mengkompilasi NTP dengan timepps.h disediakan untuk mendapatkan dukungan PPS. Apakah ada cara mudah untuk memeriksa versi repositori yang sudah dikompilasi atau lebih diinstal Ubuntu 14.04.1, Kernel 3.13.0-37 ) untuk dukungan PPS?
EDIT beberapa googles nanti ...
Saya memasukkan ini ke dalam /etc/ntp.conf
dan mulai ulang ntpd. Tampaknya konfigurasi ini benar? Saya menggunakan ini Papan breakout GPS di /dev/ttyS0
. Menurut dokumentasi ini harus memuaskan GPS dengan PPS. Baudrate adalah 9600 .
server 127.127.20.0 mode 18 minpoll 4 iburst prefer true
fudge 127.127.20.0 flag1 1 flag2 0 flag3 1 flag4 1
Saya menghabiskan beberapa waktu untuk membuatnya bekerja karena apparmor memblokir ntpd membuka port serial. Saya menemukan itu dari syslos. Karenanya saya menambahkan baris ini ke /etc/apparmor.d/tunables/ntpd
. Lalu berhasil.
@{NTPD_DEVICE}="/dev/ttyS0"
Izin pada perangkat adalah
$ ll /dev/ttyS0 /dev/pps* /dev/gps*
lrwxrwxrwx 1 root root 5 Okt 18 23:00 /dev/gps0 -> ttyS0
lrwxrwxrwx 1 root root 4 Okt 18 23:00 /dev/gpspps0 -> pps0
crw-rw-rw- 1 root dialout 251, 0 Okt 18 23:00 /dev/pps0
crw-rw-rw- 1 root dialout 4, 64 Okt 18 23:09 /dev/ttyS0
$ id ntp
uid=106(ntp) gid=113(ntp) Gruppen=113(ntp),20(dialout)
Untuk mencapai ini secara permanen, saya membuat beberapa udev aturan. Sedangkan perintah setserial tampaknya tidak berpengaruh jika saya memeriksa port setserial -a /dev/ttyS0
setelah boot sistem.
$ cat /etc/udev/rules.d/09-pps.rules
# Provide a symlink to /dev/ttyS0 and set low_latency for latency improvement
KERNEL=="ttyS0", SYMLINK+="gps0", MODE="0666"
KERNEL=="ttyS0", RUN+="/bin/setserial /dev/%k low_latency"
KERNEL=="ttyS0", RUN+="/usr/sbin/ldattach pps /dev/%k"
# Symlink /dev/pps0 to /dev/gpspps0
KERNEL=="pps0", SUBSYSTEM=="pps", DRIVER=="", SYMLINK+="gpspps0"
KERNEL=="pps0", GROUP="dialout"
KERNEL=="pps0", MODE="0666"
Setelah itu saya harus menghapus /var/lib/ntp/ntp.conf.dhcp
sekali. Karena itu berasal dari /etc/ntp.conf
di setiap acara DHCP atau hanya reboot. Jadi itu akan menghasilkan yang baru di startup.
Apakah saya masih perlu 127.127.22. * Entri (driver ATOM PPS)? Karena sebagaimana tercantum dalam dokumentasi jika saya gunakan flag1=1
PPS akan digunakan secara implisit? Tidak, ini berfungsi hanya dengan GPS NMEA (127.127.20.u).
Output saya dari ntpq -p
sekarang
remote refid st t when poll reach delay offset jitter
==============================================================================
-fritz.box 185.31.136.34 3 u 36 64 177 0.298 4.496 0.076
*arcticfox.dorid 192.53.103.104 2 u 43 64 177 14.125 2.041 1.307
+monitman.com 158.43.128.33 2 u 44 64 177 25.325 4.703 0.314
+spacys.de 212.82.32.15 2 u 43 64 177 24.156 -1.503 2.094
-cse-server.com 122.227.206.195 3 u 38 64 177 24.372 -3.421 0.618
oGPS_NMEA(0) .GPS. 0 l 1 16 377 0.000 -0.270 0.024
Untuk dukungan jam ATOM saya harus mengkompilasi ntp dengan dukungan jam ATOM yang diaktifkan.