Does this thing work at all?

Hi, I’m a bit frustrated.

I just received a LimeSDR and am trying to get it to display a basic spectrogram of anything but literally nothing works. Here’s as far as I’ve got:

  1. Downloaded & installed LimeSDR driver. That worked fine.
  2. Installed Pothos. It installed fine.
  3. Run LimeSuite. It runs and has a gazillion options with basically no documentation so I have no idea where to start. I mean, look at this!

I’m pretty sure only the person who wrote this program knows what all those are. Anyway I managed to connect to the board, read the temperature and use the programming module to write the latest firmware. After a couple of crashes - it’s quite a crashy program, although that is definitely a theme here.

This is where it goes downhill. I connected antennas to all the RX inputs and went to the FFTviewer module to see if I can see anything at all. I changed the centre frequency to 100 MHz and bandwidth to 10 MHz (surely some FM?) and I get this:

That does not look right. After lots of experimentation I found that if I click “Reset” in the GUI, and then GUI–>Chip, then I get this in the FFTviewer:

That still looks totally wrong, but surely closer. Looks like maybe a gain is too high but modifying the RFE gain controls doesn’t seem to do much. Ok now maybe I’ll try some other program. I disconnect from the LimeSDR (because otherwise that seems to cause various crashes). I try running GQRX, but that just doesn’t run at all. No errors, just… nothing. Yeay. Quality software.

What about Cubic SDR? Nope this just freezes at this point:

Actually I did manage to get it to recognise the LimeSDR once, but I can’t remember how and I couldn’t work out at all how to make CubicSDR do anything useful. Soapysdrutil finds the device ok:

>soapysdrutil --find="driver=lime"
######################################################
## Soapy SDR -- the SDR abstraction library
######################################################

Win32; Microsoft Visual C++ version 14.0; Boost_106300; UHD_003.010.001.001-57-g6f87cca4

Found device 0
  driver = lime
  index = 0
  label = USB 3.0 (LimeSDR-USB) [USB] 9062000C42615
  media = USB
  module = STREAM
  name = USB 3.0 (LimeSDR-USB)
  serial = 0009062000C42615

Ok moving on, let’s try Pothos GUI. I add the SDR Source block. It seems to do nothing for about 20 seconds. Then I get this error: PothosGui.EvalEngine: Detected evaluation thread lock-up. The evaluator will not function. Then about 20 seconds later it seems to recover: PothosGui.EvalEngine: Evaluation thread has recovered. Perhaps a call is taking too long. and it adds ports to the block and lists the device in its Device Args: drop-down. Shit, but whatever.

Ok I’ll add a spectrogram block. It took me a long time to discover that to actually see the spectrogram you have to go to Edit->Insert Graph Widgets->Spectrogram0. One of the least intuitive things I’ve seen in software for a while. A simple fix would be to have an ‘Insert Widget’ button on the spectrogram block if it isn’t already inserted. Or, like… a tutorial.

Anyway, I connect them up set some frequencies, aaaand I get this:

What is going on? I assume this thing is actually supposed to work and I haven’t just wasted £400.

First things first, there is documentation you just don’t know where it is.
First thing to do with any new LimeSDR board is to run through this set of tests:
https://wiki.myriadrf.org/LimeSDR-USB_Quick_Test
Get back to the thread after you have done so with your results and we can start to help you from there…

I started running through that quick test and for some reason when I tried to connect through Lime Suite I got this error:

[10:45:38] WARNING: Gateware version mismatch!
  Expected gateware version 2, revision 8
  But found version 0, revision 0
  Follow the FW and FPGA upgrade instructions:
  http://wiki.myriadrf.org/Lime_Suite#Flashing_images
  Or run update on the command line: LimeUtil --update

[10:46:03] INFO: Connected Control port: LimeSDR-USB FW:3 HW:4 Protocol:1 GW:0 GW_rev:0 Ref Clk: 30.72 MHz

Which is strange because it previously worked fine. I flashed it again, disconnected and connected and didn’t get that error. Odd but anyway, moving on…

Loading the self_test.ini file seemed to work, though when I go to board controls I have the shunts checked, while the screenshot shows them unchecked. I unchecked them. Also the instructions don’t say to press ‘Write All’ but I presume you have to do this? I did.

Following the rest of the instructions, the WCMDA loopback seems to work! Yeay!

The TxTSP test signal also worked. I don’t really care about transmitting yet and I don’t have a spectrum analyser to tell if it is working anyway.

I’ve read the User Guide, the Quick Start Guide, the Lime Suite page, and skimmed the data sheet. Not sure what to do next…

I’ll answer your question with another question: what do you want to do?

LimeSuiteGUI is not a good tool for working with the LimeSDR. It exposes every register and bit of functionality available, and the signal:noise ratio is suboptimal as a result. There are many, more vertically aligned tools you can use… URH is pretty decent for digital signal analysis. QSpectrumAnalyser is a fairly decent spectrum analyser The pyLMS7002 repository contains a sample VNA application which is not bad as a starting point, and there are many SDR receivers and a couple of transceivers out there too.
SoapySDR provides decent Python bindings if you want to code stuff yourself.

URH: https://github.com/jopohl/urh
QspectrumAnalyzer: https://github.com/xmikos/qspectrumanalyzer

1 Like

At this point I’d be happy with showing any received radio signal of any kind in any program. So far every single method I have tried has failed.

I just tried QSpectrumAnalyser since it looks like a well written program, unfortunately it cannot find the SoapySDR device, even though soapysdrutil can.

Seems like this might be a known issue, but that doesn’t really help.

Is there a reliable way to receive any kind of radio and display it in any way?

@Timmmm,

Please refer to this thread:

…but instead of using it on Ubuntu 15.1, use Ubuntu 16.04 or 16.10. That way you’ll get it running on GQRX.

Let us know how you get along on that -

73 de Marty, KN0CK