OpenBTS-UMTS with Lilme SDR

Hi,

Im trying to run OpenBTS-UMTS by by using Soapy UHD driver… I have sucessfully run it with USRP B210, but i want to use LimeSDR.

I have this errors:

Nov 21 17:06:34 QUARKS2 sipauthserve: opening configuration table from path /etc/OpenBTS/sipauthserve.db
Nov 21 17:06:34 QUARKS2 OpenBTS-UMTS: opening configuration table from path /etc/OpenBTS/OpenBTS-UMTS.db
Nov 21 17:06:34 QUARKS2 sipauthserve: ALERT 12867:12867 2017-11-21T17:06:34.4 sipauthserve.cpp:328:main: sipauthserve (re)starting
Nov 21 17:06:34 QUARKS2 openbts-umts: ALERT 139990016456576 17:06:34.4 OpenBTS-UMTS.cpp:166:main: OpenBTS-UMTS (re)starting, ver 1.0-master build date Nov 20 2017
Nov 21 17:06:34 QUARKS2 openbts-umts: ALERT 139990016456576 17:06:34.4 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=64 chcode=2 which conflicts with reserved channel: sf=32 chcode=1
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:532:fecComputeCommon: fecComputeCommon(0,0) TB=1x256 coded=560
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:532:fecComputeCommon: fecComputeCommon(0,1) TB=2x256 coded=1120
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:468:fecComputeUlNdataj: trchx: 0 1 560 256
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:478:fecComputeUlNdataj: sfi: 0, 256 150 143360
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:478:fecComputeUlNdataj: sfi: 1, 256 300 143360
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:478:fecComputeUlNdataj: sfi: 2, 256 600 143360
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:468:fecComputeUlNdataj: trchx: 0 1 1120 256
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:478:fecComputeUlNdataj: sfi: 0, 256 150 286720
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:478:fecComputeUlNdataj: sfi: 1, 256 300 286720
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:478:fecComputeUlNdataj: sfi: 2, 256 600 286720
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:478:fecComputeUlNdataj: sfi: 3, 256 1200 286720
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:371:ulEquation1: ulEquation1[0,0]: ulSum=143360 Ndataj=600 Zij=600 Fi=1 Nij=560 deltaNij=40
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:371:ulEquation1: ulEquation1[0,1]: ulSum=286720 Ndataj=1200 Zij=1200 Fi=1 Nij=1120 deltaNij=80
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:532:fecComputeCommon: fecComputeCommon(0,0) TB=0x360 coded=0
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:532:fecComputeCommon: fecComputeCommon(0,1) TB=1x360 coded=760
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:405:dlEquation1: dlEquation1 TrCh 0 Ndataj=1080 Nistar=Nij=760 dlSum=194560 Zij=1080 deltaNij=320
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:713:fecComputeDlTrChSizes: fecComputeDlTrChSizes TrCh 0 Nistar=760 deltaNistar=320 deltaNimax=320 RFseg=1080
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:737:fecComputeDlTrChSizes: fecComputeDlTrChSizes(0,0) deltaNi=320 coded=0 deltaNTTIl=0 maxNTTIil=760
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:737:fecComputeDlTrChSizes: fecComputeDlTrChSizes(0,1) deltaNi=320 coded=760 deltaNTTIl=320 maxNTTIil=760
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:532:fecComputeCommon: fecComputeCommon(0,0) TB=1x256 coded=560
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:532:fecComputeCommon: fecComputeCommon(0,1) TB=2x256 coded=1120
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:468:fecComputeUlNdataj: trchx: 0 1 560 256
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:478:fecComputeUlNdataj: sfi: 0, 256 150 143360
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:478:fecComputeUlNdataj: sfi: 1, 256 300 143360
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:478:fecComputeUlNdataj: sfi: 2, 256 600 143360
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:468:fecComputeUlNdataj: trchx: 0 1 1120 256
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:478:fecComputeUlNdataj: sfi: 0, 256 150 286720
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:478:fecComputeUlNdataj: sfi: 1, 256 300 286720
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:478:fecComputeUlNdataj: sfi: 2, 256 600 286720
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:478:fecComputeUlNdataj: sfi: 3, 256 1200 286720
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:371:ulEquation1: ulEquation1[0,0]: ulSum=143360 Ndataj=600 Zij=600 Fi=1 Nij=560 deltaNij=40
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSL1CC.cpp:371:ulEquation1: ulEquation1[0,1]: ulSum=286720 Ndataj=1200 Zij=1200 Fi=1 Nij=1120 deltaNij=80
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 ./UMTSL1CC.h:635:l1GetDlTrBkSz: getNumTrCh: 1
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 UMTSConfig.cpp:770:regenerate: regenerating system information messages
Nov 21 17:06:34 QUARKS2 openbts-umts: ALERT 139990016456576 17:06:34.4 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=256 chcode=2 which conflicts with reserved channel: sf=128 chcode=1
Nov 21 17:06:34 QUARKS2 openbts-umts: ALERT 139990016456576 17:06:34.4 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=64 chcode=3 which conflicts with reserved channel: sf=32 chcode=1
Nov 21 17:06:34 QUARKS2 openbts-umts: ALERT 139990016456576 17:06:34.4 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=256 chcode=4 which conflicts with reserved channel: sf=128 chcode=2
Nov 21 17:06:34 QUARKS2 openbts-umts: ALERT 139990016456576 17:06:34.4 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=64 chcode=2 which conflicts with reserved channel: sf=32 chcode=1
Nov 21 17:06:34 QUARKS2 openbts-umts: ALERT 139990016456576 17:06:34.4 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=256 chcode=0 which conflicts with reserved channel: sf=128 chcode=0
Nov 21 17:06:34 QUARKS2 openbts-umts: ALERT 139990016456576 17:06:34.4 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=256 chcode=1 which conflicts with reserved channel: sf=128 chcode=0
Nov 21 17:06:34 QUARKS2 openbts-umts: NOTICE 139990016456576 17:06:34.4 OpenBTS-UMTS.cpp:100:startTransceiver: starting transceiver ./transceiver 1
Nov 21 17:06:34 QUARKS2 transceiver: opening configuration table from path /etc/OpenBTS/OpenBTS-UMTS.db
Nov 21 17:06:34 QUARKS2 transceiver: configuration parameter UMTS.Radio.UHD.DeviceAddress has no defined value
Nov 21 17:06:39 QUARKS2 transceiver: NOTICE 140692957521664 17:06:39.4 Transceiver.cpp:244:driveControl: command is CMD POWEROFF
Nov 21 17:06:39 QUARKS2 transceiver: NOTICE 140692957521664 17:06:39.4 Transceiver.cpp:244:driveControl: command is CMD TXTUNE 2137600
Nov 21 17:06:39 QUARKS2 transceiver: NOTICE 140692957521664 17:06:39.4 Transceiver.cpp:244:driveControl: command is CMD RXTUNE 1947600
Nov 21 17:06:39 QUARKS2 openbts-umts: NOTICE 139989901444864 17:06:39.5 UMTSCommon.cpp:85:setFN: clock set FN: oldFN=507 newFN=580 diff=-73 BaseTime.sec=1511258799 .usec=500355 t=1511258799.50
Nov 21 17:06:39 QUARKS2 transceiver: NOTICE 140692957521664 17:06:39.5 Transceiver.cpp:244:driveControl: command is CMD SETRXGAIN 57
Nov 21 17:06:39 QUARKS2 transceiver: NOTICE 140692957521664 17:06:39.5 Transceiver.cpp:244:driveControl: command is CMD POWERON
Nov 21 17:06:39 QUARKS2 transceiver: NOTICE 140692957521664 17:06:39.5 Transceiver.cpp:111:start: Starting the transceiver
Nov 21 17:06:39 QUARKS2 transceiver: NOTICE 140692957521664 17:06:39.5 Transceiver.cpp:137:start: Transceiver running
Nov 21 17:06:39 QUARKS2 transceiver: NOTICE 140692957521664 17:06:39.5 Transceiver.cpp:244:driveControl: command is CMD SETPOWER 0
Nov 21 17:06:39 QUARKS2 openbts-umts: NOTICE 139989901444864 17:06:39.5 UMTSCommon.cpp:112:FN: TIME RAN BACKWARDS: prevFN=581 prev.sec=1511258799 usec=523084 currentFN=580 now.sec=1511258799 usec=523447 deltaSec=0 deltaUSec=362 elapsedUSec=362 elapsedFrames=0
Nov 21 17:06:39 QUARKS2 openbts-umts: NOTICE 139989901444864 17:06:39.5 UMTSCommon.cpp:117:FN: basetime.sec=1511258799 usec=523085
Nov 21 17:06:39 QUARKS2 openbts-umts: NOTICE 139989901444864 17:06:39.5 UMTSCommon.cpp:118:FN: prevdeltaSec=0 prevdeltaUSec=16377 prevelapsedUSec=16377 prevelapsedFrames=1
Nov 21 17:06:39 QUARKS2 transceiver: ALERT 140692817184512 17:06:39.5 UHDDevice.cpp:494:check_rx_md_err: UHD: Loss of monotonic time
Nov 21 17:06:39 QUARKS2 transceiver: ALERT 140692817184512 17:06:39.5 UHDDevice.cpp:495:check_rx_md_err: Current time: 0, Previous time: 89212
Nov 21 17:06:39 QUARKS2 transceiver: ALERT 140692817184512 17:06:39.5 UHDDevice.cpp:494:check_rx_md_err: UHD: Loss of monotonic time
Nov 21 17:06:39 QUARKS2 transceiver: ALERT 140692817184512 17:06:39.5 UHDDevice.cpp:495:check_rx_md_err: Current time: 0, Previous time: 89212
Nov 21 17:06:39 QUARKS2 transceiver: ALERT 140692817184512 17:06:39.5 UHDDevice.cpp:494:check_rx_md_err: UHD: Loss of monotonic time

