background image

See last page for copyright and document info, File: Reeve_GpsNtp-Pi_Setup.doc, Page 21 

8. Enable PPS Support in NTP Daemon 

 

The NTP daemon supplied with the Raspbian distribution for the RPi does not natively support PPS so it needs to 

be recompiled.  

 

To recompile ntp, first check 

http://archive.ntp.org/ntp4/

 for the latest production version of NTP. If different 

than shown below, modify the strings accordingly. The file will have the general form 

ntp-4.2.8px.tar.gz

, where 

x is the latest patch number (patch 8 is shown below). Next, run the following commands at the RPi prompt. 

Note: These steps may require up to 30 minutes and there will be long periods with no apparent activity on the 

SSH terminal: 

wget http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-4.2.8p8.tar.gz 
wget 

http://archive.ntp.org/ntp4/ntp-4.2.8p8.tar.gz

 [old address, do not use]

 

tar zxvf 

ntp-4.2.8p8.tar.gz

 

cd 

ntp-4.2.8p8

./configure --enable-linuxcaps 
make 

(see note below)

 

sudo make install 

 

Note: For the RPi 2, which has 4 cores, use 

make –j5

 instead of 

make

 in the above series of statements. 

 

Copy the recompiled files to their destination (enter the following very carefully to avoid typing mistakes): 

sudo service ntp stop 
sudo cp /usr/local/bin/ntp* /usr/bin/   
sudo cp /usr/local/sbin/ntp* /usr/sbin/ 

 

Now, modify the NTP configuration file to use the GPSD and PPS servers: 

sudo nano /etc/ntp.conf  

 

Add the following lines in the configuration file to specify the GPSD shared memory and kernel-mode PPS 

drivers. They can be placed above the server pool list (see screenshot below). The time1 parameter in the 

shared memory driver (127.127.28.0) probably will require adjustment but that will be covered later.  

 

# Coarse time ref-clock using shared memory GPS serial data 
server 127.127.28.0 minpoll 4 maxpoll 4 prefer 
fudge 127.127.28.0 flag1 1 time1 +0.500 refid GPSD 

 

# Precise time ref-clock using Kernel-mode PPS from GPS 
server 127.127.22.0 minpoll 4 maxpoll 4 
fudge 127.127.22.0 refid KPPS 

 

Note the flag1 setting in the shared memory driver for GPSD; this setting is for standalone operation in which 

initial time is established by the GPS serial data. If true standalone operation (no access to any other time 

server), these lines should be entered as shown above. However, if the RPi time server will have access to 

external servers, the flag1 1 setting can be deleted. Additional information on the fudge factors for the shared 

memory and PPS drivers is given at the end of this section. Additional information on the various reference clock 

drivers is at {

NTPRefClk

}. 

 

Summary of Contents for GpsNtp-Pi

Page 1: ...GpsNtp Pi Installation and Operation Guide See last page for copyright and document information...

Page 2: ...3 Operating System Installation 6 4 Install a Secure Shell Terminal Program 10 5 Basic RPi Setup 12 6 Install and Verify Pulse Per Second PPS 15 7 Install GPS Daemon and Associated Tools 17 8 Enable P...

Page 3: ...cks to Coordinated Universal Time figure 1 AC Power Adapter Local Area Network Ethernet Power Internet NTP Server using Raspberry Pi Model B Internet Router NTP Client 5 V Optional WLAN GNSS Receiver...

Page 4: ...are as of February 2015 and do not include shipping The HAB Supplies price includes an active antenna 2 The Adafruit product does not include any hardware for rigidly mounting the GPS daughterboard to...

Page 5: ...RAM data The battery jumper is a blob of solder covering two small pads It is circled in the images below before left and after right removal with a soldering iron and solder wick Note the incorrect...

Page 6: ...and specifications are not given by the vendors If a different antenna is contemplated the following guide may be used to select it Polarization Right hand circular Mode Active Impedance 50 ohm Volta...

Page 7: ...essible after the boards are enclosed Use a jumper from the RPi board to the rear panel where a power connector is installed A small dc dc converter may be installed in the enclosure to convert from s...

Page 8: ...See last page for copyright and document info File Reeve_GpsNtp Pi_Setup doc Page 6...

Page 9: ...this image to a 4 GB or larger micro SD memory card as follows Connect a card reader writer suitable for a micro SD memory card to the PC Insert the SD or micro SD memory card into the card reader wr...

Page 10: ...g the drive letter in My Computer or Explorer and selecting Eject Remove the memory card from the reader writer Memory card installation Insert the micro SD memory card into the slot connector on the...

Page 11: ...cond Power LED Red ON Timepulse LED Green OFF Power on Fix obtained tracking Status LED Red Flash 1 per 15 seconds Power LED Red ON Timepulse LED Green Flash 1 per second All LED indicators on the RPi...

