Whilst trying to get the jpskmail client running under Raspbian on the Pi3 of DL1EEI we noticed that the gps deamon gpsd was not working anymore. When I checked on my laptop running Lubuntu 18.04 it turned out that the same error occurred, and it was not possible to get xgps or cgps working.

After some googling I got it working again. The error is probably caused by the new systemd routines in the distros. The internal TCP port (2947) could only be reached from localhost.

I changed 2 system files on the system:

1.: /etc/default/gpsd/gpsd

Change the file with your favourite editor (with sudo) to:

# Default settings for the gpsd init script and the hotplug wrapper.

# Start the gpsd daemon automatically at boot time
START_DAEMON=”true”

# Use USB hotplugging to add new USB devices automatically to the daemon
USBAUTO=”false

# Devices gpsd should collect to at boot time.
# They need to be read/writeable, either by user gpsd or the group dialout.
DEVICES=”/dev/ttyUSB0

# Other options you want to pass to gpsd
GPSD_OPTIONS=””

2.: /lib/systemd/system/gpsd.socket
Try to change the /lib/systemd/system/gpsd.socket file
with your preferred editor (using sudo) from:
ListenStream=127.0.0.1:2947 which listens to localhost only

to:
ListenStream=0.0.0.0:2947

3: reboot

That should do the trick.

xgps