Hey Osmocom,
I am working to test hrAMR codec with osmo-bts-oc2g but it doesn't seem the correct TCH/F frame type is being activated:
<0000> ../../../osmo-bts/src/common/rsl.c:2805 (bts=0,trx=0,ts=1,pchan=TCH/F_TCH/H_PDCH as PDCH) ss=0 Rx RSL CHAN_ACTIV <0000> ../../../osmo-bts/src/common/amr.c:105 AMR Multirate with 6 modes len=2 not possible <0000> ../../../osmo-bts/src/common/rsl.c:1159 (bts=0,trx=0,ts=1,ss=0): chan_nr=TCH/H(0) on TS1 type=0x01 mode=SPEECH_AMR <0006> ../../../osmo-bts/src/common/l1sap.c:1471 activating channel chan_nr=TCH/H(0) on TS1 trx=0 <0006> ../../../osmo-bts/src/osmo-bts-oc2g/oml.c:937 (bts=0,trx=0,ts=1,ss=0): lchan2lch_par tch_mode=0x41 <0006> ../../../osmo-bts/src/osmo-bts-oc2g/oml.c:1083 (bts=0,trx=0,ts=1,ss=0) MPH-ACTIVATE.req (hL2=0x000100bb, TCH/H TxDL) <0006> ../../../osmo-bts/src/osmo-bts-oc2g/oml.c:822 (bts=0,trx=0,ts=1,ss=0) MPH-ACTIVATE.conf (TCH/H TxDL) <0006> ../../../osmo-bts/src/osmo-bts-oc2g/oml.c:833 Error activating L1 SAPI TCH/H on TS 1: Invalid parameter <0006> ../../../osmo-bts/src/osmo-bts-oc2g/oml.c:1109 (bts=0,trx=0,ts=1,ss=0) act failed mark broken due status: -4 <0006> ../../../osmo-bts/src/common/l1sap.c:623 activate confirm chan_nr=TCH/H(0) on TS1 trx=0 <0000> ../../../osmo-bts/src/common/rsl.c:787 (bts=0,trx=0,ts=1,ss=0): Sending Channel Activated NACK: cause = 0x25
Frame 202: 101 bytes on wire (808 bits), 101 bytes captured (808 bits) on interface 0 Linux cooked capture Internet Protocol Version 4, Src: 10.42.0.1, Dst: 10.42.0.50 Transmission Control Protocol, Src Port: 3003, Dst Port: 51480, Seq: 90, Ack: 206, Len: 33 IPA protocol ip.access, type: RSL Radio Signalling Link (RSL) 0000 100. = Message discriminator: Dedicated Channel Management messages (4) .... ...0 = T bit: Not considered transparent by BTS .010 0001 = Message type: CHANnel ACTIVation (0x21) Channel number IE Activation Type IE Channel Mode IE Channel Identification IE BS Power IE MS Power IE Timing Advance IE MultiRate configuration IE Element identifier: MultiRate Configuration (0x36) Length: 2 001. .... = Multirate speech version: Adaptive Multirate speech version 1 (1) ...0 .... = NSCB: Noise Suppression Control Bit: Noise Suppression can be used (default) (0) .... 1... = ICMI: Initial Codec Mode Indicator: The initial codec mode is defined by the Start Mode field (1) .... ..00 = Start Mode: 0 0... .... = 12,2 kbit/s codec rate: is not part of the subset .0.. .... = 10,2 kbit/s codec rate: is not part of the subset ..1. .... = 7,95 kbit/s codec rate: is part of the subset ...1 .... = 7,40 kbit/s codec rate: is part of the subset .... 1... = 6,70 kbit/s codec rate: is part of the subset .... .1.. = 5,90 kbit/s codec rate: is part of the subset .... ..1. = 5,15 kbit/s codec rate: is part of the subset .... ...1 = 4,75 kbit/s codec rate: is part of the subset
I am trying to understand how codec negotiation is performed, and whether this is a bug or mis-configuration.
I've attached the BTS pcap and configurations that are being used.
Thanks,
Omar
On 03/11/2018 03:59, Omar Ramadan wrote:
Hey Osmocom,
Hi Omar!
I am working to test hrAMR codec with osmo-bts-oc2g but it doesn't seem the correct TCH/F frame type is being activated:
<0000> ../../../osmo-bts/src/common/rsl.c:2805 (bts=0,trx=0,ts=1,pchan=TCH/F_TCH/H_PDCH as PDCH) ss=0 Rx RSL CHAN_ACTIV <0000> ../../../osmo-bts/src/common/amr.c:105 AMR Multirate with 6 modes len=2 not possible
I'm not sure, this is just off the top of my head, but I'd hazard a guess that not having all AMR modes "allowed" in open-bsc.cfg might do the trick for you.
Try
amr-config 12_2k forbidden
amr-config 10_2k forbidden
amr-config 4_75k forbidden
or some such..
Does it work?
Thanks
k/
Hi Keith and Omar,
just some brief response with general context (I'm busy with renovation work these days):
Any given GSM channel cannot have more than four AMR codec modes in the active set. That's a limitation of the way AMR is specified in GSM.
Regards, Harald
Hi Neels, Keith, Harald,
Thanks all for your responses
Just a quick note, I noticed pmaier fixing some AMR related problems quite
recently. Just maybe using most up-to-date nightly / master builds could help?
I've recompiled my MGW, BSC, MSC from master
I'm not sure, this is just off the top of my head, but I'd hazard a guess that not having all AMR modes "allowed" in open-bsc.cfg might do the trick for you.
That seemed to be the issue causing the error. It seems that the call is setup with a length two multirate configuration which means I can only activate only a single AMR codec according to src/common/amr.c:amr_parse_mr_conf
Still couldn't figure out how to configure more than a single AMR codec. Call has proceeded further, but still can't establish a call using freeswitch as PBX. The SIP connector is still being incorrectly assigned the PCMU codec.
Attaching more traces.
Thanks
On 04/11/2018 01:52, Omar Ramadan wrote:
Hi Neels, Keith, Harald,
Hi again Omar :)
Call has proceeded further, but still can't establish a call using freeswitch as PBX. The SIP connector is still being incorrectly assigned the PCMU codec.
Indeed :(
https://osmocom.org/issues/3650
k/
That’s the same issue I’m seeing Keith. Thanks for reporting it.
Get Outlook for iOShttps://aka.ms/o0ukef ________________________________ From: k@rhizomatica.org k@rhizomatica.org Sent: Sunday, November 4, 2018 1:56:11 AM To: Omar Ramadan; Neels Hofmeyr Cc: OpenBSC Mailing List Subject: Re: AMR misconfiguration or bug
On 04/11/2018 01:52, Omar Ramadan wrote:
Hi Neels, Keith, Harald,
Hi again Omar :)
Call has proceeded further, but still can't establish a call using freeswitch as PBX. The SIP connector is still being incorrectly assigned the PCMU codec.
Indeed :(
https://osmocom.org/issues/3650https://urldefense.proofpoint.com/v2/url?u=https-3A__osmocom.org_issues_3650&d=DwMD-g&c=5VD0RTtNlTh3ycd41b3MUw&r=07s_Z0lQVjg7gmpzZt5Yog&m=IDVo223jmV7doxsUhYIIMJc7Je6q0zwyxwM6KFG6xvo&s=egWBsj_FFs2CvwiYpGizTbKW9I04d4L26zOLQOwQfAE&e=
k/
On 04/11/2018 01:52, Omar Ramadan wrote:
The SIP connector is still being incorrectly assigned the PCMU codec.
Omar, a quick and dirty hack for the osmo-sip-connector, to (probably) get your calls running through FreeSwitch:
Hardcode override the pt in sdp_create_file() in sdp.c by adding
other->payload_type = 98; (or for full rate GSM, it would be other->payload_type = 3;)
somewhere in the top of that function,
at line 170 for example, here: http://git.osmocom.org/osmo-sip-connector/tree/src/sdp.c#n170)
k/