Page 12: ...ttings Upper left Screenshot of PuTTY configuration window with the IP address for a test setup Your installation will have use a different address Upper right Upon first connection PuTTY asks for aut...

Page 13: ...y to remove power from the RPi the RPi must be properly shutdown before removing power just like a Windows PC Never remove power without first shutting down the RPi To shutdown log into RPi as describ...

Page 14: ...o save and close the editor Similarly replace the name in the etc hostname file sudo nano etc hostname Change the name from raspberry to GpsNtp Pi as in GpsNtp Pi Type CTRL X Exit Y yes Enter to save...

Page 15: ...tion 1 Expand filesystem Select Option 4 Internationalization Options Option 11 Change Locale en_US UTF 8 UTF 8 Use the spacebar to deselect en_GB UTF 8 UTF 8 Scroll down to en_US UTF 8 UTF 8 and sele...

Page 16: ...ile Reeve_GpsNtp Pi_Setup doc Page 14 After initial setup sudo reboot Now it is necessary to update the software and operating system These steps may require several minutes sudo apt get update sudo a...

Page 17: ...the GPS receiver sudo nano boot config txt Add a new line as shown below The value X 4 or 18 depending on GPS board The HAB GPS uses GPIO pin 18 and the Adafruit GPS uses GPIO pin 4 dtoverlay pps gpio...

Page 18: ...ine if PPS is working first ensure the GPS receiver is in the satellite tracking mode This may require up to 15 minutes from a cold start On the HAB Supplies GPS board the green PPS LED flashes about...

Page 19: ...d document info File Reeve_GpsNtp Pi_Setup doc Page 17 Also check sudo ppstest dev pps0 If the PPS software module is working output should be similar to shown below with the source 0 lines scrolling...

Page 20: ...tall GPSD and GPSD Clients sudo apt get install gpsd gpsd clients After installation configure GPSD Sudo dpkg reconfigure gpsd Follow the prompts to Start gpsd automatically Yes Automatically handle U...

Page 21: ...See last page for copyright and document info File Reeve_GpsNtp Pi_Setup doc Page 19 After GPSD has been configured reboot sudo reboot...

Page 22: ...enclosed data updates automatically The lower part scrolls as incoming data are displayed Of particular interest in the scrolling data are the GPRMC parameters which show position time and date if nec...

Page 23: ...stakes sudo service ntp stop sudo cp usr local bin ntp usr bin sudo cp usr local sbin ntp usr sbin Now modify the NTP configuration file to use the GPSD and PPS servers sudo nano etc ntp conf Add the...

Page 24: ...stics are not required leave the comment character statsdir var log ntpstats The NTP configuration file has several restrict statements with default settings Two in particular require modification Fin...

Page 25: ...te column shows the local address of the KPPS driver designated 22 rather than its name PPS 0 ntpq crv pn ntpq crv p If you repeat the query command over periods of tens of minutes you should see the...

Page 26: ...ed purpose of setting flag1 to 1 is for systems where the RTC backup cannot keep the time over long periods without power and the SHM clock must be able to force long distance initial jumps The PPS dr...

Page 27: ...cond PPS signal either indirectly via the PPS reference clock driver or directly via the kernel interface Source selected included in final set x Source false ticker out of tolerance Source selected f...

Page 28: ...rag leap seconds file from the Desktop to the new ntp directory Open a PuTTY shell session if not already open and log into the RPi If desired PuTTY can be open from WinSCP in Commands menu Open in Pu...

Page 29: ...See last page for copyright and document info File Reeve_GpsNtp Pi_Setup doc Page 27...

Page 30: ...gence requires a couple hours after satellite tracking starts but on subsequent starts convergence will be much faster The PPS is a precise signal with around 10 ns of jitter On the other hand the off...

Page 31: ...ordinary internet search The preferred client by far is NTP itself The Windows version may be obtained at NTP Win After installation setup the NTP client to use the IP address of the RPi NTP server F...

Page 32: ...s accessed by the GpsNtp Pi NTP server through an internet connection and access to them is enabled by uncommenting the pool statement in the ntp conf file pool us pool ntp org iburst minpoll 6 prefer...

Page 33: ...doc Page 31 Note If you plan to add your RPi NTP server to the pool you should not use the pool ntp org alias in the NTP configuration as described above Instead time servers should be hand picked fro...

Page 34: ...t com products networkscanner NMEA http www gpsinformation org dale nmea htm NTPAcc http www eecis udel edu mills ntp html accopt html NTPHack http lists ntp org listinfo hackers NTPJoin http www ntpp...

Page 35: ...ve edits 01 Mar 2015 0 7 Additional cleanup for distribution 15 Mar 2015 1 0 Distribution 1 Apr 2015 1 1 Added link to reference clock and enclosure descriptions 21 Apr 2015 1 2 Revised make for ntp 4...

Reviews: