Transceiver » History » Revision 4
Revision 3 (laforge, 02/21/2016 08:37 AM) → Revision 4/5 (laforge, 03/16/2016 02:02 PM)
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. h3. Prerequisites First of all, make sure you have the *[[PreliminaryRequirements|Preliminary Requirements]]* Also you *need to have a [[GettingStarted|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 [[OpenBTS]] Follow this "excellent how-to":http://wush.net/trac/rangepublic/wiki/BuildInstallRun in the Range Networks Public wiki on building OpenBTS. [[OpenBTS]]. Once you have OpenBTS [[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]] to execute the *trx* app on the phone (trx.compalram/highram.bin). h3. Starting OpenBTS [[OpenBTS]] In the folder where the OpenBTS [[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 [[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.