Giter Club home page Giter Club logo

openlte's Introduction

This directory contains the openLTE source code.  For support, please
subscribe to [email protected].  Details can be
found at sourceforge.net/projects/openlte/.

The directory structure for the project is:
octave                Octave test code
cmn_hdr               Common header files
liblte                C++ library of commonly used LTE functions
cmake                 Files needed for cmake
LTE_fdd_dl_file_scan  A gnu-radio LTE FDD DL file scanner application
LTE_fdd_dl_file_gen   A gnu-radio LTE FDD DL file generator application
LTE_fdd_dl_scan       A gnu-radio LTE FDD DL scanner application that
                      currently supports rtl-sdr, hackrf, USRP B2X0,
                      and bladeRF hardware
LTE_file_recorder     A gnu-radio LTE file recording application that
                      currently supports rtl-sdr, hackrf, USRP B2X0,
                      and bladeRF hardware
LTE_fdd_enodeb        An LTE FDD eNodeB application that currently
                      supports URSP B2X0 hardware

openLTE is dependant on the following:
1) GNU Radio
2) GrOsmoSDR
3) rtl-sdr
4) UHD
5) HackRF
6) bladeRF
7) polarssl
8) iptables

To build use the following:

  $ mkdir build
  $ cd build
  $ cmake ../
  $ make

To install use the following:

  $ mkdir build
  $ cd build
  $ cmake ../
  $ make
  $ sudo make install

All testing was performed against the following configuration:
- Intel Core i5-2557M
- Ubuntu 12.04
- GNU Radio 3.7.2
- GrOsmoSDR 0.1.1
- rtl-sdr 0.5
- UHD 3.6.0-1
- HackRF 0.2
- bladeRF 0.9.0

##################
#  FILE SCANNER  #
##################
To use the installed file scanner, ensure that LD_LIBRARY_PATH
is set appropriately (e.g. export LD_LIBRARY_PATH=/usr/local/lib).
The run LTE_fdd_dl_file_scan and connect (via telnet, nc, etc) to
the control port at port number 22000.  File scanner parameters
can be changed on the control port.  For a list of parameters
simply type help on the control port.

####################
#  FILE GENERATOR  #
####################
To use the installed file generator, ensure that LD_LIBRARY_PATH
is set appropriately (e.g. export LD_LIBRARY_PATH=/usr/local/lib).
Then run LTE_fdd_dl_file_gen and connect (via telnet, nc, etc) to
the control port at port number 21000.  File generator parameters
can be changed on the control port.  For a list of parameters
simply type help on the control port.

#############
#  SCANNER  #
#############
To use the installed live scanner, make sure LD_LIBRARY_PATH
is set appropriately (e.g. export LD_LIBRARY_PATH=/usr/local/lib),
plug in rtl-sdr, hackrf, USRP B2X0, or bladeRF hardware, run
LTE_fdd_dl_scan, and connect (via telnet, nc, etc) to the control
port at port number 20000.  Scan parameters can be changed and
scan results can be observed on the control port.  For a list of
parameters simply type help on the control port.

###################
#  FILE RECORDER  #
###################
To use the installed file recorder, make sure LD_LIBRARY_PATH
is set appropriately (e.g. export LD_LIBRARY_PATH=/usr/local/lib),
plug in rtl-sdr, hackrf, USRP B2X0, or bladeRF hardware, run
LTE_file_recorder, and connect (via telnet, nc, etc) to the
control port at port number 25000.  Recording parameters can be
changed on the control port.  For a list of parameters simply type
help on the control port.  Files recorded using hackRF, USRP B2X0,
or bladeRF hardware are recorded using a sample rate of 15.36MHz.
Files recorded with all other hardware are recorded using a sample
rate of 1.92MHz.  All files recorded with this application can be
scanned with LTE_fdd_dl_file_scan.

############
#  ENODEB  #
############
To use the installed eNodeB, make sure LD_LIBRARY_PATH is set
appropriately (e.g. export LD_LIBRARY_PATH=/usr/local/lib), plug in
USRP B2X0 hardware, run LTE_fdd_enodeb, and connect (via telnet, nc,
etc) to the control port at port number 30000.  eNodeB parameters
can be changed on the control port.  For a list of parameters simply
type help on the control port.  A MAC and above level PCAP trace is
output to /tmp/LTE_fdd_enodeb.pcap.  Data packets are routed through
a tun device named tun_openlte.  Wireshark can be used to observe
IP packets on tun_openlte to inspect the IP traffic to/from UEs. In
order to configure properly, set the ip_addr_start parameter to the
begining of a non-conflicting private address range (i.e. 10.0.0.1)
and set the dns_addr parameter to the primary DNS address listed by
your modem.  All UEs will be assigned IP addresses in the range
of ip_addr_start to ip_addr_start+254 and all traffic will be tunneled
through the tun device to the internet using NAT/iptables.
NOTES: This application has been tested exclusively at 5MHz
bandwidth.  Higher bandwidths are supported and performance may
vary based on processing hardware.
WARNINGS: By using this application you risk disruption of service in
a public network, even if you are not directly interfering with the
radio transmissions.  This is a criminal act in most countries, and a
much more serious offense than a simple violation of radio spectrum
regulaions.  It is highly recommended to use this application only
with antennas and test UEs inside an RF Shielded Enclosure (Faraday
Cage).

############
#  OCTAVE  #
############
To use the octave code, run the top level octave .m files:
lte_fdd_dl_transmit.m and lte_fdd_dl_receive.m.  If multiple
transmit antennas are used, the outputs need to be combined
before input to the receiver.

openlte's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

openlte's Issues

error during compiling

While running command sudo cmake ../ , it is giving following error:

`CMake Error at /usr/lib/x86_64-linux-gnu/cmake/gnuradio/FindTHRIFT.cmake:70 (GR_PYTHON_CHECK_MODULE):
Unknown CMake command "GR_PYTHON_CHECK_MODULE".
Call Stack (most recent call first):
/usr/share/cmake-3.16/Modules/CMakeFindDependencyMacro.cmake:47 (find_package)
/usr/lib/x86_64-linux-gnu/cmake/gnuradio/gnuradio-runtimeConfig.cmake:24 (find_dependency)
/usr/lib/x86_64-linux-gnu/cmake/gnuradio/GnuradioConfig.cmake:54 (include)
CMakeLists.txt:79 (find_package)

-- Configuring incomplete, errors occurred!
`

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.