Osmocom New Splits stacks for voice is SOLVED and stable with LimeSDR!
Voice is working actually since back then, my fault is using only C117/118
for test call all the time.
Now I just test using newer phone both Caller and Callee and voice is work
perfectly!
I tested both osmo-trx-lms and osmo-trx legacy.
using osmo-trx legacy 0.20 also have better performance using the
firmware/gateware version I mention here : firmware/gateware version:
LimeSDR-USB_HW_1.3_r3.0.img and LimeSDR-USB_HW_1.4_r2.9.rbf from LimeSuite .
There is trace in wireshark when using old phone as C117/118, the BTS
always freeze and send Measurement Indication all the time when calling is
made and answered, but with newer phone, the Indication is normal.
--
Best Regards,
DUO
Sorry forgot to reply-all and didn't send original mail to ML,
re-sending now.
On 9/14/18 3:25 PM, Pau Espin Pedrol wrote:
> Hi Rafael,
>
> You may want to check at PCU_IF_VERSION in both osmo-pcu.git and
> osmo-pcu.git
>
> It seems that you are running a recent osmo-pcu together with a quite
> old osmo-bts (from at least Feb 28 2018, see osmo-bts.git
> 4046e3b3dd0cffd53d8d0d1f3e1bf9d0dec83ede), and they are not protocol
> compatible.
>
> So you need to either use a newer osmo-bts (preferred I guess) or switch
> to an older osmo-pcu which uses PCU_IF_VERSION 7.
>
> If you are using NuRan original firmware, you either ask them to update
> their stuff or your are pretty much on your own to build new images
> (with non-upstream osmocom versions afaik).
>
> At sysmocom we maintain meta-sysmocom-bsp [1] which together with
> system-images [2] and osmocom's meta-telephny [3] allows to build
> firmware for both sysmobts and litecell 1.5 machines, together with SDKs
> to compile software for them.
>
> I think generated images are not available publicly, but I guess you can
> either attempt building them yourself or perhaps ask sysmocom customer
> support to have access to it.
>
> [1] https://git.sysmocom.de/poky/meta-sysmocom-bsp/
> [2] https://git.sysmocom.de/poky/system-images/
> [3] https://git.osmocom.org/meta-telephony/
>
> Regards,
> Pau
>
--
- Pau Espin Pedrol <pespin(a)sysmocom.de> http://www.sysmocom.de/
=======================================================================
* sysmocom - systems for mobile communications GmbH
* Alt-Moabit 93
* 10559 Berlin, Germany
* Sitz / Registered office: Berlin, HRB 134158 B
* Geschaeftsfuehrer / Managing Director: Harald Welte
And again, forgot to include the list, sorry ;)
On 9/14/18 3:59 PM, Pau Espin Pedrol wrote:
> Hi Rafael,
>
> I'm not sure right now about the details of the binary firmware
> installation and the exact rights you have as customer/user regarding
> it, but I guess you can ask NuRan to provide them, or take them from
> your current LC 1.5 image you are using if they are available there. I
> think the headers are at least provided publicly in gitlab:
> https://gitlab.com/nrw_noa
>
> Regards,
> Pau
--
- Pau Espin Pedrol <pespin(a)sysmocom.de> http://www.sysmocom.de/
=======================================================================
* sysmocom - systems for mobile communications GmbH
* Alt-Moabit 93
* 10559 Berlin, Germany
* Sitz / Registered office: Berlin, HRB 134158 B
* Geschaeftsfuehrer / Managing Director: Harald Welte
Hi all,
I'm trying to test trunk osmo-pcu (using armhf osmo repo) in the NuRan
LC 1.5 in the lab, but I get:
20180914124657820 DLGLOBAL <000e> telnet_interface.c:104 telnet at
127.0.0.2 4240
20180914124657821 DL1IF <0001> osmobts_sock.cpp:248 Opening OsmoPCU L1
interface to OsmoBTS
20180914124657821 DL1IF <0001> osmobts_sock.cpp:308 osmo-bts PCU socket
/tmp/pcu_bts has been connected
20180914124657821 DL1IF <0001> osmobts_sock.cpp:312 Sending version
0.5.1.3-3e9c to BTS.
20180914124657821 DL1IF <0001> pcu_l1_if.cpp:113 Sending 0.5.1.3-3e9c
TXT as PCU_VERSION to BTS
PCU interface version number of BTS (7) is different (9).
Please re-compile!
Any way to make it work without changing BTS software?
Thanks,
Rafael Diniz
Hi Mychaela,
> If Motorola phones running their original firmware [...]
> don't work with Osmocom networks [...] it is a very grave
> problem from the perspective of Freedom [...]
Actually, they do. You can even find some videos on YouTube,
where an original Motorola phone runing FreeCalypso firmware
was tested with Osmocom based network (most likely, CalypsoBTS).
The problem is that the author of this topic is using LimeSDR,
that is still not 100% reliable as a PHY for OsmoTRX, and not
reliable itself, because even a regular firmware update can
brick the board... Moreover, AFAIK the author is not using
any stable clock source, such as GPSDO.
> Sysmocom has two of my FreeCalypso development boards [...]
> The board you've got set up there is the one that did get
> properly calibrated before being sold to Sysmocom.
Maybe I am missing something, but how is this related to
the original topic?
> Do you still have that firmware image in the flash, or have
> you erased it? Where is the RF from that board connected to -
> does it go to a sysmoBTS unit? Would it be possible for someone
> from Sysmocom [...] to test and see if the FCDEV3B can successfully
> connect to Osmocom network using the official FreeCalypso
> firmware on the board, driven via AT commands?
I think you could ask this in context of the mentioned issue.
> If Sysmocom folks are philosophically against doing any
> tests with FreeCalypso firmware [...]
Please don't get me wrong, but I am philosophically against
abusing the mailing list in order to PR your production. This
is not the first time I see some thread mixed with your
advertisements.
There are other commercial companies also using this mailing
list, and let's imagine everybody would constantly PR their
production here? It would just result in a mess. Even
Sysmocom is not abusing that much, at least I don't see
any offers to buy e.g. sysmoBTS when a general question
about some BTS is asked...
With best regards,
Vadim Yanitskiy.
Hi OpenBSC,
My company is working on integrating some BTS (Nokia Flexi ESMB) with Nokia
packet Abis with OsmoBSC.
The Nokia packet Abis seems to be Nokia OML/RSL over SCTP/IUA (RFC 3057).
To get started, we have built a little stub that takes the incoming SCTP/IUA
connection and carries out ASP_UP/ASP_ACTIVE handshake. After this handshake
is complete, we see OML coming in from the BTS.
It seems that this OML is in a form that would be understood by
"bts_nokia_site.c". So now we would like to continue the experiment by
feeding the OML/RSL into a BTS configured in OsmoBSC as type "nokia_site".
Now the questions:
1. Is it possible to configure a BTS of type "nokia_site" to run Abis over a
unix domain socket ?
2. Is there a better way to prototype this integration ?
PS: PCAP trace available on request
Best Regards,
Michael Andersen
Hi All.
posting to the list here rather than going down the line of a ticket as
I'm using the nitb to configure my bts and so this may not be a bug, but
rather a missing back port to legacy. (which may not be appreciated
here, I'm aware!)
Anyway, this is the scenario:
I noticed a lack of audio with latest osmo-bts, and this log message:
<0000> rsl.c:1503 invalid mode/codec instructed by BSC, check BSC
configuration.
I added some logging in osmo-bts to check what was being passed into
this line in rsl.c:
if (bts_supports_cm(lchan->ts->trx->bts, lchan->ts->pchan,
lchan->tch_mode) != 1)
and the values are 0 (zero), GSM_PCHAN_TCH_F_TCH_H_PDCH and
GSM48_CMODE_SPEECH_AMR but bts_supports_cm() only checks against
GSM_PCHAN_TCH_F and GSM_PCHAN_TCH_H
Is it that osmo-bsc is sending the actual current channel mode now,
whereas the osmo-nitb is sending the configured mode, i.e.
TCH_F_TCH_H_PDCH ?? in which case, sorry to bother you, but I will ask:
should we try to keep basic functionality between BTS and nitb for a
little while longer :)
Or are we missing checks for all possible modes in rsl.c:bts_supports_cm()
Related commit: http://git.osmocom.org/osmo-bts/commit/src?id=a4bca1155
Thanks!!
k/
Hi all,
I'm diving into 3GPP standards after all the OsMux discussion. For
example, LCLS, 3GPP TS 44.007 standard was mentioned. Trying to figure
out where to download it, I reached:
http://www.3gpp.org/DynaReport/44-series.htm
But it's not there any 44.007. Any hint?
Thanks,
Rafael Diniz
Hi list,
looking at the logging code, I was surprised: turns out the 'logging level all
everything', though quite a misnomer, was an important counterpart to 'logging
level all (debug|...|fatal)'. It worked like this:
Assuming some levels are set...
logging level foo fatal
logging level bar debug
Now 'logging level all' would override all of them forcefully:
logging level all error
# Now all categories including 'foo' and 'bar' log exactly error,fatal
# messages.
logging level all debug
# Now all categories including 'foo' and 'bar' log all messages from debug
# thru fatal.
# manipulating individual categories has no effect at all now!
logging level foo notice
logging level bar error
# no change in logging behavior!
logging level foo fatal
logging level bar debug
# the way to get rid of the forced level was:
logging level all everything
# Now we see above configured behavior of foo == fatal, bar == debug
This is *still the case*, only that we're now ignoring the 'everything'
keyword. The consequence is that we can force all categories and clamp them to
all-the-same level, but we cannot lift that clamp anymore! :/
I think we should never have accepted the removal of 'everything' as such, it
should have been replaced with a more accurate command, like
'no logging level all'. I am considering to bring this back now, ... but
But now that we haven't had 'everything' for a long time and the outrage about
it has been limited, I am also drawn towards completely dropping that feature,
or at least renaming it. Damage is done, no need to go back to mad naming.
From the logging discussion, we concluded that we want a command to set the log
level for all categories at once, one-time; not force-clamping all to one level
until the clamp is removed, but as if we set each individual level manually.
I've cracked my head on what name other than "all" we could want this command
to have, 'logging level (*|each|any|set-all)'? I keep coming back to
'logging level all (debug|...|fatal)' being by far the best name for this.
Backwards compatibility: what do users see when we modify 'logging level all'
to not be a forceful clamp, but instead setting individual levels once-off?
If a user had a config of "all" coming last:
logging level foo debug
logging level bar fatal
logging level all notice
then the experience is that all categories are logging at level 'notice', and
that is what the user most likely also expects to happen. Changing the 'all'
command does not change the logging behavior one bit.
If in turn the config has "all" first:
logging level all notice
logging level foo debug
logging level bar fatal
Then the experience is still that before changing the command, all categories
are logging at level 'notice'. Most likely the user expected though to see
foo='debug' and bar='fatal', because they were set after the 'all' -- what
other reason could a user have to keep these lines in the config file, which
don't have any effect as-is? If we change the 'all' command to not be a
forceful clamp but just a one-time set, then the logging behavior changes to
what the user likely expected when writing this config. However: if these
settings were forgotten in the config file, we would suddenly change the
logging behavior and might surprise users ... but I still kinda think we would
change it to what the user expected, right? And the user would likely go: "ah,
finally it's doing what I wanted all the while!" right?
So, I want to make 'logging level all' manipulate each individual category
once-off, I want to completely deprecate the 'everything' keyword, and drop the
"global clamp" feature entirely.
Maybe I'd re-add the clamp as 'logging level force-all (debug|...|fatal)' and
'no logging level force-all' to switch it off. That would be exactly the old
clamping feature just with less confusing names.
The only thing that makes me write here is that I'm only 90% sure on changing
the meaning of an existing command, of 'logging level all'. If there is no
negative feedback on this here, that would bring me to 100%.
Thanks!
~N
Hi community!
I'd like here to set out a few issues that we have identified for going
forward with the rhizomatica autonomous networks and the osmocom split
stack.
Some of this has been very briefly discussed between myself and Pablo,
and I bring it to the mailing list so hopefully there will be feedback,
ideas and suggestions :)
I am cherry picking from previous emails here, (mostly mine) please
excuse any repetition. I hope others will post their previous comments
on this thread, either verbatim of edited to be relevant to the current
discussion.
1) This is a question that relates to voip traffic in and out of the
autonomous communities over satellite.
Currently this is what we HAVE to have in the local village to support
autonomous operation):
* BSC
* MSC
* HLR
* Freeswitch (freeswitch is our call control, call routing, billing etc)
We can't have any essential backhaul running over the satellite , like A
for example as we would loose all functionality when the sat link is
down, and we'd burn expensive bandwidth!
One option to use osmux from autonomous community (village) is to teach
osmo-mgw to speak osmux, then we have a co-located bsc/msc/mgw in the
village, and the media transport is osmux to another mgw in our
datacentre that is demuxing and converting to RTP suitable to be
forwarded to our upstream VoIP provider.
The question here is what is signalling the MGW in the data centre?
Maybe another freeswitch could signal the osmoMGW via some kind of
SIP<->MGCP
translator. Or we teach the MGW to speak SIP?
Another option that I want to put on the table and see what people say
is to look at implementing osmux as a
codec in freeswitch.
I don't know what that would mean in terms of effort.
I don't know if the osmux code can be abstracted, if that is the right
term, into it's
own external includible library that could then be used to build a
freeswitch codec. I looked some implementations of AMR codec for
freeswitch, and really it looks like a boiler plate codec with
registration, setup and then it calls the encoding and decoding
functions in the opencore amr library.
Maybe, we can do the same with osmux? Then we could have two freeswitchs
signalling and transcoding to/from osmux? - then we are not really
working on osmo solution and others in the
osmo community might prefer to see osmux fully implemented in MGW before
anything else?
Here are a number of related tickets from Harald on osmux integration:
http://osmocom.org/issues/1683 and http://osmocom.org/issues/2832
as well as https://osmocom.org/issues/2909
I think though, that in 1683, we are stalled by
https://osmocom.org/issues/2391 for the split setup.
2) Another question relates to this proposal of a media gateway less mode:
https://osmocom.org/issues/3142
I think this suits us, because really our call signalling is all
happening in freeswitch and we would prefer I think not to have the
media gateway at all most of the time. and in fact for local Mobile to
Mobile calls on the same BTS,
we would in fact prefer the RTP be local on the sysmobts, or indeed
BTS<->BTS!
Freeswitch has a "bypass media" parameter, in fact you can even activate
this at
call processing time before bridging the call, depending on whether it
makes sense in terms of direct connection being possible and the lack of
transcoding.
There's also a "bypass media after bridge" parameter that is
automatically using SIP (re)-INVITES to switch the RTP stream from
passing through freeswitch or going directly from end point to end point.
Using "bypass media" in our profile works nicely; of course, as all it
is doing is using the IP address(es) of the
osmo-bts in the SDP, so the rtp stream loops on lo in the sysmobts. It
would help with something that I mentioned at Osmodevcon, Harald, which
was that in some cases we might like to avoid having our RTP go
over the (sometimes variable quality) Wifi links between the BTS and the
BSC.
A problem is that if you use "bypass media" you have no early media and
no audible ringing signal, you don't get any audio stream until the B
leg picks up. This is what "bypass media after bridge" is for.
Unfortunately, osmo-nitb (at least, and I don't believe anything has
been done in osmo-bsc related) plus LCR or osmo-sip-connector
combinations do not react correctly to the SIP reINVITES, you end up
with multiple calls. So all that needs to be fixed / implemented.
I noticed mention of implementation of MNCC_RTP_MODIFY on fairwaves
branches of OpenBSC and LCR.
I've compiled and tested this, but as far as I can see it is still not
working, as issuing a SIP reINVITE from freeswitch is still setting up
new calls, not just changing the RTP streams. Maybe I also need a
fairwaves osmo-bts.
So this is something I think I would like to see:
* Full support for SIP reinvite in osmo-sip-connector which would then
send a MNCC_RTP_MODIFY which ends up sending (I think it's called a
IPAC_CRCX?) to osmo-bts which will then switch the stream endpoints.
This I believe is also necessary for handover to function with an MNCC
socket setup and we don't currently have it, not even in the osmo-nitb.
* Implement a no media gateway mode in osmo-msc and have the MSC control
the media stream using SIP via MNCC/osmo-sip-connector instead of
controlling
the MGW using MGCP.
K/