Author Topic: Is it possible to add "cell reselection offset (CRO)" to YateBTS?  (Read 21439 times)

rod5413

  • Newbie
  • *
  • Posts: 13
    • View Profile
Hi Guys,

Just wondering if it's possible to set-up a "cell reselection offset (CRO) using YateBTS.
Any help would be greatly appreciated.

david.burgess

  • Newbie
  • *
  • Posts: 22
    • View Profile
Re: Is it possible to add "cell reselection offset (CRO)" to YateBTS?
« Reply #1 on: July 04, 2014, 06:26:27 AM »
If you look in mbts/GSM/GSML3RRElements.cpp, you will see that there is a configuration parameter called "GSM.SI3RO.CRO" that sets the CRO.  That value can be changed from the Yate command line with the "mbts rawconfig" command.

Note that the CRO appears in the Sys Info 13 message, which is sent only when GPRs is enabled.

rod5413

  • Newbie
  • *
  • Posts: 13
    • View Profile
Re: Is it possible to add "cell reselection offset (CRO)" to YateBTS?
« Reply #2 on: July 05, 2014, 02:10:29 AM »
Thanks David,

Very much appreciated.  ;D ;D ;D

rod5413

  • Newbie
  • *
  • Posts: 13
    • View Profile
Re: Is it possible to add "cell reselection offset (CRO)" to YateBTS?
« Reply #3 on: July 14, 2014, 12:26:22 AM »
Hi David,

I've tried adjusting the CRO value using the Yate command line.

"mbts rawconfig GSM.SI3RO.CRO value"       

But it still appears not to be working. I tried multiple things for value e.g. 64, 63, 10, 1, 2, etc.
I've enable the GPRS, (is there anything else in the GPRS settings that needs to be enabled?). Is there anything else I can check?.

If anyone could please tell me how to change the code listed below, (to increase the CRO value), it would be greatly appreciated.

// (pat) 11-26-2011 If you enable this in the OpenBTS sql, the microtech
   // modem stops registering.

   // See GSM 04.08 10.5.2.34 and 05.08 9 Table 1.
   // 12-12: Pat reversed the logic of this so the default is to have the rest octets
   // if any of the other SI3R0 things are defined, unless you specifically
   // define GSM.SI3RO as 0:
   if (gConfig.defines("GSM.SI3RO")) {
      mHaveSI3RestOctets = gConfig.getNum("GSM.SI3RO");
      if (!mHaveSI3RestOctets) return;
   }

   // Optional Cell Selection Parameters.

   // CELL_BAR_QUALIFY. 1 bit. Default value is 0.
   if (gConfig.defines("GSM.SI3RO.CBQ")) {
      mCBQ = gConfig.getNum("GSM.SI3RO.CBQ");
      mHaveSI3RestOctets = true;
      mHaveSelectionParameters = true;
   }
   // CELL_RESELECT_OFFSET. 6 bits. Default value is 0.
   // C2 offset in 2 dB steps
   if (gConfig.defines("GSM.SI3RO.CRO")) {
      mCELL_RESELECT_OFFSET = gConfig.getNum("GSM.SI3RO.CRO");
      mHaveSI3RestOctets = true;
      mHaveSelectionParameters = true;
   }
   // Another offset to C2 in 10 dB steps, applied during penalty time.
   // 3 bits.  // Default is 0 dB but "7" means "infinity".
   if (gConfig.defines("GSM.SI3RO.TEMPORARY_OFFSET")) {
      mTEMPORARY_OFFSET = gConfig.getNum("GSM.SI3RO.TEMPORARY_OFFSET");
      mHaveSI3RestOctets = true;
      mHaveSelectionParameters = true;
   }
   // The time for which the temporary offset is applied, 20*(n+1).
   if (gConfig.defines("GSM.SI3RO.PENALTY_TIME")) {
      mPENALTY_TIME = gConfig.getNum("GSM.SI3RO.PENALTY_TIME");
      mHaveSI3RestOctets = true;
      mHaveSelectionParameters = true;
   }
« Last Edit: July 15, 2014, 10:03:08 PM by rod5413 »

david.burgess

  • Newbie
  • *
  • Posts: 22
    • View Profile
