I am very much enjoying using the astroberry server on my RPi3B+. So far I haven’t used it headless, nor tried operation in a proper dark field site away from my home environment. So my prepoccupation is to get my U-blox7 USB GPS dongle working with the indi driver GPSD. No success although the GPS dongle is finding good satellite signals and gives time and location fixes in test programmes on a laptop running Ubuntu MATE 16.04 and on a second RPi3B+ running Raspian. KStars/EKOS/INDI recognises the presence of the GPS signal source but no Fix is ever acknowledged. Any recommendations?
Hi I use Ublox 7 with Indi_gpsd on various version of O/S and on RPI's - hough not Astroberry. Have you tried the GPSD-Clients (might need downloading) on the machine where the GPS dongle is ? Does it give valid data .
You can also edit /etc/default/gpsd to alter the options to include -D7 (or whatever you like) this will log the output from GPSD in SYSLOG plus change the logging in Indi for GPS to "verbose" and "to file".
If nothing else this will help Kaczorek work out the problem. I never get FIX in the house due to weak signals! but its fine outside.
Please test the GPS on your raspberry with gpsd-clients. Install the package:
sudo apt install gpsd-clients
...and then run gpsmon or cgps.
If they get fix INDI should get fix too. If they not there is some misconfiguration. Inspect /etc/default/gps and check if serial port for your GPS is configured properly. Also make sure that gpsd is run with a user account that has right to access serial devices (it should be a member of dialout group).
So I tried gpsmon, cgps and xgps but none of these obtained any fix from the GPS dongle. The dongle was flashing to indicate it had obtained a fix. I changed over to my Raspian SD image and the same dongle registered 12 satellites in xgps, six of which were used for measurement.
So I need to dig a little deeper into the access rights....
Thanks for the link. I know the GPS dongle is ‘seeing’ plenty of satellites clearly, so the problem in my Ubuntu MATE and Astroberry installation is more subtle.
Are you getting NMEA data when connecting to GPS over serial? i.e. miniterm /dev/ttyUSB0 (or whatever your GPS device is). Check the serial device in your /etc/default/gps first. It looks like you're not using the proper serial device.
Dont know if this is related but on testing Astroberry on a RPI3b+ with a remote GPSD (so shouldn't) be effected by local GPSD I notice that GPSD locally is started with the -N -n option by default which I believe makes GPSD start on boot query the device and not wait for GPSMON or other query. This is, in my case is ,not needed as he GPSD is on another device and communicates via Indi_gpsd but on looking at the logs GPSD locally (on the RPI3b+) is failing as there is no device!
Maybe the user could try removing the -n and the -N (run in foreground) from the /etc/default/GPSD (or else where ?) and thrn try GPSMON etc and see if that helps.
Hi Clive
The "-n" option is configured intentionally so gpsd daemon gets the fix as soon as possible and GPS data is available to a client right after connection. See gpsd manual:
It is configured in /etc/default/gpsd (see GPSD_OPTIONS="-n"). Users are free to change it setting GPSD_OPTIONS="" - AFAIK the only impact would be longer fix time, since gpsd will poll data from GPS device only if a client is connected (so no ready to use gps data at connection time).
I have no idea where the "-N" option comes from. It is not explicitly configured anywhere in the Astroberry Server.
I think none of the above would influence the results, but feedback is much appreciated.
What kind of problem does it cause? I can't see any in the attached logs. These are absolutely normal log entries if you don't have GPS connected to /dev/ttyS0 or PPS signal is not available to kernel (separate connection required, not available for USB dongles AFAIK).
Let me explain it.
GPSD service gets GPS data from a device over a serial port. If you don't get valid NMEA data over your serial you cannot expect GPS working.
Default configuration in Astroberry Server assumes you connect your device to hardware serial port available on RPi on GPIO (pins 8 and 10) hence serial device in /etc/default/gpsd is set to DEVICES="/dev/ttyS0". If you connect your device over USB there's nothing on /dev/ttyS0 (gps is not connected to hardware serial on RPi!) and you need to change the configuration to (presumably) DEVICES="/dev/ttyUSB0" (or anything else, depending on how the system recognizes your device). After changing configuration restart GPSD service (sudo service gpsd restart) and you should be fine. If you're not, you need to check your serial. Stop GPSD service (sudo service gpsd stop) and connect any serial terminal (minicom or miniterm or screen or whatever you like) to GPS serial port e.g. miniterm /dev/ttyUSB0. You should see NMEA data flowing from your GPS device. If you don't it is either wrong serial port or wrong serial speed.
And last but not least - please review carefully gps drivers description. There are two of them, namely
GPS
and
GPS NMEA
.