Project

General

Profile

LimeSDR Family » History » Version 14

duo_kali, 10/11/2017 08:12 AM

1 1 laforge
{{>toc}}
2
3
h1. LimeSDR
4
5 4 laforge
The "LimeSDR":https://myriadrf.org/projects/limesdr/ is a low-cost SDR board featuring the Lime Microsystems LMS7002 RF chip.
6
7
Key characteristics include:
8
* RF Transceiver: Lime Microsystems LMS7002M MIMO FPRF
9
* FPGA: Altera Cyclone IV EP4CE40F23 – also compatible with EP4CE30F23
10 6 ahuemer
* Memory: 256 MBytes DDR2 SDRAM
11 4 laforge
* USB 3.0 controller: Cypress USB 3.0 CYUSB3014-BZXC
12
* Oscillator: Rakon RPT7050A @ 30.72MHz
13
* Continuous frequency range: 100 kHz – 3.8 GHz
14
* Bandwidth: 61.44 MHz
15
* RF connection: 10 U.FL connectors (6 RX, 4 TX)
16
* Power Output (CW): up to 10 dBm
17
* Multiplexing: 2×2 MIMO
18
* Power: micro USB connector or optional external power supply
19
* Status indicators: programmable LEDs
20
* Dimensions: 100 mm x 60 mm
21 1 laforge
22 3 laforge
h2. RF Output Power
23
24
TBD
25 1 laforge
26
h2. Clock
27
28
The on-board clock is a 250ppb VCTCXO.  GSM strictly requires 30ppb, but 250ppb _should_  be sufficient for laboratory use.
29
30
h3. Clock Calibration
31
32
TBD
33
34
h3. Using external clock reference
35
36
TBD
37
38
h2. OsmoTRX on LimeSDR
39
40
In terms of OsmoTRX support, you will a relatively complex driver stack consisting of:
41 2 laforge
* "LimeSuite":https://github.com/myriadrf/LimeSuite.git containing the actual drivers and utilities for LimeSDR
42 1 laforge
* "SoapySDR":https://github.com/pothosware/SoapySDR.git as middleware that wraps LimeSuite
43
* "SoapyUHD":https://github.com/pothosware/SoapyUHD.git as plug-in exposing SoapySDR devices to UHD
44
* UHD as the driver interface below OsmoTRX
45
46 5 laforge
{{graphviz_link()
47
digraph G{
48
  rankdir = LR;
49
  LimeSDR -> LimeSuite [label = "USB/libusb"];
50
  LimeSuite -> SoapySDR;
51
  SoapySDR -> UHD [label = "SoapyUHD"];
52
  UHD -> OsmoTRX [label = "libuhd"];
53
}
54
}}
55
56
57 1 laforge
You will need to observe the following dependencies when building the above:
58
# SoapyUHD depends on SoapySDR
59
# LimeSuite depends on SoapySDR.
60
61
h3. Verifying the driver stack
62
63
You can ensure that LimeSuite recognizes your device using the *LimeUtil* part of LimeSuite:
64
65
<pre>
66 12 laforge
$ LimeUtil --find
67 1 laforge
  * [LimeSDR-USB, media=USB 3.0, module=STREAM, addr=1d50:6108, serial=0009060B00xxyyzz]
68
</pre>
69
70
You can ensure that SoapySDR and LimeSuite work together as expected using the *SoapySDRUtil* part of SoapySDR:
71
72
<pre>
73 12 laforge
$ ./SoapySDRUtil --find
74 1 laforge
######################################################
75
## Soapy SDR -- the SDR abstraction library
76
######################################################
77
78
linux; GNU C++ version 6.3.0 20170221; Boost_106200; UHD_003.009.005-0-unknown
79
80
Found device 0
81
  addr = 1d50:6108
82
  driver = lime
83
  label = LimeSDR-USB [USB 3.0] 9060B00462B1C
84
  media = USB 3.0
85
  module = STREAM
86
  name = LimeSDR-USB
87
  serial = 0009060B00xxyyzz
