Project

General

Profile

NanoBTS Getting Started » History » Version 2

laforge, 02/19/2016 10:48 PM
add more getting started

1 1 laforge
[[PageOutline]]
2
= Getting started with Openbsc and an ip.access nanoBTS =
3
4
This page describes how ot configure + set up an ip.access nanoBTS to use it in conjunction with OpenBSC (i.e. [osmo-nitb] or [osmo-bsc]).
5
6
Please note once again that the Osmocom project has no affiliation and no contact with ip.access.  All information here is presented
7
based on our own experience only.  If you have official documentation by the manufacturer, you should probably consult that instead
8
of using this wiki page.
9
10
== Physical set-up ==
11
12
=== Power supply ===
13
The nanoBTS uses PoE (Power-over-Ethernet).  It does not have any other power connector, so you will have to use a PoE-Injector (aka ''mid-span'')
14
or a PoE capable switch (like the Netgear FS-108P for a small desktop switch).
15
16
Please note the power demand of the nanoBTS is quite high for a PoE powered device.  You may not be able to use all the PoE ports of your switch
17
for nanoBTSs.  Check with your switch vendor and/or ip.access.
18
19
On first sight, there appear to be three RJ-45 jacks on the nanoBTS.  However, two of them are actually RJ-69 (10-pin) and only used in stacking
20
configurations (see [nanoBTS_multiTRX] for details).  This leaves only 1 real RJ-45 marked '''LAN/48VDC''', and that's where you connect your
21
powered Ethernet.
22
23
=== Antennas ===
24
25
There are four SMA connectors, one on each corner.
26
 * RX (receive antenna for uplink)
27
 * TX (transmit antenna for downlink)
28
 * NWL (network listen, a special mode where the BTS behaves like a MS to receive other BTSs)
29
 * AUX (once again only used for stacking, see [nanoBTS_multiTRX])
