Project

General

Profile

LimeSDR Family » History » Revision 9

Revision 8 (duo_kali, 10/11/2017 06:14 AM) → Revision 9/52 (duo_kali, 10/11/2017 06:16 AM)

{{>toc}} 

 h1. LimeSDR 

 The "LimeSDR":https://myriadrf.org/projects/limesdr/ is a low-cost SDR board featuring the Lime Microsystems LMS7002 RF chip. 

 Key characteristics include: 
 * RF Transceiver: Lime Microsystems LMS7002M MIMO FPRF 
 * FPGA: Altera Cyclone IV EP4CE40F23 – also compatible with EP4CE30F23 
 * Memory: 256 MBytes DDR2 SDRAM 
 * USB 3.0 controller: Cypress USB 3.0 CYUSB3014-BZXC 
 * Oscillator: Rakon RPT7050A @ 30.72MHz 
 * Continuous frequency range: 100 kHz – 3.8 GHz 
 * Bandwidth: 61.44 MHz 
 * RF connection: 10 U.FL connectors (6 RX, 4 TX) 
 * Power Output (CW): up to 10 dBm 
 * Multiplexing: 2×2 MIMO 
 * Power: micro USB connector or optional external power supply 
 * Status indicators: programmable LEDs 
 * Dimensions: 100 mm x 60 mm 

 h2. RF Output Power 

 TBD 

 h2. Clock 

 The on-board clock is a 250ppb VCTCXO.    GSM strictly requires 30ppb, but 250ppb _should_    be sufficient for laboratory use. 

 h3. Clock Calibration 

 TBD 

 h3. Using external clock reference 

 TBD 

 h2. OsmoTRX on LimeSDR 

 In terms of OsmoTRX support, you will a relatively complex driver stack consisting of: 
 * "LimeSuite":https://github.com/myriadrf/LimeSuite.git containing the actual drivers and utilities for LimeSDR 
 * "SoapySDR":https://github.com/pothosware/SoapySDR.git as middleware that wraps LimeSuite 
 * "SoapyUHD":https://github.com/pothosware/SoapyUHD.git as plug-in exposing SoapySDR devices to UHD 
 * UHD as the driver interface below OsmoTRX 

 {{graphviz_link() 
 digraph G{ 
   rankdir = LR; 
   LimeSDR -> LimeSuite [label = "USB/libusb"]; 
   LimeSuite -> SoapySDR; 
   SoapySDR -> UHD [label = "SoapyUHD"]; 
   UHD -> OsmoTRX [label = "libuhd"]; 
 } 
 }} 


 You will need to observe the following dependencies when building the above: 
 # SoapyUHD depends on SoapySDR 
 # LimeSuite depends on SoapySDR. 

 h3. Verifying the driver stack 

 You can ensure that LimeSuite recognizes your device using the *LimeUtil* part of LimeSuite: 

 <pre> 
 $ LimeUtil --find                  109/0/0 
   * [LimeSDR-USB, media=USB 3.0, module=STREAM, addr=1d50:6108, serial=0009060B00xxyyzz] 
 </pre> 

 You can ensure that SoapySDR and LimeSuite work together as expected using the *SoapySDRUtil* part of SoapySDR: 

 <pre> 
 $ ./SoapySDRUtil --find                    101/0/0 
 ###################################################### 
 ## Soapy SDR -- the SDR abstraction library 
 ###################################################### 

 linux; GNU C++ version 6.3.0 20170221; Boost_106200; UHD_003.009.005-0-unknown 

 Found device 0 
   addr = 1d50:6108 
   driver = lime 
   label = LimeSDR-USB [USB 3.0] 9060B00462B1C 
   media = USB 3.0 
   module = STREAM 
   name = LimeSDR-USB 
   serial = 0009060B00xxyyzz 
 </pre> 


 <pre> 
 **#STEP BY STEP GUIDE TO INSTALL OSMO_TRX WITH LimeSDR** 

 ---Install LimeSuite, UHD and SoapyUHD  


 sudo add-apt-repository -y ppa:myriadrf/drivers 
 sudo apt-get update 

 #install core library and build dependencies 
 sudo apt-get install git g++ cmake libsqlite3-dev 

 #install hardware support dependencies 
 sudo apt-get install libsoapysdr-dev libi2c-dev libusb-1.0-0-dev 

 #install graphics dependencies 
 sudo apt-get install libwxgtk3.0-dev freeglut3-dev 

 ---Install LimeSuite 

 git clone https://github.com/myriadrf/LimeSuite.git 
 cd LimeSuite 
 mkdir builddir && cd builddir 
 cmake ../ 
 make -j4 
 sudo make install 
 sudo ldconfig 

 cd LimeSuite/udev-rules 
 sudo ./install.sh 

 Type “LimeSuiteGUI” on terminal to check GUI is running 

 ---Install UHD  
 (with all dependency) 

 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 

 git clone https://github.com/EttusResearch/uhd 
 cd uhd 

 git tag -l 
 ... 
 release_003_009_004 
 release_003_009_005 
 release_003_010_000_000 
 # Example: For UHD 3.10.000.000:  
   git checkout release_003_010_000_000 (get the latest if fine) 

 cd host 
 mkdir build 
 cd build  
 cmake ../ 
 make 
 sudo make install 
 sudo ldconfig 

 export LD_LIBRARY_PATH=/usr/local/lib 

 try run command to find LimeSDR : 
 uhd_find_devices 



 SoapySDR and SoapyUHD  

 git clone https://github.com/pothosware/SoapySDR.git 
 cd SoapySDR 
 mkdiir build 
 cd build 
 cmake .. 
 make 
 sudo make install 
 sudo ldconfig 

 git clone https://github.com/pothosware/SoapyUHD 
 cd SoapyUHD 
 mkdiir build 
 cd build 
 cmake .. 
 make 
 sudo make install 
 sudo ldconfig 

 NOW BUILD OSMO-TRX 

 cd osmo 
 git clone https://github.com/osmocom/osmo-trx.git 
 cd osmo-trx 
 autoreconf -fi 
 ./configure 
 make -j5 
 make check 
 sudo make install 
 sudo ldconfig 

 run on terminal: (test and see its connect with SoapyUHD and UHD) 

 osmo-trx 
 <pre> 
Add picture from clipboard (Maximum size: 48.8 MB)