[[bts-examples]]
== OsmoNITB example configuration files

The `openbsc/doc/examples/osmo-nitb` directory in the OpenBSC source
tree contains a collection of example configuration files, sorted by BTS
type.

This chapter is illustrating some excerpts from those examples

[[bts_example_bs11]]
=== Example configuration for OsmoNITB with one dual-TRX BS-11

.OsmoNITB with BS11, 2 TRX, no frequency hopping
====

----
e1_input
 e1_line 0 driver misdn
network
 network country code 1
 mobile network code 1
 short name OpenBSC
 long name OpenBSC
 timer t3101 10
 timer t3113 60
 bts 0
  type bs11 <1>
  band GSM900
  cell_identity 1
  location_area_code 1
  training_sequence_code 7
  base_station_id_code 63
  oml e1 line 0 timeslot 1 sub-slot full <2>
  oml e1 tei 25 <3>
  trx 0
   arfcn 121
   max_power_red 0
   rsl e1 line 0 timeslot 1 sub-slot full <4>
   rsl e1 tei 1 <5>
    timeslot 0
     phys_chan_config CCCH+SDCCH4
     e1 line 0 timeslot 1 sub-slot full
    timeslot 1
     phys_chan_config TCH/F
     e1 line 0 timeslot 2 sub-slot 1 <6>
    timeslot 2
     phys_chan_config TCH/F
     e1 line 0 timeslot 2 sub-slot 2
    timeslot 3
     phys_chan_config TCH/F
     e1 line 0 timeslot 2 sub-slot 3
    timeslot 4
     phys_chan_config TCH/F
     e1 line 0 timeslot 3 sub-slot 0
    timeslot 5
     phys_chan_config TCH/F
     e1 line 0 timeslot 3 sub-slot 1
    timeslot 6
     phys_chan_config TCH/F
     e1 line 0 timeslot 3 sub-slot 2
    timeslot 7
     phys_chan_config TCH/F
     e1 line 0 timeslot 3 sub-slot 3
  trx 1
   arfcn 123
   max_power_red 0
   rsl e1 line 0 timeslot 1 sub-slot full <4>
   rsl e1 tei 2 <5>
    timeslot 0
     phys_chan_config TCH/F
     e1 line 0 timeslot 4 sub-slot 0 <6>
    timeslot 1
     phys_chan_config TCH/F
     e1 line 0 timeslot 4 sub-slot 1
    timeslot 2
     phys_chan_config TCH/F
     e1 line 0 timeslot 4 sub-slot 2
    timeslot 3
     phys_chan_config TCH/F
     e1 line 0 timeslot 4 sub-slot 3
    timeslot 4
     phys_chan_config TCH/F
     e1 line 0 timeslot 5 sub-slot 0
    timeslot 5
     phys_chan_config TCH/F
     e1 line 0 timeslot 5 sub-slot 1
    timeslot 6
     phys_chan_config TCH/F
     e1 line 0 timeslot 5 sub-slot 2
    timeslot 7
     phys_chan_config TCH/F
     e1 line 0 timeslot 5 sub-slot 3
----
====

<1> The BTS type must be set to __bs11__
<2> The OML E1 timeslot needs to be identical with what was on the BTS side using LMT.
<3> The OML TEI value needs to be identical with what was configured on the BTS side using LMT.
<4> The RSL E1 timeslot can be identical for all TRX.
<5> The RSL TEI values __must__ be different if multiple TRX share one E1 signalling timeslot.
<6> The TCH all need to be allocated one 16k sub-slot on the E1

[[bts_example_nbts]]
=== Example configuration for OsmoNITB with one single-TRX nanoBTS

.OsmoNITB with one single-TRX nanoBTS
====

----
e1_input
 e1_line 0 driver ipa <1>
