OsmoBSC is currently supporting the Site family of Nokia BTSes.
Things that work:
- Nokia InSite ,MetroSite and UltraSite units are proven to be working, please see the detailed infos below
- Full Rate and Enhanced Full Rate voice calls (MO & MT)
- SMS (MO & MT)
- Cell reselection
- Handover (please see this patch: ")
- Multiple BTS: two InSite and one MetroSite units are connected to OsmoBSC on the same E1 line is tested
- Multi TRX: two or more TRX can be configured to add extra SDCCH or TCH capacity. Note that only one sector can be created at the moment.
- Hopping: baseband and RF hopping works on MetroSite, RF hopping works on UltraSite. Tested with two TRXes, probably more TRX can be configured, but not tested.
Things that do not work:
- HR calls (the TRAU framer for E1 is only implementing 16kbit channels, HR needs 8kbit)
- GPRS, EDGE (no E1 based PCU implementation, probably never will)
The OsmoBSC side of the handover logic works quiet well. But at the moment, there is a slight problem with the Nokia units. The handover decision is made correctly, the GSM phone is commanded to switch to the new channel on the new BTS, which the phone does. But despite the channel release is sent, the old channel never get released, and this leads to a Radio Link Failure.
Update: it seems that the root cause of the previous handover failure is that the InSite BTSes (probably others too) are not sending the channel release ACK to the BSC after the old channel release is requested by the BSC. Andreas Eversberg added a patch which overcomes this problem by implicating the missing ACK, so the BSC can continue and finish the handover process. This can be enbaled by adding the next line to the BTS part of the config file:
nokia_site no-local-rel-conf 1
For more info, please see this patch: [http://cgit.osmocom.org/openbsc/commit/?id=7d8fa3418ff6c589eba10e562da8b96995e19f7a":http://cgit.osmocom.org/openbsc/commit/?id=7d8fa3418ff6c589eba10e562da8b96995e19f7a]
The original Nokia support was written for HFC-E1 and mISDN. The Site can only be interfaced via traditional E1 lines (no IP ABIS support for these old units). It is also possible to use a DAHDI card to interface with the BTS. For this you have to use the following configuration in /etc/dahdi/system.conf:
Unlike in traditional E1 communication, we are using CCS signalling. For every signalling and traffic channel between the BTS and the BSC, we are using dedicated timeslots. Because of that, we are no longer need any shared signalling channel on the E1 line (e.g. D channel on timeslot 16.
Example config file for an 1800MHz Nokia InSite unit:
! ! OpenBSC configuration saved from vty ! ! password foo ! line vty no login ! e1_input e1_line 0 driver dahdi # e1_line 0 port 0 log file /root/900_nokia.log logging filter all 1 logging color 1 logging timestamp 1 network network country code 1 mobile network code 1 short name [[OpenBSC]] long name [[OpenBSC]] neci 0 rrlp mode none mm info 1 handover 0 handover window rxlev averaging 5 handover window rxqual averaging 1 handover window rxlev neighbor averaging 5 handover power budget interval 6 handover power budget hysteresis 3 handover maximum distance 9999 timer t3101 3 timer t3103 5 timer t3105 20 timer t3107 10 timer t3109 15 timer t3111 2 timer t3113 10 timer t3115 0 timer t3117 0 timer t3119 0 timer t3141 0 timer t3122 10 bts 0 type nokia_site band GSM1800 cell_identity 1 location_area_code 1 base_station_id_code 63 training_sequence_code 7 ms max power 12 cell reselection hysteresis 4 periodic location update 10 nokia_site skip-reset 0 nokia_site no-local-rel-conf 1 oml e1 line 0 timeslot 8 sub-slot full oml e1 tei 1 trx 0 arfcn 885 nominal power 18 max_power_red 10 rsl e1 line 0 timeslot 7 sub-slot full rsl e1 tei 1 timeslot 0 phys_chan_config CCCH+SDCCH4 e1 line 0 timeslot 5 sub-slot 0 timeslot 1 phys_chan_config SDCCH8 e1 line 0 timeslot 5 sub-slot 1 timeslot 2 phys_chan_config TCH/F e1 line 0 timeslot 5 sub-slot 2 timeslot 3 phys_chan_config TCH/F e1 line 0 timeslot 5 sub-slot 3 timeslot 4 phys_chan_config TCH/F e1 line 0 timeslot 6 sub-slot 0 timeslot 5 phys_chan_config TCH/F e1 line 0 timeslot 6 sub-slot 1 timeslot 6 phys_chan_config TCH/F e1 line 0 timeslot 6 sub-slot 2 timeslot 7 phys_chan_config TCH/F e1 line 0 timeslot 6 sub-slot 3
LMP cable pinout for InSite units:
___ _____| |_____ | | | | | | |_______________| 8 7 6 5 4 3 2 1 LMP: ---- 1: Vcc (connect with 3) 2: Rx - Dbg 3: Enable driver (connect with 1) 4: Gnd 5: Tx - LMP 6: Rx - LMP 7: Tx - Dbg 9:
LMP cable pinout for MetroSite units:
Tips and tricks for Site family and OsmoBSC:
Every time you start a BTS, OsmoBSC first resets (actually restarts) the unit, and only configures and starts the BTS after that. The reason behind this, is if you change the radio parameters of the BTS (ARFCN, CID, BSIC, TSC, TX power etc.), these parameters are not going to change on the BTS if this resets is skipped.
The default 15 seconds is working well in general, but in some cases you need to raise this parameter (eg. to force OsmoBSC to wait more for the BTS to restart). For example: if you use more than one unit on the same E1 (InSite units daisy chained via the internal HDSL interface), or MetroSite units daisy chained via the E1 cross connector TRE unit.
This parameter can be modified by adding the following to your OsmoBSC config file:
nokia_site bts-reset-timer 15
Try 20 or 23 instead of 15. Example: for a HDSL cascaded two BTS InSite setup, I needed to raise this parameter to 20 seconds. For 2 TRX MetroSite it needs at least 25 seconds. For UltraSIte setups it needs 60 seconds.
nokia_site skip-reset 1
This is needed, as the UltraSite boots rather slowly, so we need to wait long enough after the BTS is restarted by Osmo-BSC, before we start the OML bootstrap. Furthermore, unlike InSite and MetroSite, the UltraSite does not starts to load the SW for the TRX units right after boot, that only happens after Osmo-BSC starts bootstrapping the unit. As the TRX SW load also takes time (depending on the amount of TRXes in the cabinet), Osmo-BSC (see: upcoming patch) waits for the
"CONF_COMPLETE" message from the unit, which indicates that the TRXes are also ready for LAPD/RSL bootstrap.
Segfault crash during BTS init:
Since the following patch, this segfault crash is fixed:
nokia_site bts-reset-timerto 60 seconds in the BTS part of the OsmoBSC config file:
nokia_site bts-reset-timer 60