Project

General

Profile

Transceiver » History » Revision 3

Revision 2 (steve-m, 02/19/2016 10:49 PM) → Revision 3/5 (laforge, 02/21/2016 08:37 AM)

 
 
 h1. OpenBTS / OsmoBTS Transceiver 


 


 The following how-to will guide you through the steps needed for using an [[OsmocomBB]]-compatible phone as transceiver for [[osmobts:|OsmoBTS]] or OpenBTS. 


 [[OpenBTS]]. 


 h3. Prerequisites 


 


 First of all, make sure you have the *[[PreliminaryRequirements|Preliminary Requirements]]* Requirements]* Also you *need to have a [[GettingStarted|working [wikiGettingStarted working setup]]* of [[OsmocomBB]]. 

 To get started with your phone-as-BTS setup, follow the following steps: 


 


 h3. Dependencies 


 


 The transceiver needs libosmodsp as a dependency: 

 <pre> 
 
 <code class="sh"> 
 
 git clone git://git.osmocom.org/libosmo-dsp.git 
 </code></pre> 

 

 To compile and install it: 

 <pre> 
 
 <code class="sh"> 
 
 cd libosmo-dsp/ 
 autoreconf -i 
 ./configure 
 make 
 sudo make install 
 cd .. 
 </code></pre> 


 


 h3. Building [[OsmocomBB]] 


 


 In the [[OsmocomBB]]-tree, switch to the sylvain/testing branch: 
 <pre> 
 
 <code class="sh"> 
 
 git checkout sylvain/testing 
 </code></pre> 

 

 After doing that, build the source: 

 <pre> 
 
 <code class="sh"> 
 
 make HOST_layer23_CONFARGS=--enable-transceiver 
 </code></pre> 


 


 h3. Building [[OpenBTS]] 


 


 Follow this "excellent how-to":http://wush.net/trac/rangepublic/wiki/BuildInstallRun in the Range Networks Public wiki on building [[OpenBTS]]. 

 Once you have [[OpenBTS]] up and running, you need to change the following configuration parameters in the database (/etc/OpenBTS/OpenBTS.db): 

 <pre> 
 
 Control.GSMTAP.TargetIP = 127.0.0.1 
 GSM.Radio.NeedBSIC = 1 
 GSM.Radio.Band = 1800 
 GSM.CellSelection.Neighbors =             (set to empty string) 
 GSM.RACH.MaxRetrans = 3 
 GSM.RACH.TxInteger = 8 
 GSM.Radio.C0 = <your ARFCN (see note)> 
 Control.LUR.OpenRegistration = ^26242.*$     (note: in this example only IMSIs with MCC 262 and the MNC 42 will be allowed to register to the network, change that accordingly) 
 </code></pre> 

 

 *Warning:* Only set GSM.Radio.C0 to an ARFCN you have a *valid license* for. 


 


 h3. Booting the phone 


 


 Use [[osmocon]] osmocon to execute the *trx* app on the phone (trx.compalram/highram.bin). 


 


 h3. Starting [[OpenBTS]] 


 


 In the folder where the [[OpenBTS]] executable resides, create a script with the filename *transceiver* with the following content and make it executable: 

 <pre> 
 
 <code class="sh"> 
 
 #!/bin/bash 
 exec <your path to osmocom-bb>/src/host/layer23/src/transceiver/transceiver 1 
 </code></pre> 

 

 Whereas 1 needs to be replaced with the ARFCN of the reference cell you want to use for synchronization (find a strong one with the *rssi*-app for example). 

 You now can start up [[OpenBTS]] and should hopefully see the BTS by performing a manual network search with your phone. Monitor the output of osmocon and the transceiver/OpenBTS to see if all goes well. If anything should fail, reboot the phone and start over.
Add picture from clipboard (Maximum size: 48.8 MB)