LimeSDR Made Simple series

First post in a new series that will hopefully prove useful to those getting up to speed with the LimeSDR, its LMS7002M FPRF transceiver, Lime Suite and associated APIs:

https://myriadrf.org/blog/limesdr-made-simple-part-1/

10 Likes

Great! :slight_smile:

Nice entry, looking for next edition :slight_smile:

This is exactly what LimeSDR is missing! Looking forward to the next bits. Then maybe I’ll actually be able to get mine to work.

1 Like

Hi All,

The second post in the series has just gone up:

https://myriadrf.org/blog/limesdr-made-simple-part-2-matching-lms7002m-rx-iq/

4 Likes

This second article answers a lot of questions I have had. It also raised many more. Mostly “What is this?” and “Why would I need to adjust that?” I am going to wait and read before I ask, though. That way I will only have hard to answer questions left.
The hard ones would be “How do I make X happen when Z is low and W won’t do D while F is high intermittently?”

Part 3 in the LimeSDR Made Simple series is out! A Practical Example:

https://myriadrf.org/blog/limesdr-made-simple-part-3-practical-example/

3 Likes

Part 4 is now out and takes a look at constructing an FM receiver using Pothos:

https://myriadrf.org/blog/limesdr-made-simple-part-4-pothos-beyond/

1 Like

Part 5 is now up, which takes a look at using GNU Octave to generate waveforms which can then be transmitted using Lime Suite GUI:

https://myriadrf.org/blog/limesdr-made-simple-part-5-putting-software-sdr/

2 Likes

Great series this time, Andrew - I’ll check this out since I’ve used Octave in the past.

73 de Marty, KN0CK

1 Like

thanks for the update Andrew

Part 6 in the series is now up and looks at receiving ASK/OOK signals using Pothos and GNU Radio:

https://myriadrf.org/blog/limesdr-made-simple-part-6-one-way/

1 Like

Part 7 is now up on the Myriad-RF blog:

https://myriadrf.org/blog/limesdr-made-simple-part-7-one-way-continued/

The eighth instalment is now out!

LimeSDR Made Simple Part 8: C Examples and SoapySDR API:

https://myriadrf.org/blog/limesdr-made-simple-part-8-c-examples-soapysdr-api/

1 Like

The ninth instalment is now up and this takes a look at using the VNA example based on pyLMS7002M:

https://myriadrf.org/blog/limesdr-made-simple-part-9-vna/

3 Likes

A post was split to a new topic: Board overheated and no longer recognised

I have tried to test a site survey tool code. I will get two errors.

First:
error: ‘Cleanup’ undeclared (first use in this function) atexit(Cleanup);

Cleanup is undefined

Second:
undefined reference to `Get_Samples’

Where I can find Get_Samples function?

I can compile the example when commenting these two lines, but I guess at least “Get_Samples” should do something?

atexit(Cleanup); is probably not necessary as at the end there’s a Close(sdr);.

Get_Samples may not be needed either, as there’s a Read_1024_samples below.

What do you get when running the program?

Output is this:

$ ./example2.bin 1e6 2e6 100e3
Found device #0: addr=1d50:6108, driver=lime, label=LimeSDR-USB [USB 2.0] 9062000C40615, media=USB 2.0, module=FX3, name=LimeSDR-USB, serial=0009062000C40615,
[INFO] Make connection: ‘LimeSDR-USB [USB 2.0] 9062000C40615’
[INFO] Reference clock 30.72 MHz
[INFO] Device name: LimeSDR-USB
[INFO] Reference: 30.72 MHz
[INFO] LMS7002M calibration values caching Disable
Rx antennas: NONE, LNAH, LNAL, LNAW, LB1, LB2,
Rx gains: TIA, LNA, PGA,
Rx freq ranges: [0 Hz -> 3.8e+09 Hz],
Starting RMS scan, Start is: 1000000.000000, End is: 2000000.000000, Interval is: 100000.000000
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
This gives a total of: 10.000000 Sample pointsFreq is: 2000000.000000, RMS is: 0.000923
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Freq is: 2100000.000000, RMS is: 0.000924
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Freq is: 2200000.000000, RMS is: 0.000892
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Freq is: 2300000.000000, RMS is: 0.000850
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Freq is: 2400000.000000, RMS is: 0.000866
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Freq is: 2500000.000000, RMS is: 0.000932
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Freq is: 2600000.000000, RMS is: 0.000941
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Freq is: 2700000.000000, RMS is: 0.000975
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Freq is: 2800000.000000, RMS is: 0.000887
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Cannot achieve desired sample rate: rate too low
[ERROR] Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Freq is: 2900000.000000, RMS is: 0.000941
Done

Which antenna port is used / how to select antenna port?

I found the antenna setting by myself. It is in setAntenna function.