Nov 21 17:07:00 QUARKS2 transceiver: NOTICE 140692957310784 17:07:00.1 Transceiver.cpp:157:stop: Stopping the transceiver
Nov 21 17:07:00 QUARKS2 transceiver: NOTICE 140692957310784 17:07:00.2 Transceiver.cpp:177:stop: Transceiver stopped
Nov 21 17:07:00 QUARKS2 transceiver: ERR 140692957310784 17:07:00.2 UHDDevice.cpp:442:stop: Device not running

Full Log: https://www.dropbox.com/s/st7uow260laxrlj/OpenBTS-UMTS-SoapyUHD-LimeSDR-Test01.log?dl=0

I’m not aware of anyone having used OpenBTS-UMTS with LimeSDR and suspect it might require hardware support adding to it. This was the case with OsmoTRX (fork of OpenBTS GSM transceiver).

I’d suggest posting details to the OpenBTS list.

Hi Pabilini,

I’ll be thankful if you can share how you accomplished the setup of openBTS-UMTS basestation.

I’m working on linux 17.10.
What version you used for a successful implementation.

Thank you.

I’ve made a stab at putting LimeSDR-USB device in OpenBTS-UMTS/TransceiverUHD/UHDDevice.[h | cpp] enough to at least startup. Way out of my league, but looks like the major device differences are in a table of uhd_offsets:

  • Timing adjustment in samples. This value accounts is empiracally measured
  • and accounts for overall group delay digital filters and analog components.

which vary from 0 for USRP1 to 99 for a B2XX, start the guessing for LimeSDR-USB at 0. It starts up and seems to transmit a spectrum around 950 (Uafrcn 3050) too wide for my rtl-sdr to fully comprehend.

1518232474.586098 140266499274560: Starting the transceiver…

linux; GNU C++ version 5.4.0 20160609; Boost_105800; UHD_003.010.003.000-0-gef157678

** Configuring logger
** Using internal clock reference
** Searching for USRP device
– Make connection: ‘LimeSDR-USB [USB 3.0] 9060B00471F23’
– Reference clock 30.72 MHz
– Device name: LimeSDR-USB
– Reference: 3.072e+07 MHz
– LMS7002M calibration values caching Disable
ALERT 139736365045568 22:14:35.9 UHDDevice.cpp:275:parse_dev_type: found: LimeSDR-USB

** Device ready
ALERT 139736225990400 22:14:41.1 RadioInterface.cpp:341:pullBuffer: Overpower detected on receive input
ALERT 139736225990400 22:14:41.1 RadioInterface.cpp:341:pullBuffer: Overpower detected on receive input
< … >
ALERT 139736225990400 22:14:41.2 RadioInterface.cpp:341:pullBuffer: Overpower detected on receive input
ALERT 139736225990400 22:14:41.2 RadioInterface.cpp:341:pullBuffer: Overpower detected on receive input
RTNETLINK answers: File exists
1518232481.995335 140266499274560:
system ready

1518232481.995368 140266499274560:
use the OpenBTS-UMTSCLI utility to access CLI

OpenBTS>

Isha - I was not able to create a working UMTS…

cswiger - Looks promising.Thank you for the interest.

Here’s my changes:

http://swigerco.com/UHDDevice.h.diff
http://swigerco.com/UHDDevice.cpp.diff

It actually uses 125% cpu on an i7-3770 CPU @ 3.40GHz and produces about a 5MHz wide pedestal around 950Mhz with defaults. Would be interesting if it actually works with a phone, I dont have an unlocked 3g around.

OpenBTS-UMTS needs libtool-bin and a very specific version of asn1c that is in the root of the source code, otherwise builds OK in Ubuntu16.04.

1 Like

Spotted a fellow in Twitter got OpenBTS-UMTS working with a LimeSDR-Mini : https://bastienbaranoff.wordpress.com/ I Tried it with the Mini and that just crashed the transceiver, so reverted to the LimeSDRUSB device in the TransceiverUHD/UHDDevice and reset the UMTS.Radio.Band back to 900 and uarfcn to 2937 and was able to see the network Test PLMN 1-1 3G ok and observe the signal with the Mini.