88
</pre>
89
90 13 duo_kali
h2. STEP BY STEP GUIDE TO INSTALL OSMO_TRX WITH LimeSDR from source (using ubuntu 16.04)
91 7 duo_kali
92 9 duo_kali
<pre>
93 7 duo_kali
---Install LimeSuite, UHD and SoapyUHD 
94
95
sudo add-apt-repository -y ppa:myriadrf/drivers
96
sudo apt-get update
97
98
#install core library and build dependencies
99
sudo apt-get install git g++ cmake libsqlite3-dev
100
101
#install hardware support dependencies
102
sudo apt-get install libsoapysdr-dev libi2c-dev libusb-1.0-0-dev
103
104
#install graphics dependencies
105
sudo apt-get install libwxgtk3.0-dev freeglut3-dev
106
107
---Install LimeSuite
108
109
git clone https://github.com/myriadrf/LimeSuite.git
110
cd LimeSuite
111
mkdir builddir && cd builddir
112
cmake ../
113
make -j4
114
sudo make install
115
sudo ldconfig
116
117
cd LimeSuite/udev-rules
118
sudo ./install.sh
119
120
Type “LimeSuiteGUI” on terminal to check GUI is running
121
122 8 duo_kali
---Install UHD 
123 7 duo_kali
(with all dependency)
124
125
sudo apt-get -y install git swig cmake doxygen build-essential libboost-all-dev libtool libusb-1.0-0 libusb-1.0-0-dev libudev-dev libncurses5-dev libfftw3-bin libfftw3-dev libfftw3-doc libcppunit-1.13-0v5 libcppunit-dev libcppunit-doc ncurses-bin cpufrequtils python-numpy python-numpy-doc python-numpy-dbg python-scipy python-docutils qt4-bin-dbg qt4-default qt4-doc libqt4-dev libqt4-dev-bin python-qt4 python-qt4-dbg python-qt4-dev python-qt4-doc python-qt4-doc libqwt6abi1 libfftw3-bin libfftw3-dev libfftw3-doc ncurses-bin libncurses5 libncurses5-dev libncurses5-dbg libfontconfig1-dev libxrender-dev libpulse-dev swig g++ automake autoconf libtool python-dev libfftw3-dev libcppunit-dev libboost-all-dev libusb-dev libusb-1.0-0-dev fort77 libsdl1.2-dev python-wxgtk3.0 git-core libqt4-dev python-numpy ccache python-opengl libgsl-dev python-cheetah python-mako python-lxml doxygen qt4-default qt4-dev-tools libusb-1.0-0-dev libqwt5-qt4-dev libqwtplot3d-qt4-dev pyqt4-dev-tools python-qwt5-qt4 cmake git-core wget libxi-dev gtk2-engines-pixbuf r-base-dev python-tk liborc-0.4-0 liborc-0.4-dev libasound2-dev python-gtk2 libzmq-dev libzmq1 python-requests python-sphinx libcomedi-dev python-zmq
126
127
git clone https://github.com/EttusResearch/uhd
128
cd uhd
129
130
git tag -l
131
...
132
release_003_009_004
133
release_003_009_005
134
release_003_010_000_000
135
# Example: For UHD 3.10.000.000: 
136
  git checkout release_003_010_000_000 (get the latest if fine)
137
138
cd host
139
mkdir build
140
cd build 
141
cmake ../
142
make
143
sudo make install
144
sudo ldconfig
145
146
export LD_LIBRARY_PATH=/usr/local/lib
147
148
try run command to find LimeSDR :
149
uhd_find_devices
150
151
152 1 laforge
153 7 duo_kali
---Install SoapySDR and SoapyUHD 
154
155
git clone https://github.com/pothosware/SoapySDR.git
156
cd SoapySDR
157 12 laforge
mkdir build
158 7 duo_kali
cd build
159
cmake ..
160 1 laforge
make
161 7 duo_kali
sudo make install
162
sudo ldconfig
163
164
git clone https://github.com/pothosware/SoapyUHD
165
cd SoapyUHD
166 12 laforge
mkdir build
167 7 duo_kali
cd build
168
cmake ..
169
make
170
sudo make install
171
sudo ldconfig
172
173 14 duo_kali
---NOW BUILD OSMO-TRX 
174 1 laforge
175 14 duo_kali
mkdir osmo
176 7 duo_kali
cd osmo
177
git clone https://github.com/osmocom/osmo-trx.git
178
cd osmo-trx
179
autoreconf -fi
180
./configure
181
make -j5
182
make check
183
sudo make install
184
sudo ldconfig
185
186
run on terminal: (test and see its connect with SoapyUHD and UHD)
187
188
osmo-trx
Add picture from clipboard (Maximum size: 48.8 MB)