アルペンスキータイミングシステム開発中

アルペンスキー用のタイム測定器を開発しようとしています。

chrony & gps 共有メモリ

gpsdからNMEAとPPSを共有メモリ経由でもらう

# for gps and pps by gpsd
refclock SHM 0 refid GPS precision 1e-6 offset 0.401
refclock SHM 2 refid PPS precision 1e-9 

一行目がNMEA用、precisionはよくわからないがとりあえず[ GPSD Time Service HOWTOを参考にした。 offsetはntpdのtime1と同じでデータの延滞時刻だと思う。

2行目がpps用、SHMに続く数字を最初1にしていたが同期しないので悩んでいたがntpshmonを実行すると0と2が出ているので2にしてみると同期した。なぜ1が出ないかは不明。

$ sudo ntpshmon
ntpshmmon version 1
#      Name   Seen@                Clock                Real               L Prec
sample NTP0 1463872322.721478570 1463872322.411618612 1463872322.000000000 0  -1
sample NTP2 1463872322.721971951 1463872322.000001586 1463872322.000000000 0 -20
sample NTP2 1463872323.222498477 1463872323.000001995 1463872323.000000000 0 -20
sample NTP0 1463872323.408892176 1463872323.407990624 1463872323.000000000 0  -1

次のようにPPSに*が付けばOK

$ chronyc sources
210 Number of sources = 6
MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
#- GPS                           0   4   377    15    +30ms[  +30ms] +/- 5442us
#* PPS1                          0   4   377    16   +146ns[ +217ns] +/-  129ns
^- 2001:620:0:fffc::123:47       2  10   377   972    -22ms[  -22ms] +/-  139ms
^- 2001:67c:440:824:91:236:2     2  10   377  1002    +13ms[  +13ms] +/-  132ms
^- stratum2-4.NTP.TechFak.Un     2  10   377   398    -26ms[  -26ms] +/-  144ms
^- ns2.wlg.telesmart.co.nz       2  10   377   993  +1379us[+1386us] +/-  148ms