feat(doc/time/README):Replace ntpsec/ntp with chrony
[EVA-2020-02.git] / doc / location / README.org
index b87dcd55f1822e560597dd3ec6ce43ff5c4d492a..07163d4ba3c1fa9d742443fc932fbdbef75f5879 100644 (file)
@@ -5,7 +5,7 @@
 ** About
 This document was created by Steven Baltakatei Sandoval on
 ~2020-06-29T12:14Z~ under a [[https://creativecommons.org/licenses/by-sa/4.0/][Creative Commons BY-SA 4.0 license]]. It
-was updated by Steven Baltakatei Sandoval on ~2020-10-07T23:08Z~
+was updated by Steven Baltakatei Sandoval on ~2020-10-16T23:32Z~
 
 ** Narrative
 Ninfacyzga-01 records (logs) its position in time and space using a
@@ -27,12 +27,9 @@ file may be compressed by ~gzip~ and encrypted by ~age~. It is an
 executable file contained within this repository at ~exec/bklog~. It
 should be copied to ~$HOME/.local/bin~.
 
-~bkgpslog~ : A legacy bash script similar to ~bklog~ but narrower in
-scope in that it only records output from ~gpspipe~.
-
-~gpsd~ : A background daemon app capable of interfacing with the
-Ozzmaker BerryGPS-IMU's GPS submodule. Installed and initialized by
-~apt~.
+[[https://tracker.debian.org/pkg/gpsd][~gpsd~]] : A background daemon app capable of interfacing with the
+[[https://ozzmaker.com/berrygps-berrygps-imu-quick-start-guide/][Ozzmaker BerryGPS-IMU]]'s GPS submodule. Installed and initialized by
+~apt~. Should be installed along with the ~gpsd-clients~ package.
 
 ~gpspipe~ : A command line app that polls ~gpsd~ and produces a stream
 stdout consisting of GPS data lines in NMEA format. Installed via
@@ -100,10 +97,57 @@ possible.
 
 **** Software Setup
 ***** Install Executables
-See [[file:../setup/README.org][Main Setup]] procedures.
+Follow the [[file:../setup/README.org][Main Setup]] procedures to obtain required files from this
+repository.
+
+Install ~gpsd~, ~gpsd-clients~, and ~gpsbabel~.
+
+: $ sudo apt install gpsd gpsd-clients gpsbabel
+
+***** Setup Serial for BerryGPS
+The Ozzmaker BerryGPS-IMU unit requires that the serial console be
+disabled and the serial port enabled. (see [[https://ozzmaker.com/berrygps-setup-guide-raspberry-pi/][ref]]).
+
+: $ sudo raspi-config
+
+Navigate to ~5 Interfacing Options~, then ~P6 Serial~.
+
+When prompted "Would you like a login shell to be accessible over
+serial?", answer ~No~.
+
+When prompted "Would you like the serial port hardware to be
+enabled?", answer ~Yes~.
+
+***** Setup ~gpsd~
+~gpsd~ needs to know which serial port to look at for NMEA location
+data generated by the GPS unit. This can be done by modifying the
+~gpsd~ configuration file at ~/etc/default/gpsd~.
+
+: sudo nano /etc/default/gpsd
+
+Make sure the following lines are present:
+
+#+BEGIN_EXAMPLE
+START_DAEMON="true"
+USBAUTO="false"
+DEVICES="/dev/ttyAMA0"
+GPSD_OPTIONS="-n"
+#+END_EXAMPLE
+
+NOTE: The ~DEVICES=~ line must be adjusted if the the ~ninfacyzga~
+device is configured to also track time.
+
+NOTE: The ~-n~ option causes ~gpsd~ to begin polling GPS devices
+without waiting for a client to connect. This is important if ~gpsd~
+provides data to other applications (ex: ~gpspipe~, ~chrony~).
+
+Restart ~gpsd~ via:
+
+: $ sudo systemctl restart gpsd.service
+
+Run ~gpsmon~ to verify that location data is being recorded.
 
-Install ~gpsd~, ~gpspipe~, ~git~, and this repository for location
-logging capability.
+: $ gpsmon
 
 ***** Automatic Start Configuration
 It is recommended to create a daily ~cron~ job that executes a bash