Commit Graph

486 Commits

Author SHA1 Message Date
Martin Hauke 9516a0e55f build: Fix typo in the CFLAGS-variable for libosmodsp
Change-Id: Ida258588538a8a76d97a8c1e8855b2fd28c63be7
2018-02-19 09:07:07 +00:00
Pau Espin 9a2d11c38c transceiver: Fix RSP SETSLOT format
According to osmo-trx README:
SETSLOT sets the format of the uplink timeslots in the ARFCN.
The <timeslot> indicates the timeslot of interest.
The <chantype> indicates the type of channel that occupies the timeslot.
A chantype of zero indicates the timeslot is off.
CMD SETSLOT <timeslot> <chantype>
RSP SETSLOT <status> <timeslot> <chantype>

Change-Id: I63c81155c84fc35cff1704734fd8d2732235c5a4
Related: OS#2944
2018-02-14 13:21:53 +01:00
Andreas Eversberg 39304b742a mobile/SS: Fixed bug in parsing of known supplemenary service codes
Use correct variable to check if supplementary service code is known
or not.
2014-12-29 16:26:20 +01:00
Andreas Eversberg 95abd4e12c host/transceiver: Fix leak in AB processing codepath
Thanks to Andreas for pointing this out

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-06-20 10:42:57 +02:00
Andreas Eversberg ae876d0edc transceiver: Add option to set SCHED_RR and prority 2013-06-16 15:49:27 +02:00
Andreas Eversberg 5fc544f901 Add handover support to calypso BTS 2013-06-12 16:57:20 +02:00
Andreas Eversberg c736754345 fixup 687bc2318d 2013-04-07 10:34:31 +02:00
Andreas Eversberg fe4990d74f Fix: Allow TRX command with trailing '\0' and without 2013-04-07 10:33:47 +02:00
Andreas Eversberg 3cb021ca53 Transceiver application will resync and configure TRX after restart of phone
This way it is possible to restart a phone without restarting transceiver
application. The operation of TRX is continued.
2013-03-01 19:24:30 +01:00
Andreas Eversberg a4a41d27a6 Transceiver application rejects RXTUNE/TXTUNE, if given ARFCN is invalid 2013-02-27 17:14:47 +01:00
Andreas Eversberg 89b3399e62 Set BTS mode at transceiver application only after successful sync to cell 2013-02-27 16:40:37 +01:00
Andreas Eversberg 50dd2b33d8 Add option to transceiver application, to use second phone for TS 1 2013-02-27 16:40:37 +01:00
Andreas Eversberg 687bc2318d Allow transceiver application to handle multiple TRX and multiple phones
There is no more one-to-one relation between application state, trx
instance and l1ctl link to the phone. An application can have many trx
instances and many l1ctl links to phones. Additionally each trx can have
up to 8 relations to one or different l1ctl links, one for each time slot.

This allows to split one TRX into several phones. (use only one ARFCN)
Also it allows to use multiple phones for multiple TRX. (use multiple
ARFCN)
2013-02-27 16:40:37 +01:00
Andreas Eversberg cb68e647ab Tansceiver checks quality of RACH, before forwarding it to TRX interface
By checking peak level of RACH's training sequence, only peaks that are
good enough are forwarded to the TRX interface. If any received noise
would be forwarded, there would be too many false detection, due to weak
CRC protection of RACH.
2013-02-27 12:04:27 +01:00
Andreas Eversberg 3351079fbb Tranceiver application forwards TOA from layer 1 to TRX interface
The TOA of the received access burst is added to the TOA of the
demodulator. This sum is the actual access delay.
2013-02-27 11:05:00 +01:00
Andreas Eversberg 78408ed5a4 Tranceiver application forwards RSSI from layer 1 to TRX interface 2013-02-27 10:39:53 +01:00
Andreas Eversberg 15f2dfa3b3 Get stealing flags from received burst indications of BTS task 2013-02-27 09:59:58 +01:00
Andreas Eversberg 81dd60564f Transceiver application uses SETSLOT command to configure slot type 2013-02-27 09:51:09 +01:00
Andreas Eversberg 2295607650 Add gain support to transceiver application
To alter default gain of 0, the gain can be altered by using SETRXGAIN
control command.

Please use a gain of 0, for normal use.
2013-02-26 18:56:18 +01:00
Andreas Eversberg fdf73eb40f Add loglevel command to transceiver application 2013-02-26 17:53:53 +01:00
Andreas Eversberg 2cfeba7ddb Add command line options parsing to transceiver application 2013-02-24 17:29:34 +01:00
Sylvain Munaut eeafd9fa5b host/layer23: Initial import of the transceiver application
Build is optional because it depends on some extra libraries

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-01-16 23:12:00 +01:00
Alex Badea df1c62c31a fw/l1: add CBCH flag to dedicated mode
Add a .dm_flags member to struct l1ctl_dm_est_req.  Define a flag bit
to indicate CBCH mode.  If set, this instructs L1 to use the CBCH
variant of SDCCH for dedicated mode (no uplink, no SACCH).

