All new accounts created on Gitlab now require administrator approval. If you invite any collaborators, please let Flux staff know so they can approve the accounts.

Commit 1f119c0f authored by Ben Wojtowicz's avatar Ben Wojtowicz

Version 0.10.2: Added support for bladeRF in LTE_fdd_dl_scan and...

Version 0.10.2: Added support for bladeRF in LTE_fdd_dl_scan and LTE_file_recorder, removed cmake requirements for rtl-sdr and hackrf.
parent 3d921e0a
......@@ -23,7 +23,7 @@
########################################################################
cmake_minimum_required(VERSION 2.6)
project(openLTE CXX C)
set(openLTE_version 0.10.1)
set(openLTE_version 0.10.2)
enable_testing()
#select the release build type by default to get optimization flags
......@@ -91,8 +91,6 @@ set(GRC_BLOCKS_DIR ${GR_PKG_DATA_DIR}/grc/blocks)
set(GR_REQUIRED_COMPONENTS RUNTIME BLOCKS PMT)
find_package(Gnuradio "3.7.0")
find_package(GnuradioOsmosdr)
find_package(Rtlsdr)
find_package(HackRf)
find_package(Uhd)
find_package(FFTW3F)
......@@ -104,14 +102,6 @@ if(NOT GNURADIO_OSMOSDR_FOUND)
message(FATAL_ERROR "GNURadio Osmosdr required to compile openLTE (http://sdr.osmocom.org/trac/wiki/GrOsmoSDR)")
endif()
if(NOT RTLSDR_FOUND)
message(FATAL_ERROR "RTLSDR required to compile openLTE (http://sdr.osmocom.org/trac/wiki/rtl-sdr)")
endif()
if(NOT HACKRF_FOUND)
message(FATAL_ERROR "HackRF required to compile openLTE (http://github.com/mossmann/hackrf/wiki)")
endif()
if(NOT UHD_FOUND)
message(FATAL_ERROR "UHD required to compile openLTE (http://code.ettus.com/redmine/ettus/projects/uhd/wiki)")
endif()
......
......@@ -79,3 +79,5 @@ v00.10.00 Added LTE_fdd_enodeb application using a USRP B2X0 currently with
and LTE_file_recorder, and fixed a bug genererating the references
for the second slot in lte_generate_dmrs_pusch.m.
v00.10.01 Fixed a bug with the receive size used in LTE_fdd_enb_msgq.cc.
v00.10.02 Added support for bladeRF in LTE_fdd_dl_scan and LTE_file_recorder,
removed cmake requirements for rtl-sdr and hackrf.
......@@ -28,6 +28,7 @@
07/21/2013 Ben Wojtowicz Added support for HackRF Jawbreaker
08/26/2013 Ben Wojtowicz Updates to support GnuRadio 3.7.
11/13/2013 Ben Wojtowicz Added support for USRP B2X0.
11/30/2013 Ben Wojtowicz Added support for bladeRF.
*******************************************************************************/
......@@ -62,6 +63,7 @@ typedef enum{
LTE_FDD_DL_SCAN_HW_TYPE_RTL_SDR = 0,
LTE_FDD_DL_SCAN_HW_TYPE_HACKRF,
LTE_FDD_DL_SCAN_HW_TYPE_USRP,
LTE_FDD_DL_SCAN_HW_TYPE_BLADERF,
LTE_FDD_DL_SCAN_HW_TYPE_UNKNOWN,
}LTE_FDD_DL_SCAN_HW_TYPE_ENUM;
......
......@@ -29,6 +29,7 @@
08/26/2013 Ben Wojtowicz Updates to support GnuRadio 3.7 and added a
new hardware discovery mechanism.
11/13/2013 Ben Wojtowicz Added support for USRP B2X0.
11/30/2013 Ben Wojtowicz Added support for bladeRF.
*******************************************************************************/
......@@ -141,13 +142,20 @@ LTE_FDD_DL_SCAN_STATUS_ENUM LTE_fdd_dl_scan_flowgraph::start(uint16 dl_earfcn)
hardware_type = LTE_FDD_DL_SCAN_HW_TYPE_HACKRF;
samp_src = tmp_src1;
}else{
osmosdr::source::sptr tmp_src2 = osmosdr::source::make("rtl=0");
osmosdr::source::sptr tmp_src2 = osmosdr::source::make("bladerf");
if(0 != tmp_src2->get_sample_rates().size())
{
hardware_type = LTE_FDD_DL_SCAN_HW_TYPE_RTL_SDR;
hardware_type = LTE_FDD_DL_SCAN_HW_TYPE_BLADERF;
samp_src = tmp_src2;
}else{
samp_src = osmosdr::source::make();
osmosdr::source::sptr tmp_src3 = osmosdr::source::make("rtl=0");
if(0 != tmp_src3->get_sample_rates().size())
{
hardware_type = LTE_FDD_DL_SCAN_HW_TYPE_RTL_SDR;
samp_src = tmp_src3;
}else{
samp_src = osmosdr::source::make();
}
}
}
}
......@@ -162,6 +170,9 @@ LTE_FDD_DL_SCAN_STATUS_ENUM LTE_fdd_dl_scan_flowgraph::start(uint16 dl_earfcn)
case LTE_FDD_DL_SCAN_HW_TYPE_HACKRF:
state_machine = LTE_fdd_dl_scan_make_state_machine(15360000);
break;
case LTE_FDD_DL_SCAN_HW_TYPE_BLADERF:
state_machine = LTE_fdd_dl_scan_make_state_machine(15360000);
break;
case LTE_FDD_DL_SCAN_HW_TYPE_UNKNOWN:
default:
printf("Unknown hardware, treating like RTL-SDR\n");
......@@ -191,6 +202,14 @@ LTE_FDD_DL_SCAN_STATUS_ENUM LTE_fdd_dl_scan_flowgraph::start(uint16 dl_earfcn)
samp_src->set_gain(14);
samp_src->set_dc_offset_mode(osmosdr::source::DCOffsetAutomatic);
break;
case LTE_FDD_DL_SCAN_HW_TYPE_BLADERF:
samp_src->set_sample_rate(15360000);
samp_src->set_gain_mode(false);
samp_src->set_gain(6, "LNA");
samp_src->set_gain(33, "VGA1");
samp_src->set_gain(3, "VGA2");
samp_src->set_bandwidth(10000000);
break;
case LTE_FDD_DL_SCAN_HW_TYPE_UNKNOWN:
default:
printf("Unknown hardware, treating like RTL-SDR\n");
......
......@@ -26,6 +26,7 @@
---------- ------------- --------------------------------------------
08/26/2013 Ben Wojtowicz Created file
11/13/2013 Ben Wojtowicz Added support for USRP B2X0.
11/30/2013 Ben Wojtowicz Added support for bladeRF.
*******************************************************************************/
......@@ -60,6 +61,7 @@ typedef enum{
LTE_FILE_RECORDER_HW_TYPE_RTL_SDR = 0,
LTE_FILE_RECORDER_HW_TYPE_HACKRF,
LTE_FILE_RECORDER_HW_TYPE_USRP,
LTE_FILE_RECORDER_HW_TYPE_BLADERF,
LTE_FILE_RECORDER_HW_TYPE_UNKNOWN,
}LTE_FILE_RECORDER_HW_TYPE_ENUM;
......
......@@ -26,6 +26,7 @@
---------- ------------- --------------------------------------------
08/26/2013 Ben Wojtowicz Created file
11/13/2013 Ben Wojtowicz Added support for USRP B2X0.
11/30/2013 Ben Wojtowicz Added support for bladeRF.
*******************************************************************************/
......@@ -140,13 +141,20 @@ LTE_FILE_RECORDER_STATUS_ENUM LTE_file_recorder_flowgraph::start(uint16 ear
hardware_type = LTE_FILE_RECORDER_HW_TYPE_HACKRF;
samp_src = tmp_src1;
}else{
osmosdr::source::sptr tmp_src2 = osmosdr::source::make("rtl=0");
osmosdr::source::sptr tmp_src2 = osmosdr::source::make("bladerf");
if(0 != tmp_src2->get_sample_rates().size())
{
hardware_type = LTE_FILE_RECORDER_HW_TYPE_RTL_SDR;
hardware_type = LTE_FILE_RECORDER_HW_TYPE_BLADERF;
samp_src = tmp_src2;
}else{
samp_src = osmosdr::source::make();
osmosdr::source::sptr tmp_src3 = osmosdr::source::make("rtl=0");
if(0 != tmp_src3->get_sample_rates().size())
{
hardware_type = LTE_FILE_RECORDER_HW_TYPE_RTL_SDR;
samp_src = tmp_src3;
}else{
samp_src = osmosdr::source::make();
}
}
}
}
......@@ -176,6 +184,14 @@ LTE_FILE_RECORDER_STATUS_ENUM LTE_file_recorder_flowgraph::start(uint16 ear
samp_src->set_gain(14);
samp_src->set_dc_offset_mode(osmosdr::source::DCOffsetAutomatic);
break;
case LTE_FILE_RECORDER_HW_TYPE_BLADERF:
samp_src->set_sample_rate(15360000);
samp_src->set_gain_mode(false);
samp_src->set_gain(6, "LNA");
samp_src->set_gain(33, "VGA1");
samp_src->set_gain(3, "VGA2");
samp_src->set_bandwidth(10000000);
break;
case LTE_FILE_RECORDER_HW_TYPE_UNKNOWN:
default:
printf("Unknown hardware, treating like RTL-SDR\n");
......
......@@ -10,11 +10,11 @@ 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, and USRP
B2X0 hardware
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, and USRP
B2X0 hardware
currently supports rtl-sdr, hackrf, USRP B2X0,
and bladeRF hardware
LTE_fdd_enodeb An LTE FDD eNodeB application that currently
supports URSP B2X0 hardware
......@@ -96,7 +96,7 @@ LTE_fdd_dl_file_scan.
#############
To use the installed C++ live scanner, make sure LD_LIBRARY_PATH
is set to /usr/local/lib (export LD_LIBRARY_PATH=/usr/local/lib),
plug in rtl-sdr, hackrf, or USRP B2X0 hardware, run
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
......@@ -107,14 +107,14 @@ parameters simply type help on the control port.
###################
To use the installed C++ file recorder, make sure LD_LIBRARY_PATH
is set to /usr/local/lib (export LD_LIBRARY_PATH=/usr/local/lib),
plug in rtl-sdr, hackrf, or USRP B2X0 hardware, run
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 or USRP B2X0
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
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.
############
......
INCLUDE(FindPkgConfig)
PKG_CHECK_MODULES(PC_HACKRF libhackrf)
FIND_PATH(
HACKRF_INCLUDE_DIRS
NAMES libhackrf/hackrf.h
HINTS $ENV{HACKRF_DIR}/include
${PC_HACKRF_INCLUDEDIR}
PATHS /usr/local/include
/usr/include
)
FIND_LIBRARY(
HACKRF_LIBRARIES
NAMES hackrf
HINTS $ENV{HACKRF_DIR}/lib
${PC_HACKRF_LIBDIR}
PATHS /usr/local/lib
/usr/local/lib64
/usr/lib
/usr/lib64
)
INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(HACKRF DEFAULT_MSG HACKRF_LIBRARIES HACKRF_INCLUDE_DIRS)
MARK_AS_ADVANCED(HACKRF_LIBRARIES HACKRF_INCLUDE_DIRS)
INCLUDE(FindPkgConfig)
PKG_CHECK_MODULES(PC_RTLSDR librtlsdr)
FIND_PATH(
RTLSDR_INCLUDE_DIRS
NAMES rtl-sdr.h
HINTS $ENV{RTLSDR_DIR}/include
${PC_RTLSDR_INCLUDEDIR}
PATHS /usr/local/include
/usr/include
)
FIND_LIBRARY(
RTLSDR_LIBRARIES
NAMES rtlsdr
HINTS $ENV{RTLSDR_DIR}/lib
${PC_RTLSDR_LIBDIR}
PATHS /usr/local/lib
/usr/local/lib64
/usr/lib
/usr/lib64
)
INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(RTLSDR DEFAULT_MSG RTLSDR_LIBRARIES RTLSDR_INCLUDE_DIRS)
MARK_AS_ADVANCED(RTLSDR_LIBRARIES RTLSDR_INCLUDE_DIRS)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment