LimeSDR Family » History » Version 45
roh, 10/01/2019 03:16 PM
1 | 1 | laforge | {{>toc}} |
---|---|---|---|
2 | |||
3 | 30 | pespin | h1. LimeSDR USB |
4 | 1 | laforge | |
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 | 20 | laforge | !{width:700px}LimeSDR_transp_3.jpg! |
8 | |||
9 | 4 | laforge | Key characteristics include: |
10 | * RF Transceiver: Lime Microsystems LMS7002M MIMO FPRF |
||
11 | * FPGA: Altera Cyclone IV EP4CE40F23 – also compatible with EP4CE30F23 |
||
12 | 6 | ahuemer | * Memory: 256 MBytes DDR2 SDRAM |
13 | 4 | laforge | * USB 3.0 controller: Cypress USB 3.0 CYUSB3014-BZXC |
14 | * Oscillator: Rakon RPT7050A @ 30.72MHz |
||
15 | * Continuous frequency range: 100 kHz – 3.8 GHz |
||
16 | * Bandwidth: 61.44 MHz |
||
17 | * RF connection: 10 U.FL connectors (6 RX, 4 TX) |
||
18 | * Power Output (CW): up to 10 dBm |
||
19 | * Multiplexing: 2×2 MIMO |
||
20 | * Power: micro USB connector or optional external power supply |
||
21 | * Status indicators: programmable LEDs |
||
22 | * Dimensions: 100 mm x 60 mm |
||
23 | 1 | laforge | |
24 | 3 | laforge | h2. RF Output Power |
25 | |||
26 | 39 | roh | * +11dB in gsm900 (arfcn 5) |
27 | * +3dB in dcs1800 (arfcn 871) |
||
28 | |||
29 | 42 | roh | 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). |
30 | 39 | roh | |
31 | 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 |
||
32 | 1 | laforge | |
33 | h2. Clock |
||
34 | |||
35 | The on-board clock is a 250ppb VCTCXO. GSM strictly requires 30ppb, but 250ppb _should_ be sufficient for laboratory use. |
||
36 | |||
37 | h3. Using external clock reference |
||
38 | |||
39 | 41 | roh | using "clock-ref external" the clock-ref input can be fed with a 10MHz clock from e.g. a gpsdo. |
40 | the signal slope is not really important since there is a full pll which can handle sine as well as rectangle signals. |
||
41 | |||
42 | the internal clock reference should be fine for short testing in the lab(<30min) but is not stable enough for longterm use. |
||
43 | 1 | laforge | |
44 | 19 | pespin | h1. LimeSDR Mini |
45 | |||
46 | The "LimeSDR Mini":https://myriadrf.org/projects/limesdr/ is a smaller, less expensive version of the original LimeSDR. |
||
47 | |||
48 | 22 | laforge | !{width:600px}limesdr-mini-1024x561.jpg! |
49 | |||
50 | 19 | pespin | Key characteristics include: |
51 | * RF Transceiver: Lime Microsystems LMS7002M FPRF |
||
52 | * FPGA: Altera MAX 10 (10M16SAU169C8G) |
||
53 | * EEPROM memory: 2 x 128 KB for RF transciever MCU firmware and data |
||
54 | * Flash memory: 1 x 4 MB flash memory for data |
||
55 | * USB 3.0 controller: FTDI FT601 |
||
56 | * Rakon 30.72 MHz VCTCXO |
||
57 | * Continuous frequency range: 10 MHz – 3.5 GHz |
||
58 | * Bandwidth: 30.72 MHz |
||
59 | * RF Connection: 2 x SMA connectors (each can be switched between high and low frequency bands) + 1x U.FL REF CLK |
||
60 | * Power Output (CW): up to 10 dBm |
||
61 | * Dimensions: 69 mm x 31.4 mm |
||
62 | |||
63 | h2. RF Output Power |
||
64 | |||
65 | 40 | roh | * +3dB in gsm900 (arfcn 5) |
66 | 1 | laforge | * -12dB in dcs1800 (arfcn 871) |
67 | |||
68 | h2. Clock |
||
69 | |||
70 | 44 | roh | 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). |
71 | |||
72 | h3. Using external clock reference |
||
73 | |||
74 | 1 | laforge | providing an external clock is tricky: |
75 | according to the spec from the clockchip used (ti LMK00105) the input signal needs to have "sharp rectangles 2V/ns or better". |
||
76 | this is a limitation of the LimeSDR mini due to no extra pll chip being present, in contrast to the LimeSDR-USB. |
||
77 | 44 | roh | |
78 | h2. Notes |
||
79 | |||
80 | 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. |
||
81 | 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. |
||
82 | 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. |
||
83 | 37 | roh | |
84 | 45 | roh | the board also gets quite warm and can make good use of an extra fan and/or some heatsinks. |
85 | |||
86 | 35 | roh | h1. LimeNet Micro |
87 | 21 | laforge | |
88 | 35 | roh | !{width:700px}640px-LimeSDR-Micro_v2.1_board.png! |
89 | 21 | laforge | |
90 | 36 | roh | LimeNet Micro is a small all-in-one board combining the sdr, a gpsdo and some rf filters with a raspberry pi compute module3. |
91 | Due to the integrated gpsdo it should have no problems running tdma networks like gsm. |
||
92 | |||
93 | setup: install default raspbian (see getting started link below) and osmocom latest or nightly feeds. |
||
94 | config: use LNAL or LNAH for rx-path, BAND1 for tx |
||
95 | |||
96 | h2. RF Output Power |
||
97 | |||
98 | * +7dB in gsm900 (arfcn 5) |
||
99 | * -5dB in dcs1800 (arfcn 871) |
||
100 | |||
101 | in dcs1800 a reduction in rx power improves phase noise (e.g. max_power_red 5) |
||
102 | |||
103 | h2. Clock |
||
104 | |||
105 | do not select a specific clock on LimeNet Micro. (remove clock-ref line) |
||
106 | when this type of hardware is detected osmo-trx defaults to the gps synchronized clock from the fpga (gpsdo). |
||
107 | see led4/led5 for gps status https://wiki.myriadrf.org/LimeNET-Micro_v2.1_hardware_description#Indication_LEDs |
||
108 | |||
109 | h2. further information |
||
110 | |||
111 | https://wiki.myriadrf.org/LimeNET_Micro |
||
112 | https://wiki.myriadrf.org/Getting_Started_with_the_LimeNET-Micro |
||
113 | https://wiki.myriadrf.org/LimeNET-Micro_v2.1_hardware_description |
||
114 | 1 | laforge | |
115 | 35 | roh | h1. LimeSDR PCIe |
116 | 21 | laforge | |
117 | 35 | roh | !{width:700px}limesdr-pcie-1-1_jpg_project-body.jpg! |
118 | |||
119 | TBD |
||
120 | 34 | roh | |
121 | 19 | pespin | h1. OsmoTRX on LimeSDR |
122 | 1 | laforge | |
123 | 32 | pespin | 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: |
124 | * "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) |
||
125 | ** for LimeSDR-mini, you will need 17.10 or later (last release @18.06.0@ or @master@ really advised) |
||
126 | 1 | laforge | |
127 | 32 | pespin | 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]]. |
128 | |||
129 | |||
130 | 1 | laforge | {{graphviz_link() |
131 | 5 | laforge | digraph G{ |
132 | rankdir = LR; |
||
133 | 29 | laforge | LimeSDR -> LimeSuite [label = "USB/libusb"]; |
134 | 5 | laforge | LimeSuite -> OsmoTRX [label = "osmo-trx-lms"]; |
135 | } |
||
136 | 1 | laforge | }} |
137 | |||
138 | h3. Verifying the driver stack |
||
139 | |||
140 | You can ensure that LimeSuite recognizes your device using the *LimeUtil* part of LimeSuite: |
||
141 | |||
142 | <pre> |
||
143 | 18 | pespin | $ LimeUtil --find |
144 | * [LimeSDR-USB, media=USB 3.0, module=STREAM, addr=1d50:6108, serial=0009060B00xxyyzz] |
||
145 | </pre> |
||
146 | 27 | laforge | |
147 | 31 | pespin | h3. Running osmo-trx-lms with LimeSDR |
148 | |||
149 | 33 | pespin | If @rt-prio@ is set in .cfg file, running as root may be required. |
150 | 31 | pespin | |
151 | 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@. |
||
152 | |||
153 | <pre> |
||
154 | osmo-trx-lms -C osmo-trx.git/doc/examples/osmo-trx-lms/osmo-trx-limesdr.cfg |
||
155 | </pre> |
||
156 | |||
157 | 27 | laforge | h2. Other LimeSDR related information |
158 | |||
159 | {{child_pages()}} |