Running your LimeSDR on GNSS_SDR on Ubuntu 17.10

@osqzss,

When I’m in terminal, I typed in ‘make’ on the command line and hit return. When I do I get the line you mentioned (it’s shown when I hit return):

$ gcc -O2 -Wall -o LimeGPS limegps.c gpssim.c -lm -lpthread -lLimeSuite

Even when I type that line into the command line in terminal is just comes back with nothing, and when I try to execute the command and hit enter I get:

LimeGPS: command not found

I even tried:

sudo LimeGPS

…and the same thing…It’s as if it’s not compiling. And I know I have GCC installed because it’s a part of the earlier resources that have to be installed.

I’m good at compiling code on my machine, but for some reason this isn’t working and it’s not really compiling anything. Please let me know where I’m going wrong on this - I’ve cloned your repository to the letter and I see all the files for the compile to happen, just nothing is happening.

Let me know - thanks in advance for your help with this, @osqzss,

73 de Marty, KN0CK

Marty,

I couldn’t reproduce your issue on my Ubuntu environment. Here’s the screenshot of the command lines to clone, build and test the software. The version of GCC is 7.2.0-8ubuntu3.

There is one thing that I need to correct in my previous post. Since the makefile will generate the executable in the local directory, you have to specify its location by adding ./ to run the software.

$ ./LimeGPS -e brdc0350.18n

1 Like

@osqzss,

Worked like a charm when I was able to start the app with:

./LimeGPS -e brdc0350.18n

THAT did the trick…Now off to put my other Lime online and try it with LimeGPS with GNSS_SDR…stay tuned…

73 de Marty, KN0CK

@osqzss,

Well - no cigar…I tried running gnss-sdr with the new .conf file and was met with the following picture when I tried running my V1.4 LimeSDR on GNSS-SDR and the new .conf file:

Apparently there’s an illegal instruction being executed right after it sets up the antenna and such. I’m using the ‘next’ branch like you mentioned on an earlier post and compiled from that.

Anything you see suspicious here? GNSS-SDR worked before with the old .conf file (and admittedly no antenna selection), but dumps out right after it sets everything up. I am using your .conf file verbatim - no changes at all.

For the record, my Lime shows the following in LimeSuite:

Lime Info

…so I’m pretty sure my Lime is up to date with the latest. This either has to be .conf related or application specific. I will check again tonight and see if there was an error in my build - so stay tuned on that, too. UPDATE: The build is good - - it’s the ‘next’ build.

Let me know what you think, @osqzss…I’m willing to try what you suggest here to get my Lime playing again with GNSS-SDR on your branch.

73 de Marty, KN0CK

P.S. - LimeGPS REALLY RULES…!! It works PERFECTLY…!! Love that app - THANK YOU…!!

Marty,

I’ve just cloned and built GNSS-SDR from the latest ‘next’ branch and have no problem to run it with the gnss-sdr_GPS_L1_LimeSDR.conf file in the ‘conf’ folder. I’m sorry I couldn’t be much help on this issue.

1 Like

@osqzss,

All good - I’ll keep looking at this from my end. I have the same build on my i3 machine running Ubuntu 17.10 and it’s running fine - - everything works and does not exhibit this error, so it must be the other Core Duo machine.

I do thank you for checking that, though… :slight_smile:

73 de Marty, KN0CK

@osqzss,

This is probably more suited for the GNSS-SDR forum, but I thought you might know. I am trying in vain to obtain ‘Observables’ and ‘NMEA’ data from GNSS-SDR with the following config file but all I’m getting is 0 bytes on both files and I know I’m seeing satellites by what I see scrolling on the screen and looking at the ephemeris XML files - I’m truly seeing the satellites in great shape. Here is my config file:

[GNSS-SDR]

;######### GLOBAL OPTIONS ##################
GNSS-SDR.internal_fs_hz=2000000

;######### SIGNAL_SOURCE CONFIG ############
SignalSource.implementation=Osmosdr_Signal_Source
SignalSource.item_type=gr_complex
SignalSource.sampling_frequency=2000000
;# LimeSDR RX1 antennas: NONE,LNAH,LNAL,LNAW
SignalSource.antenna=LNAW
SignalSource.freq=1575420000
SignalSource.gain=40
SignalSource.rf_gain=40
SignalSource.if_gain=30
SignalSource.AGC_enabled=false
SignalSource.samples=0
SignalSource.repeat=false
;# Next line enables the LimeSDR
SignalSource.osmosdr_args=driver=lime,soapy=0
SignalSource.enable_throttle_control=false
SignalSource.dump=false
SignalSource.dump_filename=./LimeSDR_signal_source.dat

;######### SIGNAL_CONDITIONER CONFIG ############
SignalConditioner.implementation=Signal_Conditioner

;######### DATA_TYPE_ADAPTER CONFIG ############
DataTypeAdapter.implementation=Pass_Through