Will have to researach why the Mini does not work for me.

Hello do you know how to solve this error ?
OpenBTS-UMTS: TurboCoder.cpp:452: TurboInterleaver::TurboInterleaver(int): Assertion `K >= 40 && K <= 5114′ failed.
Abandon

Thanks

Not a clue - seems far removed from the radio layer like it could happen with a usrp even.

Love this comment tho :slight_smile:
//The interleaving is so stunningly complicated that a permutation
// vector needs to be initialized when the channel is created,
// then interleaving works off the permutation vector.

Thanks for the reply and I forgot thanks for your patches. Now what can I do ??

Is it this the problem ?
ALERT 139662259934848 20:14:10.4 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=256 chcode=1 which conflicts with reserved channel: sf=128 chcode=0

Here are the full log
./OpenBTS-UMTS
1537208977.791910 139964834174592:

OpenBTS, OpenBTS-UMTS
Copyright 2008, 2009, 2010 Free Software Foundation, Inc.
Copyright 2010 Kestrel Signal Processing, Inc.
Copyright 2011, 2012, 2013, 2014 Range Networks, Inc.
Release 1.0-master P formal build date 2018-09-17T18:24:02 d528034ac8 CommonLibs:d528034ac8
“OpenBTS” is a trademark of Range Networks, Inc.
“OpenBTS-UMTS” is a trademark of Range Networks, Inc.

Contributors:
Range Networks, Inc.:
David Burgess, Harvind Samra, Donald Kirker, Doug Brown, Pat Thompson, Michael Iedema
Kestrel Signal Processing, Inc.:
David Burgess, Harvind Samra, Raffi Sevlian, Roshan Baliga
GNU Radio:
Johnathan Corgan
Others:
Anne Kwong, Jacob Appelbaum, Joshua Lackey, Alon Levy
Alexander Chemeris, Alberto Escudero-Pascual
Incorporated GPL libraries and components:
libosip2 (LGPL), liportp2 (LGPL)

This program comes with ABSOLUTELY NO WARRANTY.

Use of this software may be subject to other legal restrictions,
including patent licsensing and radio spectrum licensing.
All users of this software are expected to comply with applicable
regulations and laws. See the LEGAL file in the source code for
more information.

ALERT 139964834174592 20:29:37.9 OpenBTS-UMTS.cpp:166:main: OpenBTS-UMTS (re)starting, ver 1.0-master build date Sep 17 2018
1537208977.916449 139964834174592:
Starting the system…
TBSIZE: 260
RACH radioFrameSize=1200 total=1200 tbsize=256
TBSIZE: 360
FACH SF=64 radioFrameSize=1080 total=1080 tbsize=360

TBSIZE: 260
RACH radioFrameSize=1200 total=1200 tbsize=256
TBSIZE: 360
FACH SF=64 radioFrameSize=1080 total=1080 tbsize=360

RACH TFS: mPresent=2 mMaxTfSize=0 mMaxTbSize=0 multiplexed=1 mTTI=10 mTypeOfChannelCoding=2 mRateMatchingAttribute=256 mCRCSize=16 TF( mTBSize=256 mNumTB=1) TF( mTBSize=256 mNumTB=2)
FACH TFS: mPresent=2 mMaxTfSize=0 mMaxTbSize=0 multiplexed=1 mTTI=10 mTypeOfChannelCoding=2 mRateMatchingAttribute=256 mCRCSize=12 TF( mTBSize=360 mNumTB=0) TF( mTBSize=360 mNumTB=1)
chReserve(64,2)
ALERT 139964834174592 20:29:37.9 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=64 chcode=2 which conflicts with reserved channel: sf=32 chcode=1
chReserve(256,2)
ALERT 139964834174592 20:29:37.9 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=256 chcode=2 which conflicts with reserved channel: sf=128 chcode=1
chReserve(64,3)
ALERT 139964834174592 20:29:37.9 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=64 chcode=3 which conflicts with reserved channel: sf=32 chcode=1
chReserve(256,4)
ALERT 139964834174592 20:29:37.9 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=256 chcode=4 which conflicts with reserved channel: sf=128 chcode=2
chReserve(64,2)
ALERT 139964834174592 20:29:37.9 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=64 chcode=2 which conflicts with reserved channel: sf=32 chcode=1
Dumping SIB5…
SysInfoType5 ::= {
sib6indicator: FALSE
pich-PowerOffset: -10
modeSpecificInfo: fdd ::= {
aich-PowerOffset: -10
}
primaryCCPCH-Info: fdd ::= {
tx-DiversityIndicator: FALSE
}
prach-SystemInformationList: PRACH-SystemInformationList ::= {
PRACH-SystemInformation ::= {
prach-RACH-Info: PRACH-RACH-Info ::= {
modeSpecificInfo: fdd ::= {
availableSignatures: 20 00
availableSF: 0 (sfpr32)
preambleScramblingCodeWordNumber: 0
puncturingLimit: 15 (pl1)
availableSubChannelNumbers: 00 20
}
}
transportChannelIdentity: 3
rach-TransportFormatSet: CommonTransChTFS ::= {
tti: CommonDynamicTF-InfoList ::= {
CommonDynamicTF-Info ::= {
rlc-Size: fdd ::= {
octetModeRLC-SizeInfoType2: 26
}
numberOfTbSizeList: numberOfTbSizeList ::= {

2
}
logicalChannelList:
}
}
semistaticTF-Information: SemistaticTF-Information ::= {
channelCodingType: 0 (half)
rateMatchingAttribute: 256
crc-Size: 3 (crc16)
}
}
rach-TFCS: TFCS-ReconfAdd ::= {
ctfcSize: ctfc2Bit ::= {
TFCS-ReconfAdd-foo2 ::= {
ctfc2: 0
powerOffsetInformation: PowerOffsetInformation ::= {
gainFactorInformation: SignalledGainFactors ::= {
modeSpecificInfo: fdd ::= {
gainFactorBetaC: 15
}
gainFactorBetaD: 15
}
powerOffsetPp-m: 2
}
}
TFCS-ReconfAdd-foo2 ::= {
ctfc2: 1
powerOffsetInformation: PowerOffsetInformation ::= {
gainFactorInformation: SignalledGainFactors ::= {
modeSpecificInfo: fdd ::= {
gainFactorBetaC: 15
}
gainFactorBetaD: 15
}
powerOffsetPp-m: 2
}
}
}
}
prach-Partitioning: fdd ::= {
ASCSetting-FDD ::= {
accessServiceClass-FDD: AccessServiceClass-FDD ::= {
availableSignatureStartIndex: 0
availableSignatureEndIndex: 0
assignedSubChannelNumber: F0
}
}
}
ac-To-ASC-MappingTable: AC-To-ASC-MappingTable ::= {
0
0
0
0
0
0
0
}
modeSpecificInfo: fdd ::= {
primaryCPICH-TX-Power: 10
constantValue: -10
prach-PowerOffset: PRACH-PowerOffset ::= {
powerRampStep: 1
preambleRetransMax: 64
}
rach-TransmissionParameters: RACH-TransmissionParameters ::= {
mmax: 32
nb01Min: 0
nb01Max: 50
}
aich-Info: AICH-Info ::= {
channelisationCode256: 2
sttd-Indicator: FALSE
aich-TransmissionTiming: 1 (e1)
}
}
}
}
sCCPCH-SystemInformationList: SCCPCH-SystemInformationList ::= {
SCCPCH-SystemInformation ::= {
secondaryCCPCH-Info: SecondaryCCPCH-Info ::= {
modeSpecificInfo: fdd ::= {
dummy1: 0 (mayBeUsed)
sttd-Indicator: FALSE
sf-AndCodeNumber: 3
pilotSymbolExistence: FALSE
tfci-Existence: TRUE
positionFixedOrFlexible: 0 (fixed)
timingOffset: 0
}
}
tfcs: TFCS-ReconfAdd ::= {
ctfcSize: ctfc2Bit ::= {
TFCS-ReconfAdd-foo2 ::= {
ctfc2: 0
}
TFCS-ReconfAdd-foo2 ::= {
ctfc2: 1
}
}
}
fach-PCH-InformationList: FACH-PCH-InformationList ::= {
FACH-PCH-Information ::= {
transportFormatSet: CommonTransChTFS ::= {
tti: CommonDynamicTF-InfoList ::= {
CommonDynamicTF-Info ::= {
rlc-Size: fdd ::= {
octetModeRLC-SizeInfoType2: 3
}
numberOfTbSizeList: numberOfTbSizeList ::= {


}
logicalChannelList:
}
}
semistaticTF-Information: SemistaticTF-Information ::= {
channelCodingType: 0 (half)
rateMatchingAttribute: 256
crc-Size: 2 (crc12)
}
}
transportChannelIdentity: 1
ctch-Indicator: FALSE
}
}
pich-Info: fdd ::= {
channelisationCode256: 4
pi-CountPerFrame: 0 (e18)
sttd-Indicator: FALSE
}
}
SCCPCH-SystemInformation ::= {
secondaryCCPCH-Info: SecondaryCCPCH-Info ::= {
modeSpecificInfo: fdd ::= {
dummy1: 0 (mayBeUsed)
sttd-Indicator: FALSE
sf-AndCodeNumber: 2
pilotSymbolExistence: FALSE
tfci-Existence: TRUE
positionFixedOrFlexible: 0 (fixed)
timingOffset: 0
}
}
tfcs: TFCS-ReconfAdd ::= {
ctfcSize: ctfc2Bit ::= {
TFCS-ReconfAdd-foo2 ::= {
ctfc2: 0
}
TFCS-ReconfAdd-foo2 ::= {
ctfc2: 1
}
}
}
fach-PCH-InformationList: FACH-PCH-InformationList ::= {
FACH-PCH-Information ::= {
transportFormatSet: CommonTransChTFS ::= {
tti: CommonDynamicTF-InfoList ::= {
CommonDynamicTF-Info ::= {
rlc-Size: fdd ::= {
octetModeRLC-SizeInfoType2: 3
}
numberOfTbSizeList: numberOfTbSizeList ::= {


}
logicalChannelList:
}
}
semistaticTF-Information: SemistaticTF-Information ::= {
channelCodingType: 0 (half)
rateMatchingAttribute: 256
crc-Size: 2 (crc12)
}
}
transportChannelIdentity: 1
ctch-Indicator: FALSE
}
}
}
}
}
SysInfoType11 ::= {
sib12indicator: FALSE
measurementControlSysInfo: MeasurementControlSysInfo ::= {
use-of-HCS: hcs-not-used ::= {
cellSelectQualityMeasure: cpich-Ec-N0 ::= {
}
}
}
}=== Phase1 Encoding SIB MIB
=== Phase1 Encoded SIB MIB size 152 blocks 0.672566
SIB0: bytes: ByteVector(size=19 data: 02 40 4a a5 00 00 44 20 64 20 33 21 91 51 00 30 74 a0 3b)
=== Phase1 Encoding SIB SIB1
=== Phase1 Encoded SIB SIB1 size 94 blocks 0.415929
SIB1: bytes: ByteVector(size=12 data: c4 02 10 8b 20 00 01 00 ce 01 ab 40)
=== Phase1 Encoding SIB SIB2
=== Phase1 Encoded SIB SIB2 size 20 blocks 0.0884956
SIB2: bytes: ByteVector(size=3 data: 00 06 40)
=== Phase1 Encoding SIB SIB3
=== Phase1 Encoded SIB SIB3 size 102 blocks 0.451327
SIB3: bytes: ByteVector(size=13 data: 00 00 00 00 42 c0 60 00 04 b4 ff ff fc)
=== Phase1 Encoding SIB SIB5
=== Phase1 Encoded SIB SIB5 size 466 blocks 2.06195
SIB4: bytes: ByteVector(size=59 data: 80 30 0e 88 00 00 f0 02 14 00 68 2c 0a ff 60 00 32 3f de c7 fb 84 03 c0 00 00 fa 99 1f fc 0c 80 91 e0 40 d0 00 08 22 00 43 08 8b fd 00 04 18 08 12 00 01 04 40 08 61 11 7f a0 00)
=== Phase1 Encoding SIB SIB7
=== Phase1 Encoded SIB SIB7 size 20 blocks 0.0884956
SIB5: bytes: ByteVector(size=3 data: 4a 00 00)
=== Phase1 Encoding SIB SIB11
=== Phase1 Encoded SIB SIB11 size 10 blocks 0.0442478
SIB6: bytes: ByteVector(size=2 data: 01 00)
chReserve(256,0)
ALERT 139964834174592 20:29:37.9 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=256 chcode=0 which conflicts with reserved channel: sf=128 chcode=0
chReserve(256,1)
ALERT 139964834174592 20:29:37.9 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=256 chcode=1 which conflicts with reserved channel: sf=128 chcode=0
1537208977.936202 139964834174592: Starting the transceiver…

linux; GNU C++ version 7.3.0; Boost_106200; UHD_003.010.003.UHD-3.10-0-gef157678

** Configuring logger
** Using internal clock reference
** Searching for USRP device
– Make connection: ‘LimeSDR Mini [USB 3.0] 1D40ED5D833C8F’
– Reference clock 40.00 MHz
– Device name: LimeSDR-Mini
– Reference: 40 MHz
– LMS7002M calibration values caching Disable
ALERT 140363306453952 20:29:39.5 UHDDevice.cpp:275:parse_dev_type: found: LimeSDR-Mini

** Device ready
ALERT 139964755265280 20:29:46.1 TRXManager.cpp:258:clockHandler: TRX clock interface timed out, assuming TRX is dead.
RTNETLINK answers: File exists
1537208987.152317 139964834174592:
system ready

1537208987.152380 139964834174592:
use the OpenBTS-UMTSCLI utility to access CLI

OpenBTS> ALERT 139964791346944 20:31:19.5 URRC.cpp:615:findUeByAsnId: no match ptmsi=0x15001 raimatch=0 findHandlebyPTmsi-urnti=0x0
31:19.5 UL_CCCH_MessageType_PR_rrcConnectionRequest (new UE) UE#1 URNTI=f292 stIdleMode rbid=0
newState: 1 1
31:19.5 DL_CCCH RRC_Connection_Setup_Message message size=60 UE#1 URNTI=f292 stIdleMode rbid=0
ALERT 139964791346944 20:31:21.7 URRC.cpp:615:findUeByAsnId: no match ptmsi=0x15001 raimatch=0 findHandlebyPTmsi-urnti=0x0
31:21.7 UL_CCCH_MessageType_PR_rrcConnectionRequest (new UE) UE#2 URNTI=f293 stIdleMode rbid=0
newState: 1 1
31:21.7 DL_CCCH RRC_Connection_Setup_Message message size=60 UE#2 URNTI=f293 stIdleMode rbid=0
newState: 2 1
ALERT 139964791346944 20:31:22.0 URLC.cpp:1755:rlcWriteLowSide: stateChange: before 0 0 after 0 0
31:22.2 UL_DCCH_MessageType_PR_rrcConnectionSetupComplete UE#2 URNTI=f293 stCELL_FACH rbid=2
31:22.4 UL_DCCH_MessageType_PR_initialDirectTransfer UE#2 URNTI=f293 stCELL_FACH rbid=3
31:22.4 UL GMM Msg: RoutingAreaUpdateRequest UE#2 URNTI=f293 stCELL_FACH
31:22.4 DL_DCCH RoutingAreaUpdateReject message size=7 UE#2 URNTI=f293 stCELL_FACH rbid=3
31:22.8 UL_DCCH_MessageType_PR_uplinkDirectTransfer UE#2 URNTI=f293 stCELL_FACH rbid=3
31:22.8 UL SM Msg: ActivatePDPContextRequest UE#2 URNTI=f293 stCELL_FACH
31:22.8 DL_DCCH ActivatePDPContextReject message size=6 UE#2 URNTI=f293 stCELL_FACH rbid=3
31:22.8 DL_DCCH GMMStatus message size=6 UE#2 URNTI=f293 stCELL_FACH rbid=3
31:22.8 DL_DCCH DetachRequest message size=6 UE#2 URNTI=f293 stCELL_FACH rbid=3
31:25.7 UL_DCCH_MessageType_PR_uplinkDirectTransfer UE#2 URNTI=f293 stCELL_FACH rbid=3
31:25.7 UL GMM Msg: AttachRequest UE#2 URNTI=f293 stCELL_FACH
31:25.7 DL_DCCH IdentityRequest message size=6 UE#2 URNTI=f293 stCELL_FACH rbid=3
31:41.0 UL_DCCH_MessageType_PR_uplinkDirectTransfer UE#2 URNTI=f293 stCELL_FACH rbid=3
31:41.0 UL GMM Msg: AttachRequest UE#2 URNTI=f293 stCELL_FACH
31:41.0 DL_DCCH IdentityRequest message size=6 UE#2 URNTI=f293 stCELL_FACH rbid=3
32:36.9 UL_CCCH_MessageType_PR_cellUpdate UE#2 URNTI=f293 stCELL_FACH rbid=0
32:36.9 DL_CCCH RRC Cell Update Confirm Message message size=9 UE#2 URNTI=f293 stCELL_FACH rbid=0
32:37.1 UL_CCCH_MessageType_PR_cellUpdate UE#2 URNTI=f293 stCELL_FACH rbid=0
32:37.1 DL_CCCH RRC Cell Update Confirm Message message size=9 UE#2 URNTI=f293 stCELL_FACH rbid=0
32:41.2 UL_CCCH_MessageType_PR_cellUpdate UE#2 URNTI=f293 stCELL_FACH rbid=0
32:41.2 DL_CCCH RRC Cell Update Confirm Message message size=9 UE#2 URNTI=f293 stCELL_FACH rbid=0
32:41.5 UL_CCCH_MessageType_PR_cellUpdate UE#2 URNTI=f293 stCELL_FACH rbid=0
32:41.5 DL_CCCH RRC Cell Update Confirm Message message size=9 UE#2 URNTI=f293 stCELL_FACH rbid=0
ALERT 139964791346944 20:32:42.4 URRC.cpp:615:findUeByAsnId: no match ptmsi=0x15001 raimatch=0 findHandlebyPTmsi-urnti=0x0
ALERT 139964791346944 20:32:42.4 URRC.cpp:533:purgeUEs: Deleting UE#1 URNTI=f292 stIdleMode
32:42.4 DL_DCCH RRC_Connection_Release_Message message size=3 UE#2 URNTI=f293 stCELL_FACH rbid=2
32:42.4 UL_CCCH_MessageType_PR_rrcConnectionRequest (new UE) UE#3 URNTI=f294 stIdleMode rbid=0
newState: 1 1
32:42.4 DL_CCCH RRC_Connection_Setup_Message message size=60 UE#3 URNTI=f294 stIdleMode rbid=0
newState: 2 1
ALERT 139964791346944 20:32:42.8 URLC.cpp:1755:rlcWriteLowSide: stateChange: before 0 0 after 0 0
32:43.0 UL_DCCH_MessageType_PR_rrcConnectionSetupComplete UE#3 URNTI=f294 stCELL_FACH rbid=2
32:43.2 UL_DCCH_MessageType_PR_initialDirectTransfer UE#3 URNTI=f294 stCELL_FACH rbid=3
32:43.2 UL GMM Msg: AttachRequest UE#3 URNTI=f294 stCELL_FACH
32:43.2 DL_DCCH IdentityRequest message size=6 UE#3 URNTI=f294 stCELL_FACH rbid=3
32:43.8 UL_DCCH_MessageType_PR_uplinkDirectTransfer UE#3 URNTI=f294 stCELL_FACH rbid=3
32:43.8 UL GMM Msg: IdentityResponse UE#3 URNTI=f294 stCELL_FACH
PDP of 0 is 0, gmm = e4007740, si = e40068e0
PDP of 5 is 0, gmm = e4007740, si = e40068e0
32:43.8 DL_DCCH AuthenticationAndCipheringReq message size=25 UE#3 URNTI=f294 stCELL_FACH rbid=3
PDP of 0 is 0
32:44.3 UL_DCCH_MessageType_PR_uplinkDirectTransfer UE#3 URNTI=f294 stCELL_FACH rbid=3
32:44.3 UL GMM Msg: AuthenticationAndCipheringResp UE#3 URNTI=f294 stCELL_FACH imsi=901550000000000
PDP of 0 is 0
PDP of 0 is 0
32:44.3 DL_DCCH RRC Security Mode Command message size=15 UE#3 URNTI=f294 stCELL_FACH rbid=2
32:44.6 UL_DCCH_MessageType_PR_securityModeComplete UE#3 URNTI=f294 stCELL_FACH rbid=2
32:44.6 DL_DCCH AttachAccept message size=26 UE#3 URNTI=f294 stCELL_FACH rbid=3
32:45.0 UL_DCCH_MessageType_PR_uplinkDirectTransfer UE#3 URNTI=f294 stCELL_FACH rbid=3
32:45.0 UL GMM Msg: AttachComplete UE#3 URNTI=f294 stCELL_FACH imsi=901550000000000
32:45.9 UL_DCCH_MessageType_PR_uplinkDirectTransfer UE#3 URNTI=f294 stCELL_FACH rbid=3
32:45.9 UL SM Msg: ActivatePDPContextRequest UE#3 URNTI=f294 stCELL_FACH imsi=901550000000000
kbps: 0, ops: 0
configDchPS: UL SF=128 RF=1x300=300 pb=16 turbo=1 maxprecoded=80 tb=0x76=0 coded=0

configDchPS: DL SF=256 RF=1x120=120 pb=16 turbo=1 maxprecoded=20 tb=1x20=20 coded=72

OpenBTS-UMTS: TurboCoder.cpp:452: TurboInterleaver::TurboInterleaver(int): Assertion `K >= 40 && K <= 5114’ failed.
Abandon