Add the new dm_flags field to l1ctl_tx_dm_est_req* API calls.  Clear it
everywhere, except for app_cbch_sniff which requests CBCH.

Signed-off-by: Alex Badea <vamposdecampos@gmail.com>
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-01-16 21:24:42 +01:00
Andreas Eversberg 6fead1c78c layer23: Be sure to close mncc socket on exit of mobile instance 2013-01-13 22:35:01 +01:00
Andreas Eversberg fdf7d2f8a5 layer23: Send SIM APDUs via GSMTAP, if enabled 2013-01-12 08:59:05 +01:00
Andreas Eversberg fed1774b65 mobile: Fixed CLIR invokation / suppression
If "clip" is given at vty, CLIR must be suppressed, which results in
presentation of caller ID digits, even if suppressed by network.

If "clir" is given at vty, CLIR must be invoked, which results in
restriction of caller ID digits, even if not suppressed by network.

Note: This only work for outgoing caller ID. Incomming caller ID
restriction cannot be suppressed.
2013-01-10 19:31:12 +01:00
Dario Lombardo dadafc49fb misc: Fix typos 2013-01-08 22:12:25 +01:00
Andreas Eversberg bff6bb7b54 mobile: Fixed ignoring of MDL-ERROR-IND
Some MDL-ERROR causes must not lead to link failure. The missing
"return 0" causes all errors to be ignored which are not listed inside
switch/case statement.
2013-01-08 13:30:35 +01:00
Andreas Eversberg 43b368b66d fix: Use only single CCCH block to determine path loss
The downlink singalling failure counter DSC is decremented by 4
in case of unsuccessfull decoding of CCCH block and incremented
by 1 in case of successfull decoding of CCCH block. The initial
and maximum value of 90 requires to check the signal only once
per 51 multiframe.

If DRX would be supported, only a subset of 51 multiframes are
received, so the initial / maximum value of 90 must be reduced
accordingly.
2013-01-08 09:12:15 +01:00
Andreas Eversberg f6b52d74dd mobile: Allow test card to be maked as already attached
This way it is possible to use test card without making attachment
to the network, if the LAI matches. It can be used to do faster
testing.
2013-01-07 11:22:08 +01:00
Andreas Eversberg 25c5e8221d mobile: Improved exit of mobile process, reset phone
If mobile phone has started, it is reset after shutdown. This
ensures that the phone is not transmitting anymore, especially
while shutting down in dedicated mode.

Using CTRL+c:
The first signal causes initiating of shutdown with detach
procedure. The second signal causes initiating of shutdown
without detach procedure. The third signal will exit process
immidiately. (in case it hangs)

Using CTRL+z:
The first signal causes initiating of shutdown without detach
procedure. A subsequent CTRL+c would exit process immidiately.
2013-01-07 10:39:59 +01:00
Sylvain Munaut 4df6653d8d mobile/gsm411: Fix printf format warning
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-01-02 20:44:10 +01:00
Sylvain Munaut 9c1d7b10b8 mobile/gsm411: Adapt to new libosmocore API for SMC/SMR by adding id
Here we just use the transaction ID

Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-01-02 20:44:10 +01:00
Sylvain Munaut 1e2117e70c host/cell_log: Prevent buffer overflow when displaying arfcn range
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-01-02 20:43:49 +01:00
Dario Lombardo 1776eaabe9 host/l23: Added custom frequecy range to cell_log.
Written-by: Dario Lombardo <lomato@libero.it>
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2013-01-02 20:27:47 +01:00
Alex Badea dccf41703a l23 sysinfo: defer SI4 CBCH mobile allocation until SI1 is received
When parsing SI4, there's a check and a log message saying that CBCH
MA is ignored until SI1 is received.  Then the MA is decoded anyway --
incorrectly -- such that it remains incorrect even after receiving
the next SI1.

Fix that with an "else".

Signed-off-by: Alex Badea <vamposdecampos@gmail.com>
Signed-off-by: Andreas Eversberg <jolly@eversberg.eu>
2013-01-02 18:31:30 +01:00
Andreas Eversberg 97eb0c701d Fix: Check if cell is barred, before performing location updating
If not checked, the MM process will crash, due to an endless loop
of trying to do location updating to barred cell.
2012-12-29 15:37:31 +01:00
Andreas Eversberg d72cb4401e Rename various "rxlev" variable to "rxlev_dbm" and correct their signess
All levels in range of 0..63 are now uint8_t and use "rxlev" as
variable name. All levels in range of -110..-47 are now int8_t and use
"rxlev_dbm" as variable name.
2012-11-22 16:00:33 +01:00
Harald Welte 85f4e1b3b8 fix previous commit: use dbm2rxlev()
As andreas points out, there are structure members that are called
'rxlev' but which don't use the scaling (0..63) of the GSM specs, but
which are already a signed type and in dBm.  So they need to be
converted.