30
31
RX and TX should each be connected to an antenna, either the small factory-supplied antennas, or some larger antenna or even an RF distribution
32
system or an external LNA + PA + Duplexer kit.
33
34
'''Do not power up the device without a TX antenna'''
35
36 2 laforge
== Software configuration ==
37
38
The nanoBTS has a number of paramters that are stored in NVRAM.  Those essential parameters are required for the nanoBTS to know how to
39
use the netwokr and to which BSC to connect.  All other operational parameters are volatile and configured after booting from the BSC
40
through A-bis/IP by means of the GSM TS 12.21 SET ATTRIBUTE messages.
41
42
=== Network configuration ===
43
44
The nanoBTS can either be configured to use a static IP address (IPv4 address, netmask, default gateway) or to use DHCP.
45
46
ip.access supplies some official tools for this purpose.  OpenBSC contains the [ipaccess-find] and [ipaccess-config] utilities,
47
which implement a sub-set of the features.
48
49
The remainder of this presentation assumes that the nanoBTS is configured for use with DHCP.
50
51
In any case, after the unit has been attached to the Ethernet, other systems attached to the same Ethernet link-layer segment (broadcast domain)
52
can use the [ipaccess-find] tool to identify the BTS attached to the network. This looks like:
53
{{{
54
$ openbsc/src/ipaccess/ipaccess-find
55
ipaccess-find (C) 2009 by Harald Welte
56
This is FREE SOFTWARE with ABSOLUTELY NO WARRANTY
57
58
you might need to specify the outgoing
59
 network interface, e.g. ``./ipaccess/ipaccess-find eth0''
60
Trying to find ip.access BTS by broadcast UDP...
61
MAC_Address='00:11:22:33:44:55'  IP_Address='192.168.100.193'  Unit_ID='102/0/0'  Location_1=''  Location_2='BTS_NBT131G'  Equipment_Version='165g029_79'  Software_Version='168a352_v142b30d0'  Unit_Name='nbts-00-11-22-33-44-55'  Serial_Number='01234567'
62
}}}
63
64
As you can see, it prints the MAC and IP address information, as well as the serial number of the unit.
65
66
Most importantly, it also contains the so-called ''Unit-ID'', which is a unique identifier for this unit inside the BSC area.   A Unit ID is structured into three components, separated by '/'.
67
68
==== Setting the Unit ID ====
69
70
You can use [ipaccess-config] to set the Unit ID of the device like this:
71
{{{
72
openbsc/src/ipaccess/ipaccess-config -u 1234/0/0 -r 192.168.100.193
73
ipaccess-config (C) 2009-2010 by Harald Welte and others
74
This is FREE SOFTWARE with ABSOLUTELY NO WARRANTY
75
76
Trying to connect to ip.access BTS ...
77
<0005> abis_nm.c:398 OC=SITE-MANAGER(00) INST=(ff,ff,ff) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) 
78
<0005> abis_nm.c:398 OC=BTS(01) INST=(00,ff,ff) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
79
<0005> abis_nm.c:398 OC=BASEBAND-TRANSCEIVER(04) INST=(00,00,ff) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
80
OML link established using TRX 0
81
setting Unit ID to '1234/0/0'
82
restarting BTS
83
<0005> abis_nm.c:398 OC=CHANNEL(03) INST=(00,00,00) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
84
<0005> abis_nm.c:398 OC=CHANNEL(03) INST=(00,00,01) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
85
<0005> abis_nm.c:398 OC=CHANNEL(03) INST=(00,00,02) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
86
<0005> abis_nm.c:398 OC=CHANNEL(03) INST=(00,00,03) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
87
<0005> abis_nm.c:398 OC=CHANNEL(03) INST=(00,00,04) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
88
<0005> abis_nm.c:398 OC=CHANNEL(03) INST=(00,00,05) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
89
<0005> abis_nm.c:398 OC=CHANNEL(03) INST=(00,00,06) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
90
<0005> abis_nm.c:398 OC=CHANNEL(03) INST=(00,00,07) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
91
<0005> abis_nm.c:398 OC=RADIO-CARRIER(02) INST=(00,00,ff) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
92
<0005> abis_nm.c:398 OC=GPRS-NSE(f0) INST=(00,ff,ff) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
93
<0005> abis_nm.c:398 OC=GPRS-CELL(f1) INST=(00,00,ff) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
94
<0005> abis_nm.c:398 OC=GPRS-NSVC(f2) INST=(00,00,ff) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
95
<0005> abis_nm.c:398 OC=GPRS-NSVC(f2) INST=(00,01,ff) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
96
<0005> abis_nm.c:398 OC=BASEBAND-TRANSCEIVER(04) INST=(00,00,ff) IPACCESS(0xf0): SET NVATTR ACK
97
Set the NV Attributes.
98
The BTS has acked the restart. Exiting.
99
}}}
100
where 192.168.100.193 is the IP address of the BTS.
101
102
The BTS will re-start in order to use the new unit-id.  You can again use [ipaccess-find] to verify the configuration.
103
Please note that the BTS restart can easily take some minutes.  Wait until the LED is no longer in 'permanent orange on' mode.
104
105
==== Setting the Primary OML address ====
106
107
The BTS needs to know the IP address of the BSC in order to be able to establish an Abis/IP link to it.  This is what's
108
called the primary OML address.  You can set it like this:
109
{{{
110
$ ./ipaccess/ipaccess-config -o 192.168.100.11 192.168.100.193
111
ipaccess-config (C) 2009-2010 by Harald Welte and others
112
This is FREE SOFTWARE with ABSOLUTELY NO WARRANTY
113
114
Trying to connect to ip.access BTS ...
115
<0005> abis_nm.c:398 OC=SITE-MANAGER(00) INST=(ff,ff,ff) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) 
116
<0005> abis_nm.c:398 OC=BTS(01) INST=(00,ff,ff) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
117
<0005> abis_nm.c:398 OC=BASEBAND-TRANSCEIVER(04) INST=(00,00,ff) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
118
OML link established using TRX 0
119
setting primary OML link IP to '192.168.100.11'
120
<0005> abis_nm.c:398 OC=CHANNEL(03) INST=(00,00,00) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
121
<0005> abis_nm.c:398 OC=CHANNEL(03) INST=(00,00,01) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
122
<0005> abis_nm.c:398 OC=CHANNEL(03) INST=(00,00,02) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
123
<0005> abis_nm.c:398 OC=CHANNEL(03) INST=(00,00,03) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
124
<0005> abis_nm.c:398 OC=CHANNEL(03) INST=(00,00,04) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
125
<0005> abis_nm.c:398 OC=CHANNEL(03) INST=(00,00,05) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
126
<0005> abis_nm.c:398 OC=CHANNEL(03) INST=(00,00,06) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
127
<0005> abis_nm.c:398 OC=CHANNEL(03) INST=(00,00,07) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
128
<0005> abis_nm.c:398 OC=RADIO-CARRIER(02) INST=(00,00,ff) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
129
<0005> abis_nm.c:398 OC=GPRS-NSE(f0) INST=(00,ff,ff) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
130
<0005> abis_nm.c:398 OC=GPRS-CELL(f1) INST=(00,00,ff) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
131
<0005> abis_nm.c:398 OC=GPRS-NSVC(f2) INST=(00,00,ff) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
132
<0005> abis_nm.c:398 OC=GPRS-NSVC(f2) INST=(00,01,ff) STATE CHG: OP_STATE=Disabled AVAIL=Not installed(07) ADM=Locked 
133
<0005> abis_nm.c:398 OC=BASEBAND-TRANSCEIVER(04) INST=(00,00,ff) IPACCESS(0xf0): SET NVATTR ACK
134
Set the NV Attributes.
135
}}}
136
where ''192.168.100.11'' is the IP address of your BSC, and ''192.168.100.193'' is once again the IP address of the BTS itself.
137
138
From this point on, the BTS should try to make TCP connections to 192.168.100.11 TCP Port 3002. You can verify this in
139
tcpdump or wireshark.
140
141
Once you start OpenBSC ([osmo-nitb] or [osmo-bsc] on the machine that owns the specified IP address (192.168.100.11 in the example above),
142
the BTS should connect to OpenBSC and you should see something like this in the OpenBSC log file:
143
{{{
144
<000d> input/ipaccess.c:696 accept()ed new OML link from 192.168.100.193
145
}}}
Add picture from clipboard (Maximum size: 48.8 MB)