/msf

reads MSF data on a raspberry pi GPIO pin and feeds it into ntpd

Primary LanguageC

msf
===

Reads the time from an MSF radio receiver and feeds it into
an NTP daemon running on a Raspberry Pi.

Copyright Ben Clifford and CQX Limited, 2013-2017

Installing
===============

* Get the hardware:

  * A Raspberry Pi 2

  * (the right kind of) MSF radio board.
    I use a SYM-RFT-60 from Symtrik.

* Get the code

  git clone https://github.com/benclifford/msf.git

* Build the code 

  make

* Attach the output of the clock module to GPIO pin 25

* Configure ntpd:

  Add these lines to /etc/ntpd.conf and restart ntpd:

  server 127.127.28.2
  fudge 127.127.28.2 refid MSF time1 0.018

  and restart ntpd:
  sudo /etc/init.d/ntp restart

* Start msf:

  sudo ./start.sh

* Watch a few minutes for the output to appear.

  You should see the symbol . appear every time the LED on the
  clock module turns on or off, and after a minute or two if a decode
  is successful, you should see a bunch of decoding information,
  including a timestamp.

* Move the radio board/antenna around until you get a decent signal:
  there should be about one pulse per second visible in the onboard LED
  rather than nothing, or random flickering.

* After even more minutes, check ntp is receiving the time from msf.

  ntpq -p

  ...
  *SHM(2)          .MSF.            0 l   64   64  317    0.000  -18.261   8.695
  ...