Project

General

Profile

NanoBTSmultiTRX » History » Version 2

laforge, 02/19/2016 10:48 PM
add log from bsc_hack

1 1 laforge
[[PageOutline]]
2
3
= How to create a nanoBTS multi-TRX setup =
4
5
== Preparation ==
6
7
In order to configure an ip.access nanoBTS multi-TRX setup, you will need
8
 * at least two nanoBTS (let's say you have N units, where 1 < N < 5)
9
 * N-1 TIB cables (see section below how to make them)
10
 * N-1 RF cables (see section below)
11
 * N RJ45 cables
12
 * N PoE capable Ethernet ports at a switch
13
14
=== TIB cables ===
15
16
==== The TIB connectors ====
17
18
As you may have noticed, the nanoBTS has two connectors called TIB-in and TIB-out.
19
TIB refers to the Timing Interface Bus, a proprietary interface to synchronize the
20
various nanoBTS units in a multi-TRX setup.
21
22
While upon first sight they may appear to be RJ-45, they are in fact not.
23
Careful inspection will show that while they have the same width as RJ-45, they
24
do actually have two extra pins (one on each side), making it a 10pin connector.
25
The official designation for those connectors is RJ-69.
26
27
The corresponding plugs and 10pin cables are relatively hard to come by.  In
28
Germany you can order them from http://www.segor.de/
29
30
Unfortunately, the RJ-69 sockets in the nanoBTS are not standard, but have a
31
dent on the right side (right of the connectors ''nose'').  We have not been able
32
to find a source for the matching plugs, so we resort to milling part of the
33
standard RJ-69 plug away.
34
35
You will need two RJ-69 (10pin RJ-45) connectors for each cable.  I suggest you
36
buy some extra, in case you break one during mounting or milling.
37
38
==== Milling the RJ-69 connector ====
39
40
We don't really have any mechanical specifications for the connectors.  Simply
41
use a small milling tool to remove parts of the tip of the plug until it fits
42
into the socket.
43
44
FIXME: picture of milled plug
45
==== Crimping the RJ-69 connectors ====
46
47
The crimping is the same like crimping RJ-45 connectors.  Any standard crimping
48
tool should work - with the exception that the two additional pins will not be
49
pushed into the wire but still stand out.
50
51
(FIXME: Photograph)
52
53
We have used a screwdriver to manually push those two pins into the plug.  Be
54
careful not to damage the plug nor hurt yourself!
55
56
Please crimp one connector to each side of the cable, resulting in a 1:1 mapping
57
of the colors.  (FIXME: Picture)
58
59
=== RF Cables ===
60
61
FIXME
62
63
=== Completing the physical setup ===
64
65
You will designate one BTS as the master, and all others as slave.
66
67
Start from the master TIB-out, connect it to the first slave TIB-in.  Connect
68
the first slave TIB-out with the second slave TIB-in.  Do not create a loop,
69
but simply a chain from one unit to another.
70
71
=== Configuring the Unit IDs ===
72
73
In a multi-TRX setup, the ip.access Unit IDs have to be set in a way that
74
the Site-ID and BTS-ID portions are equal, while the TRX-ID increments.
75
So for example:
76
 * 1800/0/0 -- master BTS of multi-TRX setup
77
 * 1800/0/1 -- first slave of multi-TRX setup
78
 * 1800/0/2 -- second slave of multi-TRX setup (if any)
79
 * 1800/0/3 -- third slave of multi-TRX setup (if any)
80
81
In order to set the Unit ID's accordingly, you can use the [wiki:ipaccess-config] tool.
82
83
In the following example, we configure the Unit IDs of two BTS.  The '-r' is for restarting
84
the BTS after the Unit ID change:
85
{{{
86
./ipaccess-config -u 1800/0/0 -r 192.168.100.120
87
./ipaccess-config -u 1800/0/1 -r 192.168.100.190
88
}}}
89
90
If we run [wiki:ipaccess-find] after the BTS have restarted, you will see something
91
along the lines of the following output:
92
{{{
93
MAC Address='00:02:95:11:11:11'  IP Address='192.168.100.120'  Unit ID='1800/0/0'  Location 1=''  Location 2='BTS_NBT131G'
94
 Equipment Version='165a029_55'  Software Version='168a302_v142b13d0'  Unit Name='nbts-00-02-95-11-11-11'  Serial Number='00111111'
95
MAC Address='00:02:95:22:22:22'  IP Address='192.168.100.190'  Unit ID='1800/0/1'  Location 1=''  Location 2='BTS_NBT131G'
96
 Equipment Version='165a029_55'  Software Version='168a302_v142b13d0'  Unit Name='nbts-00-02-95-22-22-22'  Serial Number='00222222'
97
}}}
98
99
The slave TRX will have a green blinking light (indicating OML connection is
100
up), despite your OpenBSC not even running yet.  The reson for this seems to be
101
the fact that the slave TRX connect their OML link to the master TRX and not
102
the BSC!
103
104 2 laforge
== Configuring OpenBSC ==
105 1 laforge
106
On OpenBSC, you simply configure one BTS (with unit ID of the master TRX) and N
107
number of TRX in that BTS.  No special action required.
108
109
An example configuration file is attached to this page.
110 2 laforge
111
== Running OpenBSC ==
112
113
You run OpenBSC as usual. The master BTS will establish the OML link,
114
then the master TRX will establish its RSL link, followed by the slave TRX RSL links.
115
116
{{{
117
./bsc_hack
118
<000d> input/ipaccess.c:632 accept()ed new OML link from 192.168.100.120
119
<000d> input/ipaccess.c:237 Identified BTS 1800/0/0
120
<0005> bsc_init.c:736 bootstrapping OML for BTS 0
121
<000d> input/ipaccess.c:694 accept()ed new RSL link from 192.168.100.120
122
<000d> input/ipaccess.c:237 Identified BTS 1800/0/0
123
<0004> bsc_init.c:897 bootstrapping RSL for BTS/TRX (0/0) on ARFCN 871 using MCC=1 MNC=1 LAC=1 CID=0 BSIC=63 TSC=7
124
<000d> input/ipaccess.c:694 accept()ed new RSL link from 192.168.100.190
125
<000d> input/ipaccess.c:237 Identified BTS 1800/0/1
126
<0004> bsc_init.c:897 bootstrapping RSL for BTS/TRX (0/1) on ARFCN 873 using MCC=1 MNC=1 LAC=1 CID=0 BSIC=63 TSC=7
127
}}}
Add picture from clipboard (Maximum size: 48.8 MB)