I get those also - with the LimeSDR-USB:

=== Phase1 Encoding SIB SIB11
=== Phase1 Encoded SIB SIB11 size 10 blocks 0.0442478
SIB6: bytes: ByteVector(size=2 data: 01 00)
chReserve(256,0)
ALERT 140194428622656 19:01:22.6 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=256 chcode=0 which conflicts with reserved channel: sf=128 chcode=0
chReserve(256,1)
ALERT 140194428622656 19:01:22.6 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=256 chcode=1 which conflicts with reserved channel: sf=128 chcode=0
1537225282.687106 140194428622656: Starting the transceiver…

linux; GNU C++ version 5.4.0 20160609; Boost_105800; UHD_003.010.003.000-0-gef157678

Currently using:
Version information:
Library version: v17.12.0-gfe53178a
Build timestamp: 2018-09-09
Interface version: v2017.12.0
Binary interface: 17.12-1

Which easily explains the Mini issue - reset to the latest and greatest Library version: v18.06.1-g2d43f04d and now OpenBTS-UMTS is running with the LimeSDR-Mini and is seen in ue scan.

02:02.4 UL_DCCH_MessageType_PR_uplinkDirectTransfer UE#1 URNTI=9f77 stCELL_FACH rbid=3
02:02.4 UL SM Msg: ActivatePDPContextRequest UE#1 URNTI=9f77 stCELL_FACH imsi=901550000000000
kbps: 0, ops: 0
PDU sizes: 42 42
PDU sizes: 42 42
PDU sizes: 42 42
Opening DCH
02:02.5 DL_DCCH RRC Radio Bearer Setup Message message size=170 UE#1 URNTI=9f77 stCELL_FACH rbid=2
ALERT 139863136986880 22:02:03.0 URLC.cpp:1755:rlcWriteLowSide: stateChange: before 5 5 after 5 5
02:03.0 UL_DCCH_MessageType_PR_radioBearerSetupFailure UE#1 URNTI=9f77 stCELL_FACH rbid=2
unhooking DCH 220e420
waiting to remove…
removed
I am know face to this problem… I configured UMTS.UseTurboCodes to 0. I have read that it can be solved with a dhcp server but I wasn’t able to make it work please help