network
 network country code 1
 mobile network code 1
 short name OpenBSC
 long name OpenBSC
 auth policy closed
 location updating reject cause 13
 encryption a5 0
 neci 1
 rrlp mode none
 mm info 1
 handover 0
 bts 0
  type nanobts <2>
  band DCS1800 <3>
  cell_identity 0
  location_area_code 1
  training_sequence_code 7
  base_station_id_code 63
  ms max power 15
  cell reselection hysteresis 4
  rxlev access min 0
  channel allocator ascending
  rach tx integer 9
  rach max transmission 7
  ip.access unit_id 1801 0 <4>
  oml ip.access stream_id 255 line 0
  gprs mode none
  trx 0
   rf_locked 0
   arfcn 871 <5>
   nominal power 23
   max_power_red 20 <6>
   rsl e1 tei 0
    timeslot 0
     phys_chan_config CCCH+SDCCH4
    timeslot 1
     phys_chan_config SDCCH8
    timeslot 2
     phys_chan_config TCH/F
    timeslot 3
     phys_chan_config TCH/F
    timeslot 4
     phys_chan_config TCH/F
    timeslot 5
     phys_chan_config TCH/F
    timeslot 6
     phys_chan_config TCH/F
    timeslot 7
     phys_chan_config TCH/F
----
====

<1> You have to configure one virtual E1 line with the
    IPA driver in order to use Abis/IP.  One e1_line is
    sufficient for any number of A-bis/IP BTSs, there is no
    limit like in physical E1 lines.
<2> The BTS type must be set using `type nanobts`
<3> The GSM band must be set according to the BTS hardware.
<4> The IPA Unit ID parameter must be set to what has been configured on
    the BTS side using the __BTS Manager__ or `ipaccess-config`.
<5> The ARFCN of the BTS.
<6> All known nanoBTS units have a nominal transmit power of 23 dBm.  If
    a `max_power_red` of 20 (dB) is configured, the resulting output
    power at the BTS Tx port is 23 - 20 = 3 dBm.

[NOTE]
====
The `nominal_power` setting does __not__ influence the transmitted power
to the BTS!  It is a setting by which the system administrator tells the
BSC about the nominal output power of the BTS.  The BSC uses this as
basis for calculations.
====


[[bts_example_nbts_multi]]
=== Example configuration for OsmoNITB with multi-TRX nanoBTS

.OsmoNITB configured for dual-TRX (stacked) nanoBTS
====

----
e1_input
 e1_line 0 driver ipa
network
 network country code 1
 mobile network code 1
 short name OpenBSC
 long name OpenBSC
 auth policy closed
 location updating reject cause 13
 encryption a5 0
 neci 1
 rrlp mode none
 mm info 0
 handover 0
 bts 0
  type nanobts
  band DCS1800
  cell_identity 0
  location_area_code 1
  training_sequence_code 7
  base_station_id_code 63
  ms max power 15
  cell reselection hysteresis 4
  rxlev access min 0
  channel allocator ascending
  rach tx integer 9
  rach max transmission 7
  ip.access unit_id 1800 0 <1>
  oml ip.access stream_id 255 line 0
  gprs mode none
  trx 0
   rf_locked 0
   arfcn 871
   nominal power 23
   max_power_red 0
   rsl e1 tei 0
    timeslot 0
     phys_chan_config CCCH+SDCCH4
    timeslot 1
     phys_chan_config SDCCH8
    timeslot 2
     phys_chan_config TCH/F
    timeslot 3
     phys_chan_config TCH/F
    timeslot 4
     phys_chan_config TCH/F
    timeslot 5
     phys_chan_config TCH/F
    timeslot 6
     phys_chan_config TCH/F
    timeslot 7
     phys_chan_config TCH/F
  trx 1
   rf_locked 0
   arfcn 873
   nominal power 23
   max_power_red 0
   rsl e1 tei 0
    timeslot 0
     phys_chan_config SDCCH8
    timeslot 1
     phys_chan_config TCH/F
    timeslot 2
     phys_chan_config TCH/F
    timeslot 3
     phys_chan_config TCH/F
    timeslot 4
     phys_chan_config TCH/F
    timeslot 5
     phys_chan_config TCH/F
    timeslot 6
     phys_chan_config TCH/F
    timeslot 7
     phys_chan_config TCH/F
----
====

<1> In this example, the IPA Unit ID is specified as `1800 0`. Thus, the
    first nanoBTS unit (`trx 0`) needs to be configured to 1800/0/0 and
    the second nanoBTS unit (`trx 1`) needs to be configured to 1800/0/1.
    You can configure the BTS unit IDs using the `ipaccess-config`
    utility included in OpenBSC.

[NOTE]
====
For building a multi-TRX setup, you also need to connect the TIB cables
between the two nanoBTS units, as well as the coaxial/RF AUX cabling.
====
