gnss-sdr-monitor
gnss-sdr-monitor copied to clipboard
Data not streaming in...
Hi, I'm not able to get data to stream to the GUI, and am hoping you might suggest some things to try. I'm a new user of GNSS-SDR, but I'm getting a good solution (se figure attached). I have inserted the lines you suggest in the conf file (see attached), and I can get the GUI to connect (see attached). But no data is streaming through.
I'm running on Ubuntu 20.04, and I built GNSS-SDR with the "next" option. I also was able to get the monitor example on the gnss-sdr.org site to build and run. I tried to run your gnss-sdr-PVT-monitoring-client but it's not getting data either (maybe I've not got the PVT monitor setup correctly?). My RF front end is the HackRF with a GPSDO for the clock.
Thanks, I really appreciate any advice! Don
Hi Don (@AgileEngineeringLLC),
Try using these settings in your GNSS-SDR configuration:
;######### PVT CONFIG ############
PVT.enable_monitor=true
PVT.enable_protobuf=true
PVT.monitor_client_addresses=127.0.0.1
PVT.monitor_udp_port=1112
;######### MONITOR CONFIG ############
Monitor.enable_monitor=true
Monitor.enable_protobuf=true
Monitor.decimation_factor=1
Monitor.client_addresses=127.0.0.1
Monitor.udp_port=1111
Please do make sure that the settings on the GUI side match the GNSS-SDR configuration. The GNSS_Synchro port
must match Monitor.udp_port
and the Monitor_Pvt port
must match PVT.monitor_udp_port
.
In the menu bar of the GUI go to Edit > Preferences
, and verify that the port numbers are correct.
Please let me know if this works for you. Regards,
Álvaro
Muchas gracias! Finally got it streaming. Much of the issue is me getting back up-to-speed on Ubuntu, turns out some of my file mods weren't getting saved due to permissions issues. Great GUI, thx so much!
De nada Don! Glad that you got your setup working. I am also happy to hear that you like the GUI. I would like to make some improvements to it when time allows.
I am closing this issue now. Please feel free to reopen it or create a new one should you encounter any problems.
Regards, Álvaro
Hi - I am having a similar issues. Tried the suggested checks/fixes, but still not able to see anything other than telecommand.
Hi - I am having a similar issues. Tried the suggested checks/fixes, but still not able to see anything other than telecommand.
Hi, I'm rusty with linux and Ubuntu, but I get the following issues if I do not run the command with sudo. If I type sudo first and then run the app, everything works flawlessly. Do you have any suggestions how to fix this?
Hi @jmtobin-uh and @jt3232,
I'd like to investigate the issue given that some of you are experiencing problems, even though everything is working fine for me.
What connections show up if you run $ netstat -nutap | grep gnss
on a separate terminal window while running gnss-sdr and gnss-sdr-monitor in the background?
For instance, I see this:
$ netstat -nutap | grep gnss
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp 0 0 0.0.0.0:3333 0.0.0.0:* LISTEN 22454/gnss-sdr
tcp 0 0 127.0.0.1:51796 127.0.0.1:3333 ESTABLISHED 21022/./gnss-sdr-mo
tcp 0 0 127.0.0.1:3333 127.0.0.1:51796 ESTABLISHED 22454/gnss-sdr
udp 0 0 127.0.0.1:45151 127.0.0.1:1112 ESTABLISHED 22454/gnss-sdr
udp 0 0 127.0.0.1:35971 127.0.0.1:1111 ESTABLISHED 22454/gnss-sdr
udp6 38400 0 :::1111 :::* 21022/./gnss-sdr-mo
udp6 3840 0 :::1112 :::* 21022/./gnss-sdr-mo
You can clearly see how between gnss-sdr and gnss-sdr-monitor there is an established TCP connection (both ways) for the Telecommand interface and two UDP streams, one for the Monitor block streaming and the other for the PVT block streaming.
gnss-sdr TCP 3333 ---------> TCP 51796 gnss-sdr-monitor
gnss-sdr TCP 3333 <--------- TCP 51796 gnss-sdr-monitor
gnss-sdr UDP 45151 ---------> UDP 1112 gnss-sdr-monitor
gnss-sdr UDP 35971 ---------> UDP 1111 gnss-sdr-monitor
Are your outputs different from mine? Let me know.
Regards, Álvaro
Here is what I get when using "sudo" to start the monitor:
netstat -nutap | grep gnss
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp 0 0 0.0.0.0:3333 0.0.0.0:* LISTEN 1436/gnss-sdr
tcp 0 0 0.0.0.0:2101 0.0.0.0:* LISTEN 1436/gnss-sdr
tcp 0 0 127.0.0.1:2101 127.0.0.1:38574 ESTABLISHED 1436/gnss-sdr
tcp 0 0 127.0.0.1:38574 127.0.0.1:2101 ESTABLISHED 1436/gnss-sdr
udp 0 0 10.10.10.5:50137 127.0.0.1:1153 ESTABLISHED 1436/gnss-sdr
udp 0 0 10.10.10.5:40142 127.0.0.1:1152 ESTABLISHED 1436/gnss-sdr
udp 0 0 10.10.10.5:44564 127.0.0.1:1151 ESTABLISHED 1436/gnss-sdr
Without sudo:
netstat -nutap | grep gnss
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp 0 0 0.0.0.0:3333 0.0.0.0:* LISTEN 4107/gnss-sdr
tcp 0 0 0.0.0.0:2101 0.0.0.0:* LISTEN 4107/gnss-sdr
tcp 0 0 127.0.0.1:39952 127.0.0.1:2101 ESTABLISHED 4107/gnss-sdr
tcp 0 0 127.0.0.1:2101 127.0.0.1:39952 ESTABLISHED 4107/gnss-sdr
udp 0 0 10.10.10.5:49337 127.0.0.1:1152 ESTABLISHED 4107/gnss-sdr
udp 0 0 10.10.10.5:49686 10.10.10.1:1151 ESTABLISHED 4107/gnss-sdr
udp 0 0 10.10.10.5:56059 127.0.0.1:1153 ESTABLISHED 4107/gnss-sdr
udp6 0 0 :::1111 :::* 4265/gnss-sdr-monit
udp6 0 0 :::1112 :::* 4265/gnss-sdr-monit
After running this, it has become apparent to me that I need to edit my preferences again. I guess running it in sudo saves different preferences than when running it normally. This worked for me and now I see messages when I run it without sudo.
Hi Alvaro - I do not see UDP streams.
(Not` all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp 0 0 0.0.0.0:1234 0.0.0.0:* LISTEN 21750/gnss-sdr
tcp 0 0 0.0.0.0:2101 0.0.0.0:* LISTEN 21750/gnss-sdr
tcp 0 0 127.0.0.1:1234 127.0.0.1:53076 ESTABLISHED 21750/gnss-sdr
tcp 0 0 127.0.0.1:60588 127.0.0.1:2101 ESTABLISHED 21750/gnss-sdr
tcp 0 0 127.0.0.1:2101 127.0.0.1:60588 ESTABLISHED 21750/gnss-sdr
@jt3232
After running this, it has become apparent to me that I need to edit my preferences again. I guess running it in sudo saves different preferences than when running it normally. This worked for me and now I see messages when I run it without sudo.
Good observation. I looked into it and found that running gnss-sdr-monitor with sudo
changes the ownership of the gnss-sdr-monitor.conf
configuration file[1] to root
, making it impossible for the settings to be saved afterwards when running the program normally (without sudo
) as shown below:
File permissions before running with sudo
:
$ ls -l ~/.config/gnss-sdr/gnss-sdr-monitor.conf
-rw-rw-r-- 1 alvaro alvaro 461 Sep 8 19:28 /home/alvaro/.config/gnss-sdr/gnss-sdr-monitor.conf
File permissions after running with sudo
:
$ ls -l ~/.config/gnss-sdr/gnss-sdr-monitor.conf
-rw-rw-r-- 1 root root 461 Sep 8 19:29 /home/alvaro/.config/gnss-sdr/gnss-sdr-monitor.conf
You can fix this by restoring the original ownership of the file with the chown
command (replace <username>
with your actual username):
$ sudo chown -v <username>:<username> ~/.config/gnss-sdr/gnss-sdr-monitor.conf
The moral of the story is that you should avoid running gnss-sdr-monitor (or any program really) with superuser privileges unless it is absolutely necessary.
Please run the GUI as a normal user from now on and you should be fine.
I hope this helps. Álvaro
[1]: The default location of the configuration file is ~/.config/gnss-sdr/gnss-sdr-monitor.conf
, in case you want to find it.
@jmtobin-uh
Hi Alvaro - I do not see UDP streams.
Have you activated the Monitor block and PVT block UDP streams in your GNSS-SDR configuration file?
-
If the answer is "No", activate them and try again.
-
If the answer is "Yes" then maybe you ran the
netstat
command too early (before GNSS-SDR was getting position fixes). Try runningnetstat
in combination with thewatch
command like this:
$ watch -n 1 'netstat -nutap | grep gnss'
This will make it easier for you to actively monitor you connections.
Let me know what connections show up now.
Álvaro