TODO: Rename those structure members to rxlev_dbm or something that
explicitly states it is _not_ an 'RXLEV' value in terms of GSM.
2012-11-22 10:15:10 +01:00
Harald Welte 73a809e57b Tell L1CTL_FBSB_REQ the expected received signal level
As Dieter points out, this drastically improves the resiliance to high
receive levels on the C155.  We cannot blindly assume a received signal
level of -85 dBm if the BTS is 2m away and we actually receive -40 dBm.

This patch extends the L1CTL_FBSB_REQ data structure in layer 1 with the
respective field, as well as the l1ctl_tx_fbsb_req() API function called
from the various layer23 apps.

"mobile" and "bcch_scan" already did a PM request and thus know the
expected signal power.  "ccch_scan" and "cbch_sniff" apparently don't
do, so the -85 dBm constant is now hardcoded into the host-side source
code there, and should probably be fixed in a follow-up patch.
2012-11-20 10:13:44 +01:00
Pavel Baturko 2879e77bd3 Fix wrong print of scan freq when using gsm_print_arfcn twice for the same log message 2012-11-16 14:47:54 +01:00
Joshua Lackey 50c3ca922b Fix: Correctly convert ARFCN to index.
If you enable PCS, you'll never make it out of power-measurement without
this patch.
2012-11-15 10:42:18 +01:00
Andreas Eversberg 570c9716c2 Fix: Change T200 of LAPDm if SAPI 0 and SAPI 3 share bandwidth on SDCCH
We use 1 second on FACCH and 2 seconds on SACCH when SMS is transfered
during a call on TCH. There is no impact on bandwidth, because SAPIs use
differen channels.

In order to correctly transfer SMS during SDCCH, the T200 must be raised
from 1 (SAPI 0) to 2 (SAPI 0 and 3), so T200 will not timeout before
receiving acknowledge from BTS. This is because both SAPIs share the same
ressource on SDCCH. After release of SAPI 3, T200 is lowered back to 1.
2012-10-30 16:11:35 +01:00
Andreas Eversberg 07f8345646 Fixed decoding of hexadecimal LAI components
libosmocore has changed its LAI decoding from hex to decimal. This caused
wrong decoding of MCC and MNC. In order to provide required hex
transcoding, special hex encoding and decoding function are added to
mobile/sysinfo.c.
2012-10-30 10:26:20 +01:00
Kevin Redon ca05975c8f Fix linking with GNU ld 2.22 and libgps
Error:
gcc -Wall -I/home/kevredon/osmocom-bb/src/shared/libosmocore/include -I/home/kevredon/osmocom-bb/src/shared/libosmocore/include -g -O2 -D_HAVE_GPSD  -lgps -o cell_log main.o app_cell_log.o cell_log.o geo.o ../common/liblayer23.a /home/kevredon/osmocom-bb/src/shared/libosmocore/build-host/src/.libs/libosmocore.a /home/kevredon/osmocom-bb/src/shared/libosmocore/build-host/src/gsm/.libs/libosmogsm.a /home/kevredon/osmocom-bb/src/shared/libosmocore/build-host/src/codec/.libs/libosmocodec.a -lm
../common/liblayer23.a(gps.o): In function `osmo_gpsd_cb':
/home/kevredon/osmocom-bb/src/host/layer23/src/common/gps.c:79: undefined reference to `gps_waiting'

Fix:
Holger told me to do so (he knows better then me about autoconf)
- set CFLAGS and LIBS for LIBGPS in layer23
- add libgps CFLAGS and LIBS in Makefile.am for common, misc, mobile
I would have done the following (which also works):
-AC_CHECK_LIB(gps, gps_waiting, CFLAGS+=" -D_HAVE_GPSD" LDFLAGS+=" -lgps",,)
+AC_CHECK_LIB(gps, gps_waiting, CFLAGS+=" -D_HAVE_GPSD" LDFLAGS+=" -lgps" LIBS+=" -lgps",,)
2012-09-17 08:40:44 +02:00
Harald Welte a8ce4ea469 layer23: gsm48_decode_lai() is now in libosmogsm 2012-09-08 22:43:50 +02:00
Andreas Eversberg 24df176826 layer23: Fixed size of power offset (SI 3 rest octets)
This is importaint on certan cells to finish BCCH scanning. If SI2ter
indication is falsely detected, BCCH reading will timeout, because no
expected SI2ter is received.
2012-07-12 15:54:06 +02:00
Sylvain Munaut ce60deff7b host/l1ctl: Make sure to initialize tn in neigh_pm_req
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-03-29 09:21:57 +02:00
Tim 43c588b6c6 l23: Add option for mobile-app to bind to other interfaces than localhost
Signed-off-by: Tim Ehlers <osmocom@ehlers.info>
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-03-01 22:45:51 +01:00
Tim Ehlers b4a8badc45 mobile: Add vty option to force rekeying for every new channel
Written-by: Tim Ehlers	<osmocom@ehlers.info>
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
2012-02-14 23:54:25 +01:00