So Im trying to set up my limesdr-usb with open-bts umts. I followed the Lime-mini instructions and modified the transceiver file as noted earlier. However I cannot get the Lime to connect to the program. I would like to note that UHD and USRP sees it. I was wondering if anyone could please help

linux; GNU C++ version 5.4.0 20160609; Boost_105800; UHD_003.010.003.UHD-3.10-0-gef157678

** Configuring logger
** Using internal clock reference
** Searching for USRP device
– Make connection: ‘LimeSDR-USB [USB 3.0] 9062000C4251A’
– Reference clock 30.72 MHz
– Device name: LimeSDR-USB
– Reference: 30.72 MHz
– LMS7002M calibration values caching Disable
ALERT 140235154937664 20:53:50.5 UHDDevice.cpp:275:parse_dev_type: found: LimeSDR-USB

ALERT 140235154937664 20:53:50.5 UHDDevice.cpp:299:parse_dev_type: Device not supported by OpenBTS-UMTS
** Device not available
ALERT 140203499718464 20:54:00.0 TRXManager.cpp:66:sendCommandPacket: RSP response
ALERT 140203499718464 20:54:00.0 TRXManager.cpp:81:powerOff: POWEROFF failed with status -1
ALERT 140203499718464 20:54:06.0 TRXManager.cpp:66:sendCommandPacket: RSP response
ALERT 140203499718464 20:54:06.0 TRXManager.cpp:412:tune: TXTUNE failed with status -1
ALERT 140203388675840 20:54:09.0 TRXManager.cpp:258:clockHandler: TRX clock interface timed out, assuming TRX is dead.
ALERT 140203388675840 20:54:12.0 TRXManager.cpp:258:clockHandler: TRX clock interface timed out, assuming TRX is dead.
ALERT 140203499718464 20:54:12.0 TRXManager.cpp:66:sendCommandPacket: RSP response
ALERT 140203499718464 20:54:12.0 TRXManager.cpp:112:setRxGain: SETRXGAIN failed with status -1
ALERT 140203388675840 20:54:15.0 TRXManager.cpp:258:clockHandler: TRX clock interface timed out, assuming TRX is dead.
^C