Re: Is it possible to add "cell reselection offset (CRO)" to YateBTS?
« Reply #4 on: July 21, 2014, 08:41:56 AM »
I think we need to look at a GSMTAP trace of the beacon.

YateBTS can generate traces at the L1/L2 interface in the [http://bb.osmocom.org/trac/wiki/GSMTAP GSMTAP] format, which is support in Wireshark.  In this mode, each GSMTAP packet carries a single [http://en.wikipedia.org/wiki/LAPDm LAPDm] frame.

See the “tapping” section in ybts.conf or do "devconfig Control.GSMTAP" from the CLI to see the associated parameters and look at the documentation for each one:

YATE 5.3.0-1 r5826 (http://YATE.null.ro) ready on ybts-UNCONFIG.
mbts config GSMTAP
Control.GSMTAP.GPRS no     [default]
Control.GSMTAP.GSM no     [default]
Control.GSMTAP.TargetIP 127.0.0.1     [default]


You want to turn on GSM tapping (mbts config Control.GSMTAP.GSM yes) and send the packets to the localhost IP (the default).  Then capture the packets on UDP port 4729 into a PCAP file with tcpdump.  You can then look at the GSM activity in Wireshark.

Please collect a PCAP file showing a few seconds of the idle YateBTS and send it to me at david.burgess@legba.ro.  I want to see if the SI3 rest octets are actually there and if SI13 is getting sent.

david.burgess

  • Newbie
  • *
  • Posts: 22
    • View Profile
Re: Is it possible to add "cell reselection offset (CRO)" to YateBTS?
« Reply #5 on: July 22, 2014, 05:50:08 AM »
Rod -

I got a look at your PCAP file and see that both the SI3 and SI13 messages are malformed, which would easily explain the problem.

We will get to work on on fixing these.

I also have a question that would be helpful in debugging: Do GPRS work for you at all, with CRO enabled or disabled?

-- David

david.burgess

  • Newbie
  • *
  • Posts: 22
    • View Profile
Re: Is it possible to add "cell reselection offset (CRO)" to YateBTS?
« Reply #6 on: July 22, 2014, 05:53:50 AM »
Rod -

An update - The SI3 decoding error may just be a limitation of Wireshark.  But the SI13 error is probably real.  Since SI13 is the message that essentially announces the presence of GPRS, and since the CRO is a GPRS feature, it is possible that a bad SI13 would prevent the phone from using CRO, although this behavior would depend on the implementation details of the handset.  Have you tried CRO with other handsets?

Thanks,
David

rod5413

  • Newbie
  • *
  • Posts: 13
    • View Profile
Re: Is it possible to add "cell reselection offset (CRO)" to YateBTS?
« Reply #7 on: July 22, 2014, 04:12:32 PM »
Hi David,

I have tried using other handsets, but had not luck decoding the CRO value.
I've also used a Sagem OT-290 engineering handset, which also couldn't decode the CRO.

Thanks again for all your help and time.

Rod.

rod5413

  • Newbie
  • *
  • Posts: 13
    • View Profile
Re: Is it possible to add "cell reselection offset (CRO)" to YateBTS?
« Reply #8 on: August 06, 2014, 07:17:31 PM »
Hi David,

Just checking to see if there's anything else I can do to help resolve this issue.

Rod.

paulc

  • Newbie
  • *
  • Posts: 21
    • View Profile
Re: Is it possible to add "cell reselection offset (CRO)" to YateBTS?
« Reply #9 on: August 15, 2014, 10:39:05 AM »
Starting with YateBTS Rev. 374 it is possible to work around the genuine SI13 decoding bug in Wireshark by setting in ybts.conf in:

[gprs_advanced]
Release=6

Now tshark decodes:
    Message Type: System Information Type 13
    SI 13 Rest Octets
        H... ....: SI13 contents: Present
        .011 .... = BCCH Change Mark: 3
        .... 0000 = SI Change Field: Update of unspecified SI message or SI messages (0)
        0... ....: SI13 Change Mark: Not Present
        .0.. ....: PBCCH: Not Present In Cell
        ..00 0000  11.. .... = RAC: 3
        ..0. .... = SPGC CCCH Sup: SPLIT_PG_CYCLE is not supported on CCCH in this cell
        ...1 10.. = Priority Access Thr: Packet access is allowed for priority level 1 to 4 (6)
        .... ..10 = Network Control Order: NC2 (2)
        GPRS Cell Options
            01.. .... = NMO: Network Mode of Operation II (1)
            ..10 1... = T3168: 3000 ms (5)
            .... .000 = T3192: 500 ms (0)
            111. .... = DRX Timer Max: 64 s (7)
            ...0 .... = Access Burst Type: 8-bit format shall be used
            .... 1... = Control Ack Type: Default format is RLC/MAC control block
            .... .000  1... .... = BS CV Max: 1
            .0.. ....: PAN bits: Not Present
            ..1. ....: Optional Extensions: Present
            GPRS Cell Options Extension Information
                Extension Length: 10
                ..0. .... = PFC Feature Mode: The network does not support packet flow context procedures
                ...0 .... = DTM Support: The cell does not support DTM procedures
                .... 0... = BSS Paging Coordination: The cell does not support Circuit-Switched paging coordination
                .... .0.. = CCN Active: CCN is disabled in the cell
                .... ..1. = NW Ext UTBF: The extended uplink TBF mode is supported by the network
                .... ...0 = Multiple TBF Capability: The cell does not support multiple TBF procedures
                0... .... = Ext UTBF No Data: The mobile station shall send a PACKET UPLINK DUMMY CONTROL BLOCK message when there is no other RLC/MAC block ready to send in an uplink radio block allocated by the network
                .0.. .... = DTM Enhancements Capability: The cell does not support enhanced DTM CS establishment and enhanced DTM CS release procedures
                ..0. ....: MBMS procedures: Not supported by cell
                ...0 .... = Reduced Latency Access: The cell does not support "One Phase Access Request by Reduced Latency MS"
            .0.. ....: EGPRS: Not supported by cell
        GPRS Power Control Parameters
            .... 0101 = Alpha: 0.5 (5)
            0111 1... = T Avg W: 2^(15/2) / 6 multiframes (15)
            .... .011  11.. .... = T Avg T: 2^(15/2) / 6 multiframes (15)
            ..0. .... = PC Meas Chan: Downlink measurements for power control shall be made on BCCH
            ...1 111. = N Avg I: 2^(15/2) (15)
        .... ...L: Additions in R99: Not present
        Padding Bits: Unknown extension detected or malformed PDU (Not decoded)

rod5413

  • Newbie
  • *
  • Posts: 13
    • View Profile
Re: Is it possible to add "cell reselection offset (CRO)" to YateBTS?
« Reply #10 on: August 17, 2014, 10:31:09 PM »
Hi Paulc,

When you say Release=6, do you mean Counters.TbfRelease=6 (on the GPRS Advanced tab)?
If so, it didn't change the "malformed packet) fault messages for my setup.

With your changes with the GPRS setup (no malformed packets), are you able to receive and decode a CRO value?

rod5413

  • Newbie
  • *
  • Posts: 13
    • View Profile
Re: Is it possible to add "cell reselection offset (CRO)" to YateBTS?
« Reply #11 on: August 19, 2014, 04:56:44 AM »
Hi David / Paulc

After doing more testing on the "system information 3" messages (using a network drive test kit)

It appears that all the "Selection Parameters" (under SI3 Rest Octets) are not being transmitted  in the system information 3 message.
This includes,    Cell Bar Qualify, Cell Reselection Offset, Temporary Offset and Penalty Time.

At this point, I would be grateful if someone else could confirm.

Thanks,  Rod

« Last Edit: August 19, 2014, 05:07:22 AM by rod5413 »

rod5413

  • Newbie
  • *
  • Posts: 13
    • View Profile
Re: Is it possible to add "cell reselection offset (CRO)" to YateBTS?
« Reply #12 on: August 19, 2014, 08:55:15 PM »
Further Update,

After using Rmanager, and using the rawconfig command. It appears that Cell Bar Qualify (GSM.SI3RO.CBQ), Cell Reselection Offset (GSM.SI3RO.CRO), Temporary Offset (GSM.SI3RO.TEMPORARY_OFFSET) and Penalty Time (GSM.SI3RO.PENALTY_TIME).

Have all been disabled.