Hi all,
i just wanted to keep you posted with the 2011 roadmap for 3G integration
into our "Free Software Mobile Network" stack. This message summarizes
the plan of what I expect to be working on. Comments welcome.
3G support directly in OpenBSC is, however, a bit more difficult than we
originally anticipated. The primary problems are:
* 3G and 2G share the same core network (CN = MSC/VLR/HLR/AuC/SGSN/GGSN)
but have different radio access netowrk (RAN = BTS+BSC vs. NodeB+RNC)
* the interface between RAN and CN is different, i.e. 'A' interface
(08.08) in GSM case, RANAP in 3G case.
* The encoding of the two protocols could not be any different. Hand-coded
vs. complex ASN.1 structures
So with OpenBSC, we face the following challenges:
1) We implement the GSM-RAN functionality and the CN in one process,
without any separation or standardized interfaces between them
2) Implementing RANAP in C can be done, but is probably quite cumbersome
given the tons of code asn1c generates and how difficult it seems to
get all the memory allocation/freeing right in all the cases
What we instead decided to do is:
a) Split the BSC part from the CN by implementing the A interface (this
is already finished, we now have osmo-bsc to do exactly that)
b) Implement a new MSC part, using the A interface towards the BSC
This is still possible using our existing code in the original
OpenBSC, though we have not completed/finished it yet.
The real goal is to have a new MSC, written in a higher-order language
that provides proper tools for working with ASN.1 - e.g. Erlang. I have
just started working on this and am more or less finished with the lower
layers like SCCP and am moving into 08.08 and the actual layer3 protocols.
There is already some initial funding secured for the first months of
this work, and funding will likely continue.
c) Once the 2G functionality of the Erlang MSC is working, add the RANAP
interface to it.
At this point we should more or less be able to directly
connect the Alcatel-Lucent femtocells, as they basically consist of
HomeNodeB plus an internal RNC handling the RRC protocol.
d) Adding support for ip.access/Cisco/AT&T will need an implementation of
their URSL protocol, which is proprietary. URSL can either be added
to the new MSC directly, or a URSL<->RANAP translater be developed.
e) Adding support for the Ubiquisys/SFR femtocell would require us to implement
the UMA protocol stack. This can once again be either done as part of
the MSC or using an external translator/gateway program.
Regards,
Harald
--
- Harald Welte <laforge(a)gnumonks.org> http://laforge.gnumonks.org/
============================================================================
"Privacy in residential applications is a desirable marketing option."
(ETSI EN 300 175-7 Ch. A6)
hello all
2day i decided to install openbsc completely neu (had some trouble with
the bs11_config), according to the website. libosmocore went thru
without problems, openbsc came to the ./configure when the problem
occured. the error was:
./configure: line 3673: syntax error near unexpected token
`LIBOSMOSCCP,'
./configure: line 3673: ` PKG_CHECK_MODULES(LIBOSMOSCCP,
libosmo-sccp >= 0.0.2)'
of course i looked at line 3673, but i'm a linux newbie, so i didnt
really understand.
in the /usr/local/lib/pkgconfig are 3 files:
libosmocodec.pc:
prefix=/usr/local
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: Osmocom Codec related utilities Library
Description: C Utility Library
Version: 0.1.27.16-ab12
Libs: -L${libdir} -losmocodec
Cflags: -I${includedir}/
libosmocore.pc:
prefix=/usr/local
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: Osmocom Core Library
Description: C Utility Library
Version: 0.1.27.16-ab12
Libs: -L${libdir} -losmocore
Cflags: -I${includedir}/
and libosmovty.pc:
prefix=/usr/local
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include
Name: Osmocom VTY Interface Library
Description: C Utility Library
Version: 0.1.27.16-ab12
Libs: -L${libdir} -losmovty
Cflags: -I${includedir}/
up to the configure call, everything worked fine, libosmocore was
complete installed. a makefile wasnt created -> bad!
what went wrong?
T.
--
Wer Rechtschreibfehler findet, darf sie behalten!
hi
to enable as many as possible of you to help me, heres what bs11_config
said (the old version):
bs11_config (C) 2009-2010 by Harald Welte and Dieter Spaar
This is FREE SOFTWARE with ABSOLUTELY NO WARRANTY
LMT LOGON: ACK
PHASE: 3 Normal MBCCU0: Load MBCCU1: Load
Abis-link: Restoring
BS11 ATTRIBUTES:
BS-11 ESN PCB Serial Number:
BS-11 ESN Hardware Code Number:
BS-11 ESN Firmware Code Number:
PLL Set Value=1006, Work Value=1038
SITE MANAGER ATTRIBUTES:
E1 Channel: Port=0 Timeslot=1 (Full Slot)
TEI: 25
BS11 Line Interface ATTRIBUTES:
PLL Mode: Standalone
BS11 CCLK ATTRIBUTES:
CCLK Accuracy: Medium (0)
BS11 Power Amplifier 0 ATTRIBUTES:
TRX Power: 30mW
LMT LOGOFF: ACK
thats the working one, the non-working says exactly the same, except
pll(1073) and work(1073)
the abis link on the 2nd is also up, but handys dont find it. the
intension ist a multi drop config, but before that, the 2 bs11 should
work on its own, right?
T.
--
Wer Rechtschreibfehler findet, darf sie behalten!
Hi Holger,
After trying to checkout and build the OpenBSC using command git checkout
-b on-waves/bsc-master origin/bsc-master, we got error as
fatal: git checkout: updating paths is incompatible with switching branches.
Did you intend to checkout 'origin/bsc-master' which can not be resolved as
commit?
So, may be we are not correct on the path or something else. can you please
advice, as we are not able to find bsc_msc_ip binary file.
On Thu, Sep 30, 2010 at 9:50 AM, Holger Hans Peter Freyther <
holger(a)freyther.de> wrote:
> On 09/30/2010 03:04 PM, tejas oza wrote:
> > Hi Guys,
> >
> > We are implementing the separate MSC module and we will be using the
> openBSC,
> > and we are mainly concerned for SMS services. So, I will be highly
> obliged if
> > you can provide us the documentation on openBSC code so that we can
> understand
> > the messages expected on separate MSC side from open BSC and the messages
> to
> > be sent from MSC to openBSC side.
>
> In the on-waves/bsc-master branch you will find a bsc_msc_ip binary that
> will
> be able to connect to a real MSC through somthing that is coined SCCP-Lite
> (SCCP encapsulated inside the ipaccess protocol).
>
> If you look at bsc_hack it has no connection to anything but the BTS, so
> the
> BSC/MSC/VLR/HLR functionality is implemented in one binary.
>
>
--
Thanks & Regards
Tejas Oza
--
Thanks & Regards
Tejas Oza
Hello,
second try to add support to bs11_config for bport0/1 configuration. This
time with enum abis_bs11_line_cfg.
It seems sometimes creating bport1 fails, even LMT shows create obj
greyed out. Don't know why yet.
Regards,
Daniel Willmann
Daniel Willmann (1):
Add {create,delete}-bport1 and bport0-{star,multidrop} to bs11-config
openbsc/include/openbsc/abis_nm.h | 10 +++++++++-
openbsc/src/abis_nm.c | 31 +++++++++++++++++++++++++++++--
openbsc/src/bs11_config.c | 26 ++++++++++++++++++++++++++
3 files changed, 64 insertions(+), 3 deletions(-)
hello
i set one bs11 to ts 1, tei 25 and the other one to ts 6, tei 25(also
tried 26 with the 2nd), according to openbsc.cfg.2-2. the cabling is
also correct, due to a schematic from harald. but the 2nd bs11 not
recognised.
the funny thing ist, when i configure the 2nd bs11 exactly like the 1st
one(the working one, ts 1, tei 25), it don't work. the parameter from
bs11_config query are the same like the 1st, but i don't get the abis
link up
--
Wer Rechtschreibfehler findet, darf sie behalten!
Hello Christian,
Thank you very much for the links.
On Sun, 12 Dec 2010 19:22:41 +0100, "Christian Vogel" <vogelchr(a)vogel.cx> wrote:
>
> There are a few. My Trimble Thunderbolt can give you doppler and
> codephase (gps often calls it "pseudorange").
Thats interesting, the ublox 5 GPS module I was playing with only
provides those data if you have the so called "raw data premium
feature" enabled (whatever this means, I have not yet looked at
the details).
> Sparkfun sells "only the frontend" (mixer, 1-bit ADC, USB)
> with sourcecode available in a book and on DVD (WTF?!)
>
> ---> http://www.sparkfun.com/products/8238
Interesting device, I wasn't aware of it (I know about the book).
Is the Source Code of the book available ? So far I have only
seen some material for download at the following site, not sure
if there is the whole content of the DVD:
http://kom.aau.dk/project/softgps/
Would be interesting to use the code with a USRP.
> There's actually quite a lot of information out there,
> but there also seem to be quite a lot of half-abandoned
> projects (and a few seem to have vanished since the last time I had
> an interest in it around 2005).
I had a short look at some but always had the impression that
it is not exactly what I am looking for. I guess I should try
to get a GPS receiver which provides the required data, thats
probably the easiest approach.
Best regards,
Dieter
--
Dieter Spaar, Germany spaar(a)mirider.augusta.de
Hello Harald,
On Sun, 12 Dec 2010 17:01:22 +0100, "Harald Welte" <laforge(a)gnumonks.org> wrote:
>
> Pretty interesting. If only I had the time to implement it ;)
I don't think that implementing is the hard part, debugging is. You
send data which might be wrong due to some bugs in your code into a
"black-box" which does something with the data. The "black-box" will
not tell you if your data are wrong, if they are, it might just take
longer till any results are returned. So you are not sure if you are
doing the things right.
I conclude the above from my experience so far: Even phones with very
extensive tracing capabilities don't tell you much about what is going
on during their GPS position calculations. And at least I am not aware
of a GPS server I have access to who will provide those data required
for an "MS-assisted" measurement so that one could compare the own
calculation against a reference.
If someone know about a server providing those data (I am not
talking of things like "almanac" or "ephemeris" here) or knows
about existing source code to do the calculation, I would like
to know.
BTW, the book "Server-Side GPS and Assisted-GPS in Java" contains
a few nice chapters, one should not care about "Java" in the title,
only the examples are written in Java.
Best regards,
Dieter
--
Dieter Spaar, Germany spaar(a)mirider.augusta.de
Hi all,
I believe I have finally figured out how this 'MS assisted' RRLP mode works.
Not sure if I am the first or the last one to understand it, just wanted to
share what I know:
Just to recap, RRLP has three modes:
* E-OTD of different BTS signals (AFAIK not used)
* MS-based GPS positioning (optionally with assistance data from the GSM net)
* MS-assisted GPS positioning (what I'm talking about now)
On Wed, Dec 08, 2010 at 08:53:48AM +0000, Dieter Spaar wrote:
> This is from the RRLP specification, those are some of the data for
> assisted measurements (those "low-level" data I refered to):
>
> Data sent to the phone (for every satellite)
>
> Doppler
> Doppler uncertainty
> Code phase
> Int code phase
> GPS bit number
> Code phase search window
> Azimuth
> Elevation
Basically this tells the phone:
* which doppler shift to expect (result from movement speed of satellite),
typically in the range of +/- 5kHz of the GPS L1 frequency
* the 'code phase', i.e. the difference between a certain GSM bit (in a
specified timeslot/frame number/bcch carrier) and a specified GPS bit
(TOW, bit, chip, ...)
* which azimuth/elevation to expect (not sure how the phone should use this,
unless it knows the orientation of the antenna and has a MIMO receiver)
what happens now is that the MS will lock onto one specific satellite. It can
do this quickly, as it altready knows
* a certain doppler frequency shift (range)
in which it should apply a known scrambling code sequence (the satellite
number corresponds to a given pseudo-random sequence), and the
* expected 'code phase', i.e. the difference between the time at which a
certain bit is transmitted on the BCCH carrier of a GSM cell, and which chip
of the given satellite will be expected to be received within the GSM cell.
Once it acquires the signal, it will measure the number of whole (and
fractional) GPS chips that it has observed between
* the start of a given GSM frame number (called 'reference frame') and the
* wrap of the GPS 1023bit pseudo-random sequence
This is then sent back to the network:
> Data sent back from the phone (for every satellite)
>
> Carrier Noise Ratio
> Doppler
this is the actually measured doppler shift for this satellite in the MS receiver
> Whole Chips (0..1022)
> Fractional Chips (0..1023)
and this is the number of GPS chips between the wrap of the GSM reference frame
number and the wrap of the GPS 1023 bit chip sequence. The specification
states "The resolution of the fractional portion is approximately 0.3m"
So all the phone actually ever does is measurement of timing difference. It
will never try to decode the actual GPS signal at all.
The network (SMLC) can then compute the GPS position, as it can get the timing
information for all the satellites the phone has received, and it already knows
all the other data (almanac/ephemeris/...) from a local database and/or its own
reference receiver.
Pretty interesting. If only I had the time to implement it ;)
--
- Harald Welte <laforge(a)gnumonks.org> http://laforge.gnumonks.org/
============================================================================
"Privacy in residential applications is a desirable marketing option."
(ETSI EN 300 175-7 Ch. A6)
hello
i still don't know how 2 bs11 in multi-drop config are connected
correctly. nothing's to find on openbsc.com.
someone may send a schematic to me, please.
T.
--
Wer Rechtschreibfehler findet, darf sie behalten!