more complete Log

./OpenBTS-UMTS
1551935077.890684 139944205788992:

OpenBTS, OpenBTS-UMTS
Copyright 2008, 2009, 2010 Free Software Foundation, Inc.
Copyright 2010 Kestrel Signal Processing, Inc.
Copyright 2011, 2012, 2013, 2014 Range Networks, Inc.
Release 1.0-master P formal build date 2019-03-06T20:33:04 d528034ac8 CommonLibs:d528034ac8
“OpenBTS” is a trademark of Range Networks, Inc.
“OpenBTS-UMTS” is a trademark of Range Networks, Inc.

Contributors:
Range Networks, Inc.:
David Burgess, Harvind Samra, Donald Kirker, Doug Brown, Pat Thompson, Michael Iedema
Kestrel Signal Processing, Inc.:
David Burgess, Harvind Samra, Raffi Sevlian, Roshan Baliga
GNU Radio:
Johnathan Corgan
Others:
Anne Kwong, Jacob Appelbaum, Joshua Lackey, Alon Levy
Alexander Chemeris, Alberto Escudero-Pascual
Incorporated GPL libraries and components:
libosip2 (LGPL), liportp2 (LGPL)

This program comes with ABSOLUTELY NO WARRANTY.

Use of this software may be subject to other legal restrictions,
including patent licsensing and radio spectrum licensing.
All users of this software are expected to comply with applicable
regulations and laws. See the LEGAL file in the source code for
more information.