;######### INPUT_FILTER CONFIG ############
InputFilter.implementation=Freq_Xlating_Fir_Filter
InputFilter.decimation_factor=1
InputFilter.input_item_type=gr_complex
InputFilter.output_item_type=gr_complex
InputFilter.taps_item_type=float
InputFilter.number_of_taps=5
InputFilter.number_of_bands=2
InputFilter.band1_begin=0.0
InputFilter.band1_end=0.85
InputFilter.band2_begin=0.9
InputFilter.band2_end=1.0
InputFilter.ampl1_begin=1.0
InputFilter.ampl1_end=1.0
InputFilter.ampl2_begin=0.0
InputFilter.ampl2_end=0.0
InputFilter.band1_error=1.0
InputFilter.band2_error=1.0
InputFilter.filter_type=bandpass
InputFilter.grid_density=16
InputFilter.dump=false
InputFilter.dump_filename=…/data/input_filter.dat

;######### RESAMPLER CONFIG ############
Resampler.implementation=Pass_Through

;######### CHANNELS GLOBAL CONFIG ############
Channels_1C.count=8
Channels.in_acquisition=1
Channel.signal=1C

;######### ACQUISITION GLOBAL CONFIG ############
Acquisition_1C.implementation=GPS_L1_CA_PCPS_Acquisition_Fine_Doppler
Acquisition_1C.item_type=gr_complex
Acquisition_1C.if=0
Acquisition_1C.sampled_ms=1
Acquisition_1C.threshold=0.015
Acquisition_1C.doppler_max=10000
Acquisition_1C.doppler_min=-10000
Acquisition_1C.doppler_step=500
Acquisition_1C.max_dwells=15
Acquisition_1C.dump=false
Acquisition_1C.dump_filename=./acq_dump.dat

;######### TRACKING GLOBAL CONFIG ############
Tracking_1C.implementation=GPS_L1_CA_DLL_PLL_Tracking
Tracking_1C.item_type=gr_complex
Tracking_1C.if=0
Tracking_1C.pll_bw_hz=30.0;
Tracking_1C.dll_bw_hz=4.0;
Tracking_1C.order=3;
Tracking_1C.early_late_space_chips=0.5;
Tracking_1C.dump=false
Tracking_1C.dump_filename=./tracking_ch_

;######### TELEMETRY DECODER GPS CONFIG ############
TelemetryDecoder_1C.implementation=GPS_L1_CA_Telemetry_Decoder
TelemetryDecoder_1C.dump=false
TelemetryDecoder_1C.decimation_factor=1;

;######### OBSERVABLES CONFIG ############
Observables.implementation=GPS_L1_CA_Observables
Observables.dump=true
Observables.dump_filename=./observables.dat

;######### PVT CONFIG ############
PVT.implementation=GPS_L1_CA_PVT
PVT.flag_averaging=true
PVT.averaging_depth=5
PVT.output_rate_ms=100
PVT.display_rate_ms=500
PVT.flag_nmea_tty_port=false;
PVT.nmea_dump_devname=/dev/pts/4
PVT.nmea_dump_filename=./nmea_pvt.nmea
PVT.flag_rtcm_server=false
PVT.flag_rtcm_tty_port=false
PVT.rtcm_dump_devname=/dev/pts/1
PVT.dump=true
PVT.dump_filename=./PVT

From this, can you see any reason why I’m not getting Observable or NMEA data? Please let me know what findings you see in my file - thanks in advance for helping me with this.

73 de Marty, KN0CK

@martywittrock

I run a quick test with your configuration file and found no problem to get the observables and NMEA log files. I’m using the gnss-sdr built from the latest ‘next’ branch.

1 Like

@osqzss,

Thanks for running that for me - much appreciated. I actually found my error and was embarassed when I discoverd it…I didn’t run ‘volk_gnsssdr_profile’…Once I did that I started seeing the Observables and NMEA data. But I do thank youfor replying back and running my file - greatly appreciated.

73 de Marty, KN0CK

@osqzss,

Quick question…I see when GNSS-SDR kicks off a run that there are assigned gains set at the time of initialization but wondered if there’s a way to adjust the gains (LNA, PIA, and TIA) for the Lime in the script or is that ‘hard-coded’? When you have a chance to respond on that let me know - I’m wanting to change the gain settings because I think they’re not optimal for the LimeSDR - but let me know your thoughts on that, too. My receive runs seem a little too inconsistent where it take anywhere from 2 to 4 minutes to acquire a position fix and obtain Observable and NMEA data. I’m using 2 preamps with no less than 20dB gain attached to a pretty good GPS antenna when I’m doing collection for NMEA data.

Again, let me know your thoughts on this - thanks for reviewing this message,

Marty

Marty,

