$ sudo apt-get update
$ sudo apt-get install gpsd gpsd-client python-gps
Enable the serial interface and disable serial login shell with raspi-config
then reboot.
Confirm /dev/ttyS0 exists
$ ls -l /dev/serial*
lrwxrwxrwx 1 root root 5 May 9 10:38 /dev/serial0 -> ttyS0
lrwxrwxrwx 1 root root 7 May 9 10:38 /dev/serial1 -> ttyAMA0
Configure gpsd to use /dev/ttyS0 in /etc/defaults/gpsd then restart gpsd service.
Use cgps
command to make sure it works.
@wolfg1916, got your gps_demo.py to work, see revisions:
https://gist.github.com/jilkka/1b5b9704ed8fd491e769897a0248e7cc/revisions