+Note: For older Raspberry Pi models, it may be necessary to enable
+~pps-gpio~ via modifications to ~/etc/modules~ (see [[https://www.raspberrypi.org/forums/viewtopic.php?p=757747#p757747][link]]).
+
+***** Enable GPS device
+The Ozzmaker BerryGPS-IMU makes NMEA sentences available via the
+serial "UART" device ~/dev/ttyAMA0~. If bluetooth has not been
+disabled, the Raspberry Pi OS automatically creates a software "UART"
+device at ~/dev/serial0~. See the "[[file:~/git-OC/ninfacyzga-01/doc/setup/README.org::*Disable%20Bluetooth][Disable Bluetooth]]" section in the
+[[file:../setup/README.org][Main Setup]] Initial Startup procedure for instructions on how to
+disable bluetooth to free up ~/dev/ttyAMA0~ for use by ~gpsd~.
+
+***** Setup ~gpsd~
+See the "[[file:~/git-OC/ninfacyzga-01/doc/location/README.org::*Setup%20~gpsd~][Setup ~gpsd~]]" subsection within the "Initial Startup" section
+of the Location Logging [[file:~/git-OC/ninfacyzga-01/doc/location/README.org][~README.org~]] file. There is one additional
+change that must be made which is to add a ~/dev/pps0~ item to the
+~DEVICES=~ line in ~/etc/default/gpsd~ like so:
+
+: DEVICES="/dev/ttyAMA0 /dev/pps0"
+
+~/dev/ttyAMA0~ is where ~gpsd~ can get NMEA data from the GPS unit.
+
+~/dev/pps0~ is where ~gpsd~ can get a PPS signal.
+
+As an example, the following lines will be present in
+~/etc/default/gpsd~ if both location and time tracking are set up:
+
+#+BEGIN_EXAMPLE
+START_DAEMON="true"
+USBAUTO="false"
+DEVICES="/dev/ttyAMA0 /dev/pps0"
+GPSD_OPTIONS="-n"
+#+END_EXAMPLE
+
+Make sure to enable ~gpsd~ to automatically start as a system service.
+
+: $ sudo systemctl enable gpsd
+: $ sudo systemctl start gpsd
+
+***** Setup ~chrony~
+Modify the configuration file for ~chrony~ at ~/etc/chrony/chrony.conf~.
+
+: $ sudo nano /etc/chrony/chrony.conf
+
+Add the following lines:
+
+#+BEGIN_EXAMPLE
+# Get time from GPS (/dev/XXXX) and PPS (/dev/YYYY)
+#refclock SOCK /run/chrony.XXXX.sock refid GPS precision 1e-1 offset 0.0000
+#refclock SOCK /run/chrony.YYYY.sock refid PP precision 1e-7
+refclock SHM 0 refid GPS precision 1e-1 offset 0.0000 delay 0.2 stratum 1
+refclock SHM 1 refid PPS precision 1e-7 stratum 1
+#+END_EXAMPLE
+
+Where
+- ~XXXX~ : the basename of the GPS device's serial port. In this guide
+ it should be ~ttyAMA0~; other setups may use ~ttyS0~, ~ttyACM0~, or
+ ~serial0~.
+
+- ~YYYY~ : the basename of the PPS device's serial port. In this guide
+ it should be ~pps0~.
+
+Note: The ~refclock SOCK~ lines are left as comments in case ~gpsd~
+incorrectly maps the GPS and PPS data.
+
+The following commands may be useful for testing ~gpsd~ and ~chrony~
+configurations.
+- ~sudo chronyc sources -v~ : Shows time sources and associated accuracy
+ information.
+
+- ~sudo chronyc tracking~ : Shows the current time difference between
+ the reference clock and the system clock. Note: ~chrony~ gradually
+ attempts to reduce the difference by changing the system clock.
+
+- ~sudo chronyc makestep~ : Force ~chrony~ to set the system clock to
+ match the reference clock immediately.
+
+- ~sudo systemctl enable chrony~ : Enable automatic startup of
+ ~chrony~ (Note: This command shouldn't be necessary since the act of
+ installing ~chrony~ via ~sudo apt install chrony~ should
+ automatically enable it).
+
+- ~sudo systemctl stop chrony~ : Stop ~chrony~.