I think you can set the total RX gain with the SignalSource.gain parameter in your configuration file. You don’t need SignalSource.rf_gain or SignalSouce.if_gain. However, I’m not entirely sure what happens after RX calibration using MCU. The PGA, LNA and TIA shown in the terminal are completely different from the SignalSource.gain value. Does the calibration process overwrite the gain parameters?

https://wiki.myriadrf.org/LMS7002Mr3_Calibration_Using_MCU

1 Like

@osqzss,

Good question - Not entirely certain since I’ve never calibrated by Limes - I just use the factory (or firmware settings) unless I have control of them in other applications (SDRConsole V3.0, GQRX, etc). GNSS-SDR doesn’t give you much in the way of fine adjustment and I’m not sure what the SignalSource.gain setting will do, but I’ll try it tonight and see - stay tuned.

Marty

@osqzss,

Okay - I’m here to report that by adjusting SignalSource.gain the three LimeSDR adjustments (LNA, PIA, and TIA) DO in fact change. I tried several different gain settings last night starting with ‘30’, then upping that to ‘40’, then ‘45’ and then finally ‘47’ and watched the gain settings on LNA, PIA, and TIA to change - and they did, they all moved up from what they were. So there is some correlation in how SoapySDR, gr-osmosdr, and other factors move those gain settings from GNSS-SDR, but it DOES adjust them.

More as I have it - stay tuned,

Marty

@osqzss
hi guys, i am a bit off topic but this thread seems the best place to post… i am trying to run osqzss/LimeGPS on windows on a just received limeSDR and checking its output with a uBlox GPs receiver i used for other similar projects. before running sw i upgraded fw with limesuite to latest version.
running the sw just with the ephemeris data file as parameter starts transmitting something, the receiver locks to signals and starts displaying date and time BUT after a short while it seems it loses lock on wanted SV, unwanted SV start to pop up randomly and finally it never gets a fix.
i tested connecting directly from TX1_1 to the GPS receiver …
what may i be doing wrong?
thanks,

Dario

I have no trouble to run LimeGPS for more than five minutes, and the connected u-blox receiver gives steady signal lock and position estimation. You need 50-60dB attenuation between the LimeSDR and u-blox receiver.

1 Like

@martywittrock
Thank you for the instructions.
i am trying to install limesuite using instructions given in the post on Ubuntu 17.10 but unfortunately i’m having the following errors that i have attached.
my platform is VMWare running ubuntu 17.10 with host operating system as windows 10. Im trying LimeSDR USB.

I did come across another post which referred to LimeSDR mini but i don’t think the issue is the same.

can you please help me out?

@Apiya,

The only thing I can think of is that the LimeSuite version you’re using is the latest version and may not work well with an older version of Ubuntu. You may be able to obtain the LimeSuite version that was used about a year ago and compile that with Ubuntu 17.10 and see if the errors are removed. The suspect line in the error message indicates LimeSuite 18.06 and that will work for later (or even the current version) of Ubuntu. Also, there’s a certain order that you build-up the system for GNSS-SDR…I would recommend that you have LimeSuite and SoapySDR dependencies compiled in first and then compile GNSS-SDR because it will be looking for those dependencies to properly compile and link.

Try an earlier version of LimeSuite with 17.01 and try it again. Otherwise, you can break new ground and compile and link GNSS-SDR with the latest version of LimeSuite, SoapySDR, and then GNSS-SDR to see if it will all compile/link properly. No matter what, let us know what you find…

73 de Marty, KN0CK

Thanks for your response.
I came up with another issue,i am trying to open “TxSine750M.ini” using “LimeSuiteGUI” on Ubuntu 18.04 but unfortunately i’m having the following errors that i have attached. my platform is VMWare running ubuntu 18.04 with host operating system as windows 10.

can you help me out please?

@Apiya,

A couple of questions first before I can answer on that:

1.) Can you connect to your LimeSDR using USB 3.0 (it appears that you are, but I just would like to know)
2.) Where is the file located that you’re trying to load? Is it on a USB drive or local on the Ubuntu 18.04 filesystem?

Let us all know - it appears that wherever you’re trying to pull the file from it’s not seeing it because it may be located on a port that hasn’t been opened between the host operating system (Win10) and the client OS (Ubuntu 18.04), or you don’t have the permissions set right to pull the file from LimeSuiteGUI and it can’t see it.

Let us know your progress on this -

73 de Marty, KN0CK

Hi Marty,

With the Lime Mini and gnss-sdr, I find that after about 5min of tracking and PVT file writing, that my position fixes stop being reported in the terminal window, and pvt files stop populating. However in the terrminal window I can see that NAV messages continue to be received. If I cntl-c and restart gnss-sdr, after a few minutes to perfrom a fix and 5min of collection, the behavior repeats. Have you seen that?

Also, I found that the best setting for the .conf file antenna selection is:
SignalSource.antenna=LNAW
Do you have the same behavior? If I try LNAH seems to receive some nav messages but never enough to get a fix.

Cheers.