Project

General

Profile

LimeSDR Family » History » Revision 49

Revision 48 (roh, 10/01/2019 03:39 PM) → Revision 49/52 (roh, 10/01/2019 03:41 PM)

{{>toc}} 

 h1. LimeSDR USB 

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

 !{width:700px}LimeSDR_transp_3.jpg! 

 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 

 * +11dB in gsm900 (arfcn 5) 
 * +3dB in dcs1800 (arfcn 871) 

 in dcs1800 a reduction in rx power improves phase noise (e.g. max_power_red 7). the resulting rf output will be around -6dB, but will meet phase noise requirements (<5°rms). 

 there is a graph from myriad showing the power vs frequency plot in this thread: https://discourse.myriadrf.org/t/limesdr-s-maximum-transmitting-power-at-different-frequencies/1649 

 h2. Clock 

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

 h3. Using external clock reference 

 using "clock-ref external" the clock-ref input can be fed with a 10MHz clock from e.g. a gpsdo. 
 the signal slope is not really important since there is a full pll which can handle sine as well as rectangle signals. 

 the internal clock reference should be fine for short testing in the lab(<30min) but is not stable enough for longterm use. 

 h1. LimeSDR Mini 

 The "LimeSDR Mini":https://myriadrf.org/projects/limesdr/ is a smaller, less expensive version of the original LimeSDR. 

 !{width:600px}limesdr-mini-1024x561.jpg! 

 Key characteristics include: 
 * RF Transceiver: Lime Microsystems LMS7002M FPRF 
 * FPGA: Altera MAX 10 (10M16SAU169C8G) 
 * EEPROM memory: 2 x 128 KB for RF transciever MCU firmware and data 
 * Flash memory: 1 x 4 MB flash memory for data 
 * USB 3.0 controller: FTDI FT601 
 * Rakon 30.72 MHz VCTCXO 
 * Continuous frequency range: 10 MHz – 3.5 GHz 
 * Bandwidth: 30.72 MHz 
 * RF Connection: 2 x SMA connectors (each can be switched between high and low frequency bands) + 1x U.FL REF CLK 
 * Power Output (CW): up to 10 dBm 
 * Dimensions: 69 mm x 31.4 mm 

 h2. RF Output Power 

 * +3dB in gsm900 (arfcn 5) 
 * -12dB in dcs1800 (arfcn 871) 

 h2. Clock 

 the internal clock is ok, but not stable enough (longterm) to run a gsm network. for short term lab use it should be ok. (few minutes). 

 h3. Using external clock reference 

 providing an external clock is tricky: 
 according to the spec from the clockchip used (ti LMK00105) the input signal needs to have "sharp rectangles 2V/ns or better". 
 this is a limitation of the LimeSDR mini due to no extra pll chip being present, in contrast to the LimeSDR-USB. 

 h2. Notes 

 due to some yet unknown issue with the usb bridge chip used on limesdr mini, some machines have issues getting a reliable usb connection and loose an extreme amount of packages. 
 since the extra bandwith of usb3 is not necessary for normal use of osmo-trx-lms, a simple fix is to force the device down to usb2. 
 this can be done easily by selecting a port which does not have a usb3 socket or use a usb2 only cable/extension to connect the device. 

 the board also gets quite warm and can make good use of an extra fan and/or some heatsinks. 
 it also takes 800-1000mA of current from the usb socket, so using a 'Y cable' to feed it can help with stability issues. 

 h1. LimeNet Micro 

 !{width:700px}640px-LimeSDR-Micro_v2.1_board.png! 

 LimeNet Micro is a small all-in-one board combining the sdr, a gpsdo and some rf filters with a raspberry pi compute module3. 
 Due to the integrated gpsdo it should have no problems running tdma networks like gsm. 

 there are different board variants of which some provide internal diplexers, poe pd, wifi module, hdmi and audio sockets. 
 our tests happened with a poe enabled variant without wifi, no diplexers. 

 setup: install default raspbian (see getting started link below) and osmocom latest or nightly feeds. 
 config: use LNAL or LNAH for rx-path, BAND1 for tx 

 h2. RF Output Power 

 * +7dB in gsm900 (arfcn 5) 
 * -5dB in dcs1800 (arfcn 871) 

 h2. Clock 

 do not select a specific clock on LimeNet Micro. (remove clock-ref line) 
 when this type of hardware is detected osmo-trx defaults to the gps synchronized clock from the fpga (gpsdo). 
 see led4/led5 for gps status https://wiki.myriadrf.org/LimeNET-Micro_v2.1_hardware_description#Indication_LEDs 

 the external reference clock input socket is currently not supported. 

 h2. further information 

 https://wiki.myriadrf.org/LimeNET_Micro 
 https://wiki.myriadrf.org/Getting_Started_with_the_LimeNET-Micro 
 https://wiki.myriadrf.org/LimeNET-Micro_v2.1_hardware_description 

 h1. LimeSDR PCIe 

 !{width:700px}limesdr-pcie-1-1_jpg_project-body.jpg! 

 TBD 

 currently not supported 

 h1. OsmoTRX on LimeSDR 

 In terms of OsmoTRX for LimeSDR, we now have @osmo-trx-lms@ which avoids the previously complex driver stack with UHD, SoapyUHD, SoapySDR, etc. All you need in terms of specific dependencies is: 
 * "LimeSuite":https://github.com/myriadrf/LimeSuite.git containing the actual drivers and utilities for LimeSDR (*version 17.09 or later required*, last release @18.06.0@ or @master@ really advised) 
 ** for LimeSDR-mini, you will need 17.10 or later (last release @18.06.0@ or @master@ really advised) 

 If your distro doesn't ship with a LimeSuite new enough, it is advised that you install LimeSuite from osmocom repositories, see [[cellular-infrastructure:MacroBinaryPackages]]. 


 {{graphviz_link() 
 digraph G{ 
   rankdir = LR; 
   LimeSDR -> LimeSuite [label = "USB/libusb"]; 
   LimeSuite -> OsmoTRX [label = "osmo-trx-lms"]; 
 } 
 }} 

 h3. Verifying the driver stack 

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

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

 h3. Running osmo-trx-lms with LimeSDR 

 If @rt-prio@ is set in .cfg file, running as root may be required. 

 A sample cfg file to run @osmo-trx-lms@ with a LimeSDR device can be found in @osmo-trx.git@ in @doc/examples/osmo-trx-lms/osmo-trx-limesdr.cfg@. 

 <pre> 
 osmo-trx-lms -C osmo-trx.git/doc/examples/osmo-trx-lms/osmo-trx-limesdr.cfg 
 </pre> 

 h2. Other LimeSDR related information 

 {{child_pages()}}
Add picture from clipboard (Maximum size: 48.8 MB)