ALERT 139944205788992 21:04:37.9 OpenBTS-UMTS.cpp:166:main: OpenBTS-UMTS (re)starting, ver 1.0-master build date Mar 6 2019
1551935077.930715 139944205788992:
Starting the system…
TBSIZE: 260
RACH radioFrameSize=1200 total=1200 tbsize=256
TBSIZE: 360
FACH SF=64 radioFrameSize=1080 total=1080 tbsize=360

TBSIZE: 260
RACH radioFrameSize=1200 total=1200 tbsize=256
TBSIZE: 360
FACH SF=64 radioFrameSize=1080 total=1080 tbsize=360

RACH TFS: mPresent=2 mMaxTfSize=0 mMaxTbSize=0 multiplexed=1 mTTI=10 mTypeOfChannelCoding=2 mRateMatchingAttribute=256 mCRCSize=16 TF( mTBSize=256 mNumTB=1) TF( mTBSize=256 mNumTB=2)
FACH TFS: mPresent=2 mMaxTfSize=0 mMaxTbSize=0 multiplexed=1 mTTI=10 mTypeOfChannelCoding=2 mRateMatchingAttribute=256 mCRCSize=12 TF( mTBSize=360 mNumTB=0) TF( mTBSize=360 mNumTB=1)
chReserve(64,2)
ALERT 139944205788992 21:04:37.9 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=64 chcode=2 which conflicts with reserved channel: sf=32 chcode=1
chReserve(256,2)
ALERT 139944205788992 21:04:37.9 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=256 chcode=2 which conflicts with reserved channel: sf=128 chcode=1
chReserve(64,3)
ALERT 139944205788992 21:04:37.9 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=64 chcode=3 which conflicts with reserved channel: sf=32 chcode=1
chReserve(256,4)
ALERT 139944205788992 21:04:37.9 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=256 chcode=4 which conflicts with reserved channel: sf=128 chcode=2
chReserve(64,2)
ALERT 139944205788992 21:04:37.9 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=64 chcode=2 which conflicts with reserved channel: sf=32 chcode=1
Dumping SIB5…
SysInfoType5 ::= {
sib6indicator: FALSE
pich-PowerOffset: -10
modeSpecificInfo: fdd ::= {
aich-PowerOffset: -10
}
primaryCCPCH-Info: fdd ::= {
tx-DiversityIndicator: FALSE
}
prach-SystemInformationList: PRACH-SystemInformationList ::= {
PRACH-SystemInformation ::= {
prach-RACH-Info: PRACH-RACH-Info ::= {
modeSpecificInfo: fdd ::= {
availableSignatures: 20 00
availableSF: 0 (sfpr32)
preambleScramblingCodeWordNumber: 0
puncturingLimit: 15 (pl1)
availableSubChannelNumbers: 00 20
}
}
transportChannelIdentity: 3
rach-TransportFormatSet: CommonTransChTFS ::= {
tti: CommonDynamicTF-InfoList ::= {
CommonDynamicTF-Info ::= {
rlc-Size: fdd ::= {
octetModeRLC-SizeInfoType2: 26
}
numberOfTbSizeList: numberOfTbSizeList ::= {

2
}
logicalChannelList:
}
}
semistaticTF-Information: SemistaticTF-Information ::= {
channelCodingType: 0 (half)
rateMatchingAttribute: 256
crc-Size: 3 (crc16)
}
}
rach-TFCS: TFCS-ReconfAdd ::= {
ctfcSize: ctfc2Bit ::= {
TFCS-ReconfAdd-foo2 ::= {
ctfc2: 0
powerOffsetInformation: PowerOffsetInformation ::= {
gainFactorInformation: SignalledGainFactors ::= {
modeSpecificInfo: fdd ::= {
gainFactorBetaC: 15
}
gainFactorBetaD: 15
}
powerOffsetPp-m: 2
}
}
TFCS-ReconfAdd-foo2 ::= {
ctfc2: 1
powerOffsetInformation: PowerOffsetInformation ::= {
gainFactorInformation: SignalledGainFactors ::= {
modeSpecificInfo: fdd ::= {
gainFactorBetaC: 15
}
gainFactorBetaD: 15
}
powerOffsetPp-m: 2
}
}
}
}
prach-Partitioning: fdd ::= {
ASCSetting-FDD ::= {
accessServiceClass-FDD: AccessServiceClass-FDD ::= {
availableSignatureStartIndex: 0
availableSignatureEndIndex: 0
assignedSubChannelNumber: F0
}
}
}
ac-To-ASC-MappingTable: AC-To-ASC-MappingTable ::= {
0
0
0
0
0
0
0
}
modeSpecificInfo: fdd ::= {
primaryCPICH-TX-Power: 10
constantValue: -10
prach-PowerOffset: PRACH-PowerOffset ::= {
powerRampStep: 1
preambleRetransMax: 64
}
rach-TransmissionParameters: RACH-TransmissionParameters ::= {
mmax: 32
nb01Min: 0
nb01Max: 50
}
aich-Info: AICH-Info ::= {
channelisationCode256: 2
sttd-Indicator: FALSE
aich-TransmissionTiming: 1 (e1)
}
}
}
}
sCCPCH-SystemInformationList: SCCPCH-SystemInformationList ::= {
SCCPCH-SystemInformation ::= {
secondaryCCPCH-Info: SecondaryCCPCH-Info ::= {
modeSpecificInfo: fdd ::= {
dummy1: 0 (mayBeUsed)
sttd-Indicator: FALSE
sf-AndCodeNumber: 3
pilotSymbolExistence: FALSE
tfci-Existence: TRUE
positionFixedOrFlexible: 0 (fixed)
timingOffset: 0
}
}
tfcs: TFCS-ReconfAdd ::= {
ctfcSize: ctfc2Bit ::= {
TFCS-ReconfAdd-foo2 ::= {
ctfc2: 0
}
TFCS-ReconfAdd-foo2 ::= {
ctfc2: 1
}
}
}
fach-PCH-InformationList: FACH-PCH-InformationList ::= {
FACH-PCH-Information ::= {
transportFormatSet: CommonTransChTFS ::= {
tti: CommonDynamicTF-InfoList ::= {
CommonDynamicTF-Info ::= {
rlc-Size: fdd ::= {
octetModeRLC-SizeInfoType2: 3
}
numberOfTbSizeList: numberOfTbSizeList ::= {


}
logicalChannelList:
}
}
semistaticTF-Information: SemistaticTF-Information ::= {
channelCodingType: 0 (half)
rateMatchingAttribute: 256
crc-Size: 2 (crc12)
}
}
transportChannelIdentity: 1
ctch-Indicator: FALSE
}
}
pich-Info: fdd ::= {
channelisationCode256: 4
pi-CountPerFrame: 0 (e18)
sttd-Indicator: FALSE
}
}
SCCPCH-SystemInformation ::= {
secondaryCCPCH-Info: SecondaryCCPCH-Info ::= {
modeSpecificInfo: fdd ::= {
dummy1: 0 (mayBeUsed)
sttd-Indicator: FALSE
sf-AndCodeNumber: 2
pilotSymbolExistence: FALSE
tfci-Existence: TRUE
positionFixedOrFlexible: 0 (fixed)
timingOffset: 0
}
}
tfcs: TFCS-ReconfAdd ::= {
ctfcSize: ctfc2Bit ::= {
TFCS-ReconfAdd-foo2 ::= {
ctfc2: 0
}
TFCS-ReconfAdd-foo2 ::= {
ctfc2: 1
}
}
}
fach-PCH-InformationList: FACH-PCH-InformationList ::= {
FACH-PCH-Information ::= {
transportFormatSet: CommonTransChTFS ::= {
tti: CommonDynamicTF-InfoList ::= {
CommonDynamicTF-Info ::= {
rlc-Size: fdd ::= {
octetModeRLC-SizeInfoType2: 3
}
numberOfTbSizeList: numberOfTbSizeList ::= {


}
logicalChannelList:
}
}
semistaticTF-Information: SemistaticTF-Information ::= {
channelCodingType: 0 (half)
rateMatchingAttribute: 256
crc-Size: 2 (crc12)
}
}
transportChannelIdentity: 1
ctch-Indicator: FALSE
}
}
}
}
}
SysInfoType11 ::= {
sib12indicator: FALSE
measurementControlSysInfo: MeasurementControlSysInfo ::= {
use-of-HCS: hcs-not-used ::= {
cellSelectQualityMeasure: cpich-Ec-N0 ::= {
}
}
}
}=== Phase1 Encoding SIB MIB
=== Phase1 Encoded SIB MIB size 152 blocks 0.672566
SIB0: bytes: ByteVector(size=19 data: 00 00 40 25 00 00 44 20 64 20 33 21 91 51 00 30 74 a0 3b)
=== Phase1 Encoding SIB SIB1
=== Phase1 Encoded SIB SIB1 size 94 blocks 0.415929
SIB1: bytes: ByteVector(size=12 data: c4 02 10 8b 20 00 01 00 ce 01 ab 40)
=== Phase1 Encoding SIB SIB2
=== Phase1 Encoded SIB SIB2 size 20 blocks 0.0884956
SIB2: bytes: ByteVector(size=3 data: 00 06 40)
=== Phase1 Encoding SIB SIB3
=== Phase1 Encoded SIB SIB3 size 102 blocks 0.451327
SIB3: bytes: ByteVector(size=13 data: 00 00 00 00 42 c0 60 00 04 b4 ff ff fc)
=== Phase1 Encoding SIB SIB5
=== Phase1 Encoded SIB SIB5 size 466 blocks 2.06195
SIB4: bytes: ByteVector(size=59 data: 80 30 0e 88 00 00 f0 02 14 00 68 2c 0a ff 60 00 32 3f de c7 fb 84 03 c0 00 00 fa 99 1f fc 0c 80 91 e0 40 d0 00 08 22 00 43 08 8b fd 00 04 18 08 12 00 01 04 40 08 61 11 7f a0 00)
=== Phase1 Encoding SIB SIB7
=== Phase1 Encoded SIB SIB7 size 20 blocks 0.0884956
SIB5: bytes: ByteVector(size=3 data: 4a 00 00)
=== Phase1 Encoding SIB SIB11
=== Phase1 Encoded SIB SIB11 size 10 blocks 0.0442478
SIB6: bytes: ByteVector(size=2 data: 01 00)
chReserve(256,0)
ALERT 139944205788992 21:04:37.9 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=256 chcode=0 which conflicts with reserved channel: sf=128 chcode=0
chReserve(256,1)
ALERT 139944205788992 21:04:37.9 UMTSPhCh.cpp:654:chConflict: Attempt to reserve channel: sf=256 chcode=1 which conflicts with reserved channel: sf=128 chcode=0
1551935077.946979 139944205788992: Starting the transceiver…

