diff --git a/Globals/Globals.cpp b/Globals/Globals.cpp index bf89bef..87f9bda 100644 --- a/Globals/Globals.cpp +++ b/Globals/Globals.cpp @@ -33,6 +33,7 @@ const char *gOpenWelcome = "Copyright 2008, 2009, 2010 Free Software Foundation, Inc.\n" "Copyright 2010 Kestrel Signal Processing, Inc.\n" "Copyright 2011, 2012, 2013, 2014 Range Networks, Inc.\n" + "Reloaded for 2023 by FlUxIuS @ Penthertz SAS.\n" "Release " VERSION " " PROD_CAT " formal build date " TIMESTAMP_ISO " " REPO_REV "\n" "\"OpenBTS\" is a trademark of Range Networks, Inc.\n" "\"OpenBTS-UMTS\" is a trademark of Range Networks, Inc.\n" diff --git a/README.md b/README.md index a69eb88..348bee6 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,26 @@ -OpenBTS-UMTS reloaded 2023 -========================== +# OpenBTS-UMTS reloaded 2024 -OpenBTS-UMTS reloaded. Compatibility with latest UHD drivers, several fixes and updated install documentation for ubuntu 22.04 +OpenBTS-UMTS reloaded for 2024. This fork extends changes from @EurecatSecurity make it compatiblee with latest UHD drivers, several fixes to work on Ubuntu 22.04. -Original notes from Range Networks: -For information on supported hardware, and build, install, setup and run instructions see [the wiki page](http://openbts.org/w/index.php/OpenBTS-UMTS). +## Compatible devices + +* USRP + * B200/B210/B205-mini* + * X300/X310 + * N200/N210 + * USRP2 +* LimeSDR (experimental) + +## Documentation + +Refer to this wiki page for the new documentation: https://github.com/PentHertz/OpenBTS-UMTS/wiki -Notes for this fork: -You can run ./install_dependences.sh to get dependencies satisfied before installation. +## Docker images +We are also providing a Docker images, so you will not to follow the installation instructions and run it straightfoward even if system dependencies are broken in the future (in theory!). + +Checkout the images there: https://hub.docker.com/r/penthertz/openbts-umts + + +## Original notes from Range Networks (obsolete): +For information on supported hardware, and build, install, setup and run instructions see [the wiki page](http://openbts.org/w/index.php/OpenBTS-UMTS). diff --git a/TransceiverUHD/UHDDevice.cpp b/TransceiverUHD/UHDDevice.cpp index a72cb51..fab60ba 100644 --- a/TransceiverUHD/UHDDevice.cpp +++ b/TransceiverUHD/UHDDevice.cpp @@ -82,11 +82,12 @@ static struct uhd_dev_offset uhd_offsets[NUM_USRP_TYPES] = { { B2XX, 99 }, { X300, 73 }, { UMTRX, 0 }, + { LimeSDRUSB, 50 }, // picked from http://swigerco.com/UHDDevice.cpp.diff }; static int get_dev_offset(enum uhd_dev_type type) { - if ((type != B2XX) && (type != USRP2) && (type != X300)) { + if ((type != B2XX) && (type != USRP2) && (type != X300) && (type != LimeSDRUSB)) { LOG(ALERT) << "Unsupported device type"; return 0; } @@ -237,7 +238,7 @@ bool UHDDevice::parse_dev_type() { std::string mboard_str, dev_str; uhd::property_tree::sptr prop_tree; - size_t usrp2_str, b200_str, b210_str, x300_str, x310_str, b205mini_str; + size_t usrp2_str, b200_str, b210_str, x300_str, x310_str, b205mini_str, LimeSDRUSB_str; prop_tree = usrp_dev->get_device()->get_tree(); dev_str = prop_tree->access("/name").get(); @@ -249,6 +250,7 @@ bool UHDDevice::parse_dev_type() b210_str = mboard_str.find("B210"); x300_str = mboard_str.find("X300"); x310_str = mboard_str.find("X310"); + LimeSDRUSB_str = mboard_str.find("LimeSDR"); if (b200_str != std::string::npos) { dev_type = B2XX; @@ -262,7 +264,9 @@ bool UHDDevice::parse_dev_type() dev_type = X300; } else if (x310_str != std::string::npos) { dev_type = X300; - } else { + } else if (LimeSDRUSB_str != std::string::npos) { + dev_type = LimeSDRUSB; + } else { goto nosupport; } diff --git a/TransceiverUHD/UHDDevice.h b/TransceiverUHD/UHDDevice.h index e01172d..f354b98 100644 --- a/TransceiverUHD/UHDDevice.h +++ b/TransceiverUHD/UHDDevice.h @@ -14,6 +14,7 @@ enum uhd_dev_type { B2XX, X300, UMTRX, + LimeSDRUSB, // picked from http://swigerco.com/UHDDevice.h.diff NUM_USRP_TYPES, }; diff --git a/configure.ac b/configure.ac index 9cd991a..e1cb14e 100644 --- a/configure.ac +++ b/configure.ac @@ -15,7 +15,7 @@ dnl See the LEGAL file in the main directory for details. dnl FIXME -- Need to add dependency check for asn1c. AC_PREREQ(2.57) -AC_INIT(openbts-umts,1.0-master) +AC_INIT(openbts-umts,1.1-master) AC_CANONICAL_BUILD AC_CANONICAL_HOST diff --git a/install_dependences.sh b/install_dependences.sh index 774b9af..20cb8d9 100755 --- a/install_dependences.sh +++ b/install_dependences.sh @@ -2,7 +2,7 @@ # This script has been tested in Ubuntu 16.04 and 18.04. Please report any problem you find. # Install all package dependencies -sudo apt install autoconf libtool build-essential libuhd-dev uhd-host libzmq3-dev libosip2-dev libortp-dev libusb-1.0-0-dev asn1c libtool-bin libsqlite3-dev libreadline-dev +sudo apt-get install -y autoconf libtool build-essential libuhd-dev uhd-host libzmq3-dev libosip2-dev libortp-dev libusb-1.0-0-dev asn1c libtool-bin libsqlite3-dev libreadline-dev # Clone submodules from base repo git submodule init