AgeCommit message (Collapse)AuthorFilesLines
2016-09-25mobile/gui: Fix overlapping memcpy that trashed stringsjolly/uiAndreas Eversberg2-10/+10
2016-09-25Add VTY option to add forbidden PLMN network manuallyAndreas Eversberg1-0/+29
The given network is appended and also stored in the SIM card. This is useful to block networks that would detach SIM cards with unknown (test) PLMN. Then the mobile will not register to that network, as long it is kept in the blocked list. Note that only the last four forbidden PLMNs will be stored in the SIM card.
2016-09-25Fix for "Added runtime selection of gps device"Andreas Eversberg1-3/+3
The gpsd line in the config file is now generated correctly, so that it is parsed correctly when loading the config on next startup.
2016-09-25layer1: Retry fist power measurement, if it seems to failAndreas Eversberg3-0/+11
In some cases (e.g. after a call with TCH) the first power measurement after a full reset will always return 0 (-110dbm). In this case the measurment is repeated once again. This is just a workarround, and it will not fix the actual cause.
2016-09-25layer23/mobile: Save config file when changing settings with UIAndreas Eversberg1-0/+23
2016-09-25layer23/UI: Fix: Don't use UI, if not enabled.Andreas Eversberg2-0/+7
2016-09-25[HACK] Cursor on displayAndreas Eversberg2-4/+16
2016-09-25[HACK] Display text from UI using framebufferAndreas Eversberg5-5/+24
2016-09-25[HACK] Use display and keypad via L1CTLAndreas Eversberg12-4/+215
This hack is just for demonstration.
2016-09-25layer23/mobile Ignore DSC typeAndreas Eversberg1-1/+1
Some network sends different DSC value than 0x0f.
2016-09-25layer23/mobile: Adding user interface to mobile applicationAndreas Eversberg13-14/+2775
Enable it in the VTY: en conf t ms 1 user-interface telnet-port 4248 write It will show a status screen. Different items to display in the status screen can be enabled/disabled via configuration. Dialing and handling of one or multiple calls are possible. This interface is not complete.
2016-09-25layer23/mobile: Added generic user interfaceAndreas Eversberg9-2/+1207
The user interface instance is currently accessed via telnet. It supports different views to display or enter something. It is still not complete.
2016-09-25layer23/mobile Fixes and improvements of built in call control (mnccms)Andreas Eversberg8-152/+393
The list of calls are now per MS instance, as they should be. Added init and exit function. Pending call instances are removed on exit. Added call state to call instances for easier state handling. Call functions now have optional indexes to handle explicitly given calls. gsm_call structure and function prototypes are now moved to a new header file (mnccms.h).
2016-09-25layer23/mobile Store current PLMN with the network nameAndreas Eversberg2-2/+10
This is essential, so we know if the least given name is still valid in the network we are currently on.
2016-09-25layer23/mobile: Fix: Also monitor subslot of TCH/H channelsAndreas Eversberg1-1/+2
2016-09-25layer23/mobile: Adding current rxlev/snr/berr to RR layer structureAndreas Eversberg2-6/+11
2016-09-25layer23/mobile: Adding summary of up to 6 strongest neighbour cellsAndreas Eversberg2-1/+19
2016-09-25Bad frame indication at l1ctrl.c: Replaced printf-hack by LOGPAndreas Eversberg1-2/+1
2016-09-25Add ringer support to built-in MNCC application of mobileAndreas Eversberg4-0/+97
2016-09-25Add ringer support to L1CTL interface and layer1Andreas Eversberg5-0/+42
2016-09-25mobile: VTY provides two options to disable neighbor cell measurementsAndreas Eversberg4-18/+58
1. "no neighbor-measurement idle": neighbor cell measurement for cell re-selection 2. "no neighbor-measurement dedicated": neighbor cell measurement for handover
2016-09-25mobile: Fixes of frequency redefinition handlingAndreas Eversberg1-2/+2
2016-09-25mobile/gsm48_rr.c: Show "cipher 0", if ciphering is disabledAndreas Eversberg1-2/+2
2016-09-25mobile: Keep track of cell channel description during dedicated modeAndreas Eversberg2-23/+45
The initial cell channel decription is received via SI1. During a call this description may change due to handover, assignment, frequency redefinition. Whenever it changes, the last received cell channel description is used to handle messages that do not include this information element. Example of one call with handover inbetween. The assignments do not include a cell channel description: IMMEDIATE ASSIGNMENT: Use cell channel description from SI1. ASSIGNMENT COMMAND: Re-use cell channel description from SI1. HANDOVER COMMAND: Use new cell channel description from HANDOVER COMMAND. ASSIGNMENT COMMAND: Re-use cell channel description from HANDOVER COMMAND.
2016-09-25mobile: Use only sel_si for informations about the current cellAndreas Eversberg4-44/+68
sel_si structure tracks content of SI5* and SI6 messages. The informations will change after handover, so they do not refer to the origin cell. The list of scanned cells is not affected. The sel_si structure will be overwritten with the selected cell after leaving dedicated mode.
2016-09-25[WIP] HO: VTY test option to fake a better neighbor cell to force handoverAndreas Eversberg3-1/+86
The handover is forced by reporting perfect measurement results of a given neighbor cell. All other neighbor cells and the serving cell is reported as poor. The falke report will sustain until the connection is released or a new 'better' cell is specified.
2016-09-25[WIP] HO: Completed handover process at mobile (layer 3).Andreas Eversberg3-176/+396
The implementation supports: - Non-synchronised handover - Synchronized handover (tbd) - Pre-sychronized handover
2016-09-25[WIP] HO: Transmit access bursts on DCCH of TCH channelsAndreas Eversberg1-2/+15
2016-09-25[WIP] HO: Add RX only mode for handoverAndreas Eversberg3-0/+17
When establishing dedicate mode, a flag is used to disable transitter. When transmitter is disabled, access bursts are allowed. After sending a L1CTL_PARAM_REQ, the transmitter is enabled with given parameters.
2016-09-25[WIP] HO: Add new parameters to L1CTL_DM_EST_REQAndreas Eversberg5-17/+49
* Flag to enter dedicated mode with TX disabled * Flag to use sync info of neighbor cell * Flag to use sync info of previous serving cell * Index of neighbor cell All these parameters are required to handover to a new channel.
2016-09-25[WIP] HO: Add SCH read of neighbor cells to TCH channelsAndreas Eversberg8-0/+183
The task will try to sync to neighbor cell during search (idle) frame.
2016-09-25[WIP] HO: Add power measurement of neighbor cells to TCH channelsAndreas Eversberg5-48/+210
The task will measure power between TX and RX of successive TCH frames.
2016-09-25[WIP] HO: Add BSIC to L1CTL_NEIGH_PM_INDAndreas Eversberg3-3/+5
2016-09-25[WIP] Safely change TPU offset on TS change or sync changeAndreas Eversberg5-14/+59
The TPU offset may vary some qbits, but on significant change, like a change to a new time slot, the TPU offset is always incremented. Changing backwards is performed by changing forwards and incrementing frame number. (This is because we wrap arround into the next frame.) The maximum amount of incrementation is half of a TDMA frame duration. This way we can be sure that the TPU always generates next IRQ later. If an incrmentation of more than half of a TDMA frame is required, the incrementation is performed in two steps, thus we can can be sure that each IRQ will always happen later. Example: TS 1 -> TS 2: increment by 625 qbits, keep same FN TS 1 -> TS 7: increment by 2500 qbits, then by 1250 qbits, keep same FN TS 7 -> TS 1: increment by 1250 qbits, increment FN TS 2 -> TS 1: increment by 2500 qbits, then by 1875 qbits, increment FN TODO: Prevent scheduling/transmission before and during change of TPU/FN.
2016-01-20fw: fix SPCA552 write timingSteve Markgraf1-0/+1
With GCC 4.9.3 the timing was broken and initializing the SPCA552 on the Pirelli DP-L10 did not work. Add a small delay which fixes that. Signed-off-by: Steve Markgraf <>
2016-01-18host/mobile: Improved SAP interface integrationЯницкий Ва дим7-22/+104
1) Now the SAP interface is selectable as SIM source using the 'sim sap' command in VTY. 2) SAP connection starts only if it is configured as SIM source. 3) Fixed sap_socket_path configuration r/w errors. Written-by: Яницкий Ва дим <> Signed-off-by: Sylvain Munaut <>
2016-01-18mobile: Fix for "Added runtime selection of gps device"Яницкий Ва дим1-5/+4
The 'gps host HOST:PORT' line in the config file now is generated correctly. So that it is parsed correctly when loading the config on next startup. Also the gpsd port now is parsed as it should without a colon. Written-by: Яницкий Ва дим <> Signed-off-by: Sylvain Munaut <>
2015-12-31modernize AM_INit_AUTOMAKEHarald Welte1-3/+2
according to
2015-12-31autoconf: Migrate from INCLUDES to AM_CPPFLAGSHarald Welte3-3/+3
2015-12-31cleanup some compile warningsMax6-24/+17
2015-07-21layer1: fix chan_nr2mf_task_mask for TCH/H channelFelix Domke1-1/+2
"multiframe", the frame layout (used to compute neighbor cell monitoring pattern) was uninitialized in TCH/H case. This, in combination with gcc optimizing the "switch(multiframe)"-statement into a LUT without bounds- checking (since using an uninitialized value is undefined behavior) caused neigh_task to be filled with an out-of- bounds value, eventually crashing the TDMA scheduler. Written-by: Felix Domke <> Signed-off-by: Sylvain Munaut <>
2015-04-28host/mobile: Finish working support for the SAP interfaceSylvain Munaut6-53/+545
Patch mostly written by Nico Golde and some cleanup/testing by Domonkos Tomcsanyi Signed-off-by: Sylvain Munaut <>
2014-09-06layer23: initialize l2h/l3h pointers in rx_l1_rach_confIgor Almeida1-0/+1
Signed-off-by: Igor Almeida <> Signed-off-by: Sylvain Munaut <>
2014-06-15mobile: Use osmocom auth API instead of direct callsMax3-28/+20
Submitted-by: Max <> Signed-off-by: Sylvain Munaut <>
2013-12-29fw: tell linker to add init_array to ctor sectionSteve Markgraf5-0/+5
Starting with version 4.8, gcc places functions with __attribute__ ((constructor)) in .init_array instead of .ctors by default. This broke firmware images built with gcc >= 4.8. Signed-off-by: Steve Markgraf <>
2013-12-24mobile/SS: Fixed bug in parsing of known supplemenary service codesAndreas Eversberg1-5/+5
Use correct variable to check if supplementary service code is known or not.
2013-09-26Fix wrong msgb_pull usageSylvain Munaut2-4/+4
Signed-off-by: Sylvain Munaut <>
2013-06-19osmocon: Improve performance by handling several serial bytes at a timeAndreas Eversberg1-8/+19
2013-05-23host/mobile: Add 'extern' qualifier to config_dir in app_mobile.hBhaskar1-1/+1
This prevents duplication definition with main.c From: Bhaskar <> Signed-off-by: Sylvain Munaut <>
2013-05-23host/mobile: Fixup in error checking path of l23_app_initBhaskar1-3/+6
From: Bhaskar <> Signed-off-by: Sylvain Munaut <>