linux; GNU C++ version 5.4.0 20160609; Boost_105800; UHD_003.010.003.UHD-3.10-0-gef157678

** Configuring logger
** Using internal clock reference
** Searching for USRP device
– Make connection: ‘LimeSDR-USB [USB 3.0] 9062000C4251A’
– Reference clock 30.72 MHz
– Device name: LimeSDR-USB
– Reference: 30.72 MHz
– LMS7002M calibration values caching Disable
ALERT 140508222109504 21:04:39.4 UHDDevice.cpp:275:parse_dev_type: found: LimeSDR-USB

ALERT 140508222109504 21:04:39.4 UHDDevice.cpp:299:parse_dev_type: Device not supported by OpenBTS-UMTS
** Device not available

The UHD driver is finding your device, but the openbts-umts UHDDevice code doesn’t know what to do with it:

ALERT 140508222109504 21:04:39.4 UHDDevice.cpp:275:parse_dev_type: found: LimeSDR-USB
ALERT 140508222109504 21:04:39.4 UHDDevice.cpp:299:parse_dev_type: Device not supported by OpenBTS-UMTS

The error basically means that it can’t find something called “LimeSDR-USB” in the options inside UHDDevice.cpp
Most probably you haven’t patched the code with cswiger patches or you forget to recompile after patching

You should have a line like this (among other changes in the patch )

LimeSDRUSB_str  = mboard_str.find("LimeSDR-USB");

in UHDDevice.cpp if you patched it correctly.

Yes so I have done the patch as outlined by cswinger. Also I have recompiled , which is why I am at a loss to why it is not working

I dont consider myself a programmer, but this code part is quite straightforward:
(from UHDDevice.cpp, including Lime mini and USB support, please note that those are not the only changes required in this particular file )

LimeSDRUSB_str  = mboard_str.find("LimeSDR-USB");
LimeSDRMini_str = mboard_str.find("LimeSDR-mini");
LOG(ALERT) << "found: " << mboard_str << std::endl;

if (b200_str != std::string::npos) {
        dev_type = B2XX;
} else if (b210_str != std::string::npos) {
        dev_type = B2XX;
} else if (usrp2_str != std::string::npos) {
        dev_type = USRP2;
} else if (x300_str != std::string::npos) {
        dev_type = X300;
} else if (x310_str != std::string::npos) {
        dev_type = X300;
} else if (LimeSDRUSB_str != std::string::npos) {
        dev_type = LimeSDRUSB;
} else if (LimeSDRMini_str != std::string::npos) {
        dev_type = LimeSDRMini;
} else {
        goto nosupport;
}

tx_window = TX_WINDOW_FIXED;
LOG(INFO) << "Using fixed transmit window for "
          << dev_str << " " << mboard_str;
return true;

nosupport:
    LOG(ALERT) << "Device not supported by OpenBTS-UMTS";
    return false;

My suggestion would be to add some prints so you can check why the string comparison “LimeSDRUSB_str != std::string::npos” is not working for you.
As a last resort, you can also try to force LimeSDR-USB inside the “else” with
dev_type = LimeSDRUSB;
and commenting out the goto statement.