I now understand what systemd does, thank you. I've commented out my rc.local script as it wasn't running anyway (the startgpsd.txt log never updated with new date and time unless I manually ran the script) and tried rebooting, but that didn't work (same result). I also tried systemctl stop gpsd and disable gpsd and then running the gpsd command again, but got the same socket error and netstat -lnpt still shows 1/init holding the port open. Now that I understand what systemd is supposed to do, I'm left baffled at why it won't let gpsd use the port.beijota2 Aug 31 '16 at 21:43

  • I've also noticed that when I use cgps (one of the tests that supposed to help determine gpsd functionality) the data stream down in the bottom has all the needed information (meaning the GPS antenna is working, has a fix, and is transmitting data) but the table won't populate with the information, which I thought was odd. It can see it, but it won't use it. Maybe the parsing is wrong?beijota2 Aug 31 '16 at 21:50

  • 2
    Also try systemctl stop gspd.socket to shutdown the systemd-managed socket. I thought this would be done by shutting down the gpsd service, but maybe not.Mark Stosberg Sep 1 '16 at 13:48

  • Because I had made so many changes, I couldn't keep track of them all so I wiped and started from a fresh image. In rebuilding, I followed a tutorial for setting up GPSD for NTP (found here) which recommended disabling systemd (systemctl disable gpsd.socket and systemctl stop gpsd.service) and added GPSD_OPTIONS="-n" to /etc/default/gpsd so it would connect without waiting for a client first. In /lib/systemd/system I edited gpsd.service to comment out anything calling the gpsd.socket. So you were right. Thanks!beijota2 Sep 2 '16 at 20:12