Hi all,
Just wanted to share an issue and a quick workaround I found for it in case
anyone else has the same problem. I believe a cmd2 update is causing
pySim-shell to fail. After installing it on a fresh install of Ubuntu
Server 20.04 and getting the following error when I run "python3
pySim-shell -p0":
>Using PC/SC reader interface
>Autodetected card type: sysmoUSIM-SJS1
>AIDs on card:
> USIM: a0000000871002ffffffff8907090000
>Traceback (most recent call last):
> File "pySim-shell.py", line 512, in <module>
> app = PysimApp(card, rs, opts.script)
> File "pySim-shell.py", line 59, in __init__
> super().__init__(persistent_history_file='~/.pysim_shell_history',
allow_cli_args=False, use_ipython=True, auto_load_commands=False,
command_sets=basic_commands, >startup_script=script)
>TypeError: __init__() got an unexpected keyword argument 'use_ipython'
If you run into this you can fix it by uninstalling cmd2 and reinstalling
cmd2 with "pip3 install cmd2==1.5".
Best,
Bryan
Hi,
I had a problem placing MO GSM calls from a Siemens S11E: The calls
were dropped immediately; Osmo-MSC reports "Cannot compose Channel
Type from bearer capabilities"
After investigating the SETUP request from the S11E, the phone does
not use octet 3a (no extension bit set in IE 3). Wireshark decodes the
radio channel requirement as "Full rate support only MS/fullrate
speech version 1 supported", so I added a condition to the gsm48_ie.c
function of libosmocore to include at least GSM FR in the list of
available speech_ver in case octet 3 has no extension.
Attached to this message are the Abis-IP PCAP traces of MO calls, and
the patch for gsm48_ie.c.
Regards,
Lennart
Hi,
My name is Brackley Cassinga Form DRC, we run a community network called
pamoja net where we offer gsm services using osmocom open source software
and OC Base station.
Recently I have tried to install another base station as the same installed
but I could not find any resource guiding through all the steps to take to
run NIB on a base station.
I'm currently running Ubuntu and I will appreciate if you could guide me on
the installation of BSC,hlr,MSC , in order to run a basic gsm network.
Thank you. Regards
--
*Ir Brackley heshima Casinga **Pacifique*
*CEO and Founder of kwanzatechnologie*
KwanzaTechnologies ,GlobalElectronics
+243977265291 | +243977265291 | Pcassinga(a)gmail.com/
brackley(a)ensemblepourladifference.org
www.kwantechnologies.jimdosite.com <http://www.kwantechnologies.com/> |
Skype: Brackley cassinga <https://webapp.wisestamp.com/#>
Av Semliki N 43
Dear Sir/Madam,
I'm a graduate student from a martime college , my major is not computer or communication , I'm trying to do a project about vessel's AIS tx . The equipment which I use is USRP b210 and the software is Gnuradio . After I cloned the code from http://github.com/osmocom/ais-tx/tree/master/gr-aistx and install into gnuradio , it occurs a few mistakes . I tryed to install it in Ubnutu system and dragonOS system ,both failed . Could take a look and help me to solve the problem , there is some pictures attached in this e-mail about the problem . Really thanks a lot , wish you have a nice day .
Yours Sincerelly
Xiangjun Zhang
Hey y'all,
This is somewhat related to another post of mine titled "MSC, SIP connector, and Asterisk". I've been working on a project to simulate cell phone usage through construction of a completely virtual GSM network. To that end, I've been planning to use the mobile application packaged with OsmocomBB to simulate the actual MSs. To make this easier, I've been using a single instance of mobile configured with several MSs in the configuration file (alongside separate instances of virtphy). This had been working for a while, where I was able to place calls between the MSs that were configured. However, I've recently run into an issue where the calls are rejecting each other.
After digging through the source of mobile a little, it's looking increasingly like multiple MSs are not meant to be used in parallel with each other on the same instance of mobile. The main file I've been looking at is mnccms.c (https://osmocom.org/projects/baseband/repository/osmocombb/revisions/master…). It seems that there's no differentiation made between MSs when checking for any calls with/without hold status, which means that only one active call can be used by a mobile instance at any one time. In fact, based on what I've been reading, I can't figure out how I had this working in the first place.
Therefore, I wanted to see if I could get a definitive answer before I invest time into redesigning certain aspects of my framework. Is it possible to use multiple MSs within a single instance of mobile, such that they can all be involved in separate calls simultaneously?
Thanks for any help, it's greatly appreciated!
- James
Hey all,
I've got a bit of an interesting use case. I've been working to setup the OpenBSC components in order to simulate stress testing a GSM network. I've been able to get communications across the GSM working properly, with MSs able to place calls. However, part of what I'm trying to do involves routing to a simulated PSTN. I turned to sip-connector and asterisk, but my network immediately stopped working once I told the MSC to use an external MNCC.
The setup involves two separate computers. The first is the BSS, which has a BSC, MGW, virtual BTS, and two MSs running on mobile and virtphy. The second is the NSS, with the MSC/VLR, HLR, MGW, and STP. The GSM is split between the two devices because of the eventual goal to increase the number of BSSs to better simulate a real-world GSM.
This was all working fine, until I modified osmo-msc.cfg to include "mncc external /tmp/msc_mncc". In parallel, I setup osmo-sip-connector and ran it on the NSS through the same "/tmp/msc_mncc" socket, pointing it at Asterisk (also on the NSS). This was all done according to the instructions listed here: https://osmocom.org/projects/osmo-sip-conector/wiki/Howto.
Now whenever I place my calls (which I do through mobile's "call" VTY command on the BSS), the call doesn't connect and simply gets released after 30 seconds. After doing some debugging, I've determined that Asterisk is not receiving anything from the sip-connector. Meanwhile, the sip-connector is being told to delete any connection basically as soon as it's created:
<0001> mncc.c:1005 MNCC rcvd message type: MNCC_SETUP_IND
<0001> mncc.c:566 Created call(5004) with MNCC leg(2147483652) IMSI(001010000000001)
<0001> mncc.c:68 Starting Timer for MNCC_RTP_CREATE
<0001> mncc.c:164 MNCC sent message type: MNCC_RTP_CREATE
<0001> mncc.c:1005 MNCC rcvd message type: MNCC_REL_IND
<0001> mncc.c:636 Rcvd MNCC_REL_IND, Cause: RESOURCE_UNAVAIL
<0001> mncc.c:648 leg(2147483652) was released.
<0002> call.c:90 call(5004) released.
The MSC has the following as part of its output when a call is placed:
...
<0020> osmo_ss7.c:1933 0: asp-OsmoMSC-asp: xua_cli_read_cb(): sctp_recvmsg() returned 48 (flags=0x80)
<0023> m3ua.c:714 0: asp-OsmoMSC-asp: Received M3UA Message (XFER:DATA)
<0023> m3ua.c:543 0: asp-OsmoMSC-asp: m3ua_rx_xfer
<0023> m3ua.c:566 0: asp-OsmoMSC-asp: m3ua_rx_xfer(): M3UA data header: opc=2233=1.23.1 dpc=185=0.23.1
<0020> osmo_ss7_hmrt.c:276 m3ua_hmdc_rx_from_l2(): found dpc=185=0.23.1 as local
<0020> sccp_scrc.c:472 scrc_rx_mtp_xfer_ind_xua: HDR=(CO:CODT,V=0,LEN=0), PART(T=Destination Reference,L=4,D=00000007), PART(T=Segmentation,L=4,D=00000000), PART(T=Data,L=6,D=000422040120)
<0021> sccp_scoc.c:1664 Received CO:CODT for local reference 7
<0021> sccp_scoc.c:1698 SCCP-SCOC(7)[0x555adb5ddf40]{ACTIVE}: Received Event RCOC-DT1.ind
<0021> sccp_user.c:175 Delivering N-DATA.indication to SCCP User 'OsmoMSC-A'
<0011> sccp_ran.c:108 (GERAN-A-7) sccp_ran_sap_up(N-DATA.indication)
<0003> ran_peer.c:591 ran_peer(GERAN-A:RI-SSN_PC:PC-1-23-1:SSN-BSSAP)[0x555adb5b1010]{READY}: Received Event RAN_PEER_EV_MSG_UP_CO
<0007> ran_peer.c:407 msc_i(IMSI-001010000000001:MSISDN-1234567891:TMSI-0x9B96EF97:GERAN-A-7:CM_SERVICE_REQ)[0x555adb5d97e0]{READY}: Received Event MSC_EV_FROM_RAN_UP_L2
<0011> ran_msg_a.c:790 msc_i(IMSI-001010000000001:MSISDN-1234567891:TMSI-0x9B96EF97:GERAN-A-7:CM_SERVICE_REQ)[0x555adb5d97e0]{READY}: RAN decode: BSSMAP: CLEAR REQUEST
<0007> msc_i.c:85 msc_a(IMSI-001010000000001:MSISDN-1234567891:TMSI-0x9B96EF97:GERAN-A-7:CM_SERVICE_REQ)[0x555adb5daa50]{MSC_A_ST_COMMUNICATING}: Received Event MSC_A_EV_FROM_I_PROCESS_ACCESS_SIGNALLING_REQUEST
<000b> msc_a.c:196 msc_a(IMSI-001010000000001:MSISDN-1234567891:TMSI-0x9B96EF97:GERAN-A-7:CM_SERVICE_REQ)[0x555adb5daa50]{MSC_A_ST_COMMUNICATING}: + msc_a_ran_dec: now used by 2 (cc,msc_a_ran_dec)
<0011> ran_msg_a.c:790 msc_a(IMSI-001010000000001:MSISDN-1234567891:TMSI-0x9B96EF97:GERAN-A-7:CM_SERVICE_REQ)[0x555adb5daa50]{MSC_A_ST_COMMUNICATING}: RAN decode: BSSMAP: CLEAR REQUEST
<0011> msc_a.c:1612 msc_a(IMSI-001010000000001:MSISDN-1234567891:TMSI-0x9B96EF97:GERAN-A-7:CM_SERVICE_REQ)[0x555adb5daa50]{MSC_A_ST_COMMUNICATING}: RAN decode: BSSMAP Clear Request
<0007> msc_a.c:1433 msc_a(IMSI-001010000000001:MSISDN-1234567891:TMSI-0x9B96EF97:GERAN-A-7:CM_SERVICE_REQ)[0x555adb5daa50]{MSC_A_ST_COMMUNICATING}: Received Event MSC_A_EV_MO_CLOSE
<0007> msc_a.c:733 msc_a(IMSI-001010000000001:MSISDN-1234567891:TMSI-0x9B96EF97:GERAN-A-7:CM_SERVICE_REQ)[0x555adb5daa50]{MSC_A_ST_COMMUNICATING}: State change to MSC_A_ST_RELEASING (X2, 30s)
<0011> msc_a.c:769 msc_a(IMSI-001010000000001:MSISDN-1234567891:TMSI-0x9B96EF97:GERAN-A-7:CM_SERVICE_REQ)[0x555adb5daa50]{MSC_A_ST_RELEASING}: Releasing: msc_a use is 2 (cc,msc_a_ran_dec)
<000b> msc_a.c:773 VLR subscr IMSI-001010000000001:MSISDN-1234567891:TMSI-0x9B96EF97 + msc_a_fsm_releasing_onenter: now used by 4 (attached,active-conn,CC,msc_a_fsm_releasing_onenter)
<000b> vlr.c:309 VLR subscr IMSI-001010000000001:MSISDN-1234567891:TMSI-0x9B96EF97 + vlr_subscr_cancel_attach_fsm: now used by 5 (attached,active-conn,CC,msc_a_fsm_releasing_onenter,vlr_subscr_cancel_attach_fsm)
<000b> vlr.c:314 VLR subscr IMSI-001010000000001:MSISDN-1234567891:TMSI-0x9B96EF97 - vlr_subscr_cancel_attach_fsm: now used by 4 (attached,active-conn,CC,msc_a_fsm_releasing_onenter)
<0001> transaction.c:230 trans(CC:INITIATED IMSI-001010000000001:MSISDN-1234567891:TMSI-0x9B96EF97:GERAN-A-7:CM_SERVICE_REQ callref-0x80000003 tid-8) Freeing transaction
<0005> gsm_04_08_cc.c:237 trans(CC:INITIATED IMSI-001010000000001:MSISDN-1234567891:TMSI-0x9B96EF97:GERAN-A-7:CM_SERVICE_REQ callref-0x80000003 tid-8) tx MNCC_REL_IND
...
Any thoughts as to why this one change to my GSM is suddenly stopping it from functioning properly? Thanks, any help is greatly appreciated!
- James
P.S. I didn't want to include my config files for fear of making this message absurdly long, but let me know if you want to see any and I'll gladly post them.
Hello Osmocom community,
I have previously alluded in other threads here that I am seeking to
interface my Osmocom-based GSM network to USA PSTN. In this post I
shall provide details as to exactly what I am doing and how I go about
it.
I am currently experimenting with using bulkvs.com as my USA PSTN
connectivity provider, chosen on the basis of cost economy: it is
incredibly, mind-boggling cheap - the monthly "keepalive" cost is only
6 cents (yes, *cents*) per rented phone number! With phone numbers
this cheap, I don't have to do any kind of "number economy" options:
no need for "phone number NAT" (a single external phone number where a
PBX answers, requiring callers to then dial an internal extension
number), and no need for a mixed scheme where only one or two test
SIMs get real outside numbers while all others get only fake internal
numbers - instead I can give a real valid NANP phone number to every
test SIM on my test/R&D GSM network. For context, my test GSM network
is envisioned as serving two purposes: one is for development and
testing of GSM handsets - real phone numbers are less important here -
and the other purpose is demonstration to gathered audiences (American
patriots and in-person freedom lovers who aren't afraid of some silly
virus) for "oooh and ahhh" - and for this second purpose, having real
phone numbers for every test phone will be a big boost.
The interface to USA PSTN provided by bulkvs.com and other similar
low-cost services is a SIP trunk, hence what I need to implement is a
form of GSM to SIP gateway. But here is the part where I deviate from
what appears to be the established canon in Osmocom-based community
cellular networks: I don't want to run a heavyweight PBX like Asterisk
or FreeSwitch, instead I want to run only a fairly thin, lightweight
layer of extra sw between my OsmoMSC instance (MNCC interface) and the
public-Internet SIP interface provided by bulkvs, with the needed thin
sw layer put together by me, combining newly written code specific to
my use case with bits of code borrowed from elsewhere.
Here is the code I have written / put together so far:
https://www.freecalypso.org/hg/themwi-system-sw/
The README file at the top level of the code repository explains what
is there and how it works, in basic terms.
One of the major pieces I will need to implement is an RTP bridge MGW
that will transcode between GSM codecs (FR1, EFR, AMR) on the GSM side
and G.711 (PCMU or PCMA) on the PSTN-via-SIP side. PSTN-via-SIP
connectivity providers such as bulkvs don't support any GSM codecs
(not one of them), instead they only support G.711 and G.729. I won't
be doing G.729 in ThemWi (transcoding from one lossy vocoder to another
seems like a terrible idea), hence I will run with G.711 on my
PSTN-over-Internet interface and I will need to implement a transcoder
between GSM codec family and G.711. I reason that what I need to
implement is probably quite similar to the transcoding function in
classic GSM E1 TRAUs, except that in the RTP bridge environment I also
have to deal with the added complexities of packet loss, reordering
and silence suppression, unpleasantries of the packet world that
didn't exist in the olden days of TDM luxury.
I don't know whether or not a transcoding RTP bridge MGW is already
implemented somewhere in the bowels of either Asterisk or FreeSwitch -
the size and complexity of both "major sw" choices is quite intimidating
and off-putting. If someone who happens to know the answer gives me a
pointer, it will certainly be very appreciated, but if not, then some
time later I will undertake the big effort to dig in both projects and
look for this transcoder. If the needed transcoder implementation
already exists somewhere, then I will need to lift it out of whichever
project and integrate it into themwi-system-sw - and if there is no
existing published-source implementation, then I will be the first to
produce one.
M~