Open Source Mobile Communications: Issueshttps://osmocom.org/https://osmocom.org/favicon.ico?16647414092023-10-03T16:46:40ZOpen Source Mobile Communications
Redmine OsmocomBB - Bug #6200 (New): osmo-trx-ms: lots of @Received bad frame (rc=-1, ber=444/444)@https://osmocom.org/issues/62002023-10-03T16:46:40Zfixeria
<p>Hi <a class="user active" href="https://osmocom.org/users/52">Hoernchen</a>,</p>
<p>we had a debugging session with <a class="user active" href="https://osmocom.org/users/30187">pespin</a> today and we got the mssdr-ms side to work more or less reliably. But we noticed a weird problem:</p>
<pre>
20231003152951965 DL1C NOTICE trxcon(0)[0x5579a42900]{BCCH_CCCH}: L1CTL_DM_EST_REQ indicates single ARFCN GSM900 979 (l1ctl.c:572)
20231003152951965 DSCH NOTICE trxcon(0)[0x5579a42900]: Reset scheduler (sched_trx.c:190)
20231003152951965 DSCH NOTICE trxcon(0)[0x5579a42900]: Delete TDMA timeslot #0 (sched_trx.c:226)
20231003152951965 DSCH NOTICE trxcon(0)[0x5579a42900]: Add a new TDMA timeslot #4 (sched_trx.c:207)
20231003152951965 DSCH NOTICE trxcon(0)[0x5579a42900]: (Re)configure TDMA timeslot #4 as PDCH (sched_trx.c:276)
20231003152951966 DSCH NOTICE trxcon(0)[0x5579a42900]: TS4-PDTCH activating (sched_trx.c:476)
20231003152951966 DSCH NOTICE trxcon(0)[0x5579a42900]: TS4-PTCCH activating (sched_trx.c:476)
20231003152953364 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=86/456) at fn=513573 (sched_lchan_pdtch.c:94)
20231003152954366 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=87/456) at fn=513790 (sched_lchan_pdtch.c:94)
20231003152954804 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513885 (sched_lchan_pdtch.c:94)
20231003152954827 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513890 (sched_lchan_pdtch.c:94)
20231003152954846 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513894 (sched_lchan_pdtch.c:94)
20231003152954864 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513898 (sched_lchan_pdtch.c:94)
20231003152954887 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513903 (sched_lchan_pdtch.c:94)
20231003152954906 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513907 (sched_lchan_pdtch.c:94)
20231003152954924 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513911 (sched_lchan_pdtch.c:94)
20231003152954947 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513916 (sched_lchan_pdtch.c:94)
20231003152954966 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513920 (sched_lchan_pdtch.c:94)
20231003152954984 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513924 (sched_lchan_pdtch.c:94)
20231003152955007 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513929 (sched_lchan_pdtch.c:94)
20231003152955025 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513933 (sched_lchan_pdtch.c:94)
20231003152955044 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513937 (sched_lchan_pdtch.c:94)
20231003152955067 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513942 (sched_lchan_pdtch.c:94)
20231003152955085 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513946 (sched_lchan_pdtch.c:94)
20231003152955104 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513950 (sched_lchan_pdtch.c:94)
20231003152955127 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513955 (sched_lchan_pdtch.c:94)
20231003152955145 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513959 (sched_lchan_pdtch.c:94)
20231003152955164 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513963 (sched_lchan_pdtch.c:94)
20231003152955188 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513968 (sched_lchan_pdtch.c:94)
20231003152955205 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513972 (sched_lchan_pdtch.c:94)
20231003152955224 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513976 (sched_lchan_pdtch.c:94)
20231003152955248 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513981 (sched_lchan_pdtch.c:94)
20231003152955265 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513985 (sched_lchan_pdtch.c:94)
20231003152955284 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513989 (sched_lchan_pdtch.c:94)
20231003152955308 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513994 (sched_lchan_pdtch.c:94)
20231003152955325 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=513998 (sched_lchan_pdtch.c:94)
20231003152955344 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=514002 (sched_lchan_pdtch.c:94)
20231003152955368 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=514007 (sched_lchan_pdtch.c:94)
20231003152955385 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=514011 (sched_lchan_pdtch.c:94)
20231003152955404 DSCHD ERROR trxcon(0)[0x5579a42900]: TS4-PDTCH Received bad frame (rc=-1, ber=444/444) at fn=514015 (sched_lchan_pdtch.c:94)
</pre>
<p>It's not seen during the GMM ATTACH and SM PDP CTX ACT procedures, but only when we tried sending some data (ICMP ping) over the tun interface.<br />As can be seen, quite a lot of Downlink PDCH blocks not being decoded. The <code>BER=444/444</code> makes me think that received bursts were all 0 (neither -127 nor 127).<br />This is enlarging the ping delays significantly (from ~600ms to ~5000ms ==> ~10 times):</p>
<pre>
PING 176.16.222.1 (176.16.222.1) 56(84) bytes of data.
64 bytes from 176.16.222.1: icmp_seq=1 ttl=64 time=681 ms
64 bytes from 176.16.222.1: icmp_seq=2 ttl=64 time=803 ms
64 bytes from 176.16.222.1: icmp_seq=3 ttl=64 time=625 ms
64 bytes from 176.16.222.1: icmp_seq=4 ttl=64 time=525 ms
64 bytes from 176.16.222.1: icmp_seq=5 ttl=64 time=5646 ms
64 bytes from 176.16.222.1: icmp_seq=6 ttl=64 time=4678 ms
64 bytes from 176.16.222.1: icmp_seq=7 ttl=64 time=3911 ms
64 bytes from 176.16.222.1: icmp_seq=8 ttl=64 time=2948 ms
64 bytes from 176.16.222.1: icmp_seq=9 ttl=64 time=1984 ms
64 bytes from 176.16.222.1: icmp_seq=10 ttl=64 time=1020 ms
64 bytes from 176.16.222.1: icmp_seq=11 ttl=64 time=602 ms
64 bytes from 176.16.222.1: icmp_seq=12 ttl=64 time=742 ms
64 bytes from 176.16.222.1: icmp_seq=13 ttl=64 time=5741 ms
64 bytes from 176.16.222.1: icmp_seq=14 ttl=64 time=4769 ms
64 bytes from 176.16.222.1: icmp_seq=15 ttl=64 time=3824 ms
64 bytes from 176.16.222.1: icmp_seq=16 ttl=64 time=2860 ms
64 bytes from 176.16.222.1: icmp_seq=17 ttl=64 time=1896 ms
64 bytes from 176.16.222.1: icmp_seq=18 ttl=64 time=932 ms
64 bytes from 176.16.222.1: icmp_seq=19 ttl=64 time=813 ms
64 bytes from 176.16.222.1: icmp_seq=20 ttl=64 time=653 ms
64 bytes from 176.16.222.1: icmp_seq=21 ttl=64 time=5630 ms
64 bytes from 176.16.222.1: icmp_seq=22 ttl=64 time=4658 ms
64 bytes from 176.16.222.1: icmp_seq=23 ttl=64 time=3893 ms
64 bytes from 176.16.222.1: icmp_seq=24 ttl=64 time=2929 ms
64 bytes from 176.16.222.1: icmp_seq=25 ttl=64 time=1969 ms
64 bytes from 176.16.222.1: icmp_seq=26 ttl=64 time=1005 ms
64 bytes from 176.16.222.1: icmp_seq=27 ttl=64 time=546 ms
64 bytes from 176.16.222.1: icmp_seq=28 ttl=64 time=686 ms
</pre>
<p>This looks like a PHY problem to me, so assigning to you.</p> libosmocore - Bug #6021 (New): map file breaks recent lld buildshttps://osmocom.org/issues/60212023-05-02T08:49:54ZHoernchen
<p>lld defaults to --no-undefined-version since <a class="external" href="https://reviews.llvm.org/D135402">https://reviews.llvm.org/D135402</a> which breaks building if not all symbols mentioned in the map file exist, i.e. by building libosmocore without systemd. Fix: add -Wl,--undefined-version to the LDFLAGS.</p> OsmoBTS - Bug #5895 (New): LC15: Audio Quality Problem sometime after cf7a7fcebf625a14fd764355c3b...https://osmocom.org/issues/58952023-02-07T03:11:09Zkeith
<p>Writing this up now while it's a bit fresh...</p>
<p>I have spent the last 12 hours or so working with people on site to try to track down these problems:</p>
<p>Fierce complaints about audio quality (no audio, unintelligible, intermittent, chopped)</p>
<p>Observation of a lot of very variable Q in meas reps, especially on downlink (associated with bad audio) and more pronounced when the call B-leg was using another codec such as G.729 on the other side of the PBX, - in fact not transcoding at site and sending AMR to our data centre and trancoding there to PCMA/U for the upstream VoIP was giving better results most of the time.</p>
<p>However, today I discovered the extent of how bad this was on local MS to MS calls.</p>
<p>After exhausting everything I could think of, we went back to the timeline and there were some opinions that this started around a date last year which seemed to be around the time I changed this site away from osmo-nitb. Given I wasn't seeing any signalling problems, I had been looking for problems with maybe the MGW or something with RTP that would have changed. but I could find nothing.</p>
<p>Of course none of that was at fault, what happened was that along with the move to osmo-bsc, I built v1.4.0 of osmo-bts - I think not 1.5.0 because at the time 1.4.0 built against the libs I had on the BTS, anyway, going back to the binary I had built before from cf7a7fce "solves" the problem.</p>
<p>Given the current somewhat tense situation I don't envisage "test"-ing anything at this site for the time being so I can't exactly try to dissect between cf7a7fce and 1.4.0 not that it would be very easy to run each commit against a bunch of manual tests that annoy the local people, asking them to make calls to each other.</p>
<p>So what to do? Well note it at least. I don't have another lc15 to test on. <br />Maybe shout-out to the main devs who committed code that touched lc15 or common, (which seems to have to do with power control, interference measurements) to see if they have any ideas. My feeling is that something that was done is not happy on the LC15 PHY.</p>
<p>There's the chance that this was fixed since 1.4.0 or in another lib.</p>
<p><em>Trivia: cf7a7fce is the last commit that can do RSL/OML bring-up against osmo-nitb.. that's why that one.</em></p> OsmoHLR - Feature #5865 (New): Automate selection of LU Reject Causehttps://osmocom.org/issues/58652023-01-20T13:59:07Zkeith
<p>There is some suggestion in <a class="external" href="https://gerrit.osmocom.org/c/osmo-hlr/+/16808">https://gerrit.osmocom.org/c/osmo-hlr/+/16808</a> that osmo-hlr could use some criteria to decide what cause/reason to send to the GSUP client when rejecting a Location/Routing Update</p>
<p>Possibly, sending "IMSI Unknown in HLR" is wrong when the SIM is foreign to our network.</p>
<p>We could have a regex config option to let osmo-hlr know what is "our" SIM or not. Or maybe a GSUP client like osmo-msc can comunicate MNC-MCC info from the MSC network config over GSUP? I'm not familiar with GSUP.</p> OsmoTRX - Feature #5859 (New): remove non-neon and non-sse supporthttps://osmocom.org/issues/58592023-01-16T14:46:07ZHoernchen
<p>As oliver noticed the builders were apparently broken an no one noticed it for quite some time: <a class="external" href="https://osmocom.org/issues/5848#note-2">https://osmocom.org/issues/5848#note-2</a></p>
<p>I propose dropping support for sse3-less and neon-less targets.</p>
<ul>
<li>Sse3-less means some old <em>embedded</em> x86 cpu like the amd geode series that existed until ~ 2006, so definitely older than ~2010.</li>
<li>neon-less arm means anything predating the first cortex a8 chips, so a ~ 2006 level. The only maybe still existing arm devies without neon are the raspi 1 and the <em>old</em> raspi zero.</li>
</ul>
<p>I am having a hard time imagining how trying to run a low latency application and cramming 10 threads into one single ancient sub-1ghz cpu core would work out in practice, even using the 1sps mode which no one has been using for years either...</p>
<p>The lowest power cpu running actual osmotrx is probably a fairwaves umsite or something like that, but even the first atom cpus intel ever produced support at least sse3.</p>
<p>Arguably even dropping sse4.1-less support would be reasonable, this would affect pre-2011 amd embedded fusion cpus and pre-2014 intel atom cpus.</p>
<p>The current manual feature suport selection ensures inlining can never happen, and considering our bursts have a tiny or even slightly less tiny size this is rather bad, there should be target or cpu specific builds anyway. The old intel atom in particular needs special compiler flags because the pipeline is so bad so generic builds are a really bad idea anyway.</p> Cellular Network Infrastructure - Feature #5771 (New): series of presentations about the invididu...https://osmocom.org/issues/57712022-11-14T19:25:57Zlaforge
<p>Most of the talks we ever gave on setting up and running the Osmocom CNI are ages old and hence relatively outdated.</p>
<p>Given the number of network elements and the relate complexity, I think we should consider doing a talk on each of them. The talk doesn't have to be of a particular length, so some network elements might have shorter or longer presentations.</p>
<p>Looking at the checklist below, we already have 14 items. Covering this in OsmoDevCall is not an option, it would take too long (14 months if no other topic would be covered in between). So it is going to be on a separate schedule.</p>
<p>I would consider each presentation should then be prominently linked from the redmine project page of each network element, next to the user manual.</p>
<p>We may of course still be publishing those via the OsmoDevCall "event" on media.ccc.de, so all videos are in one location.</p>
<p>I think every presentation should start with a quick picture at the overal diagram of netwokr elements, describe the surrounding elements and their interfaces to then look in detail at the specific element that ist he subject of the talk.</p>
It should cover
<ul>
<li>basic configuration to get it started / connected</li>
<li>VTY for state introspection ("ar alle connections up?", ...)</li>
<li>looking at logs / protocol traces</li>
<li>practical demo; looking at what happens in pcaps + logs for some basic transaction like LU, SMS, voice call.</li>
</ul> OsmoBSCNAT - Bug #5574 (New): OsmoBSCNAT testsuite running in jenkinshttps://osmocom.org/issues/55742022-06-01T10:38:54Zosmith
<p>As discussed earlier, OsmoBSCNAT ttcn3 tests should be running in jenkins, like for other Osmocom projects.</p> OsmoTRX - Bug #5178 (New): LimeNET Micro clock errorhttps://osmocom.org/issues/51782021-06-12T19:25:29ZAnelito
<p>Running the example setup listed below fails on a LimeNET Micro v2.1 because of internal clock error.<br />Reference guide: [[<a class="external" href="https://lucasteske.medium.com/creating-your-own-gsm-network-with-limesdr-1935bac257f4">https://lucasteske.medium.com/creating-your-own-gsm-network-with-limesdr-1935bac257f4</a>]]</p>
<pre><code>$ sudo osmo-trx-lms<br /> % 'rt-prio 18' is deprecated, use 'policy rr 18' under 'sched' node instead<br /> Sat Jun 12 10:00:30 2021 DLGLOBAL &lt;0008&gt; telnet_interface.c:104 Available via telnet 127.0.0.1 4237<br /> Sat Jun 12 10:00:30 2021 DLCTRL &lt;000f&gt; control_if.c:887 CTRL at 127.0.0.1 4236<br /> Sat Jun 12 10:00:30 2021 DMAIN &lt;0000&gt; osmo-trx.cpp:563 Config Settings<br /> Log Level............... 0<br /> Device args............. <br /> TRX Base Port........... 5700<br /> TRX Address............. 127.0.0.1<br /> GSM BTS Address......... 127.0.0.1<br /> Channels................ 1<br /> Tx Samples-per-Symbol... 4<br /> Rx Samples-per-Symbol... 4<br /> EDGE support............ 0<br /> Extended RACH support... 0<br /> Reference............... 0<br /> Filler Burst Type....... Empty bursts<br /> Filler Burst TSC........ 0<br /> Filler Burst RACH Delay. 0<br /> Multi-Carrier........... 0<br /> LO freq. offset......... 0<br /> RSSI to dBm offset...... 0 (relative)<br /> Swap channels........... 0<br /> Tx Antennas............. 'BAND1'<br /> Rx Antennas............. 'LNAW'</code></pre>
<pre><code>Sat Jun 12 10:00:30 2021 DMAIN &lt;0000&gt; osmo-trx.cpp:481 Setting SCHED_RR priority 18. This setting is DEPRECATED, please use 'policy rr 18' under the 'sched' VTY node instead.<br /> Sat Jun 12 10:00:30 2021 DDEV &lt;0005&gt; LMSDevice.cpp:140 creating LMS device...<br /> Sat Jun 12 10:00:30 2021 DDEV &lt;0005&gt; LMSDevice.cpp:272 Opening LMS device..<br /> Sat Jun 12 10:00:30 2021 DDEV &lt;0005&gt; LMSDevice.cpp:278 Devices found: 1<br /> Sat Jun 12 10:00:30 2021 DDEV &lt;0005&gt; LMSDevice.cpp:288 Device [0]: LimeNET-Micro, media=USB 2.0, module=FT601, addr=24607:1027, serial=005839EC8507E7<br /> Sat Jun 12 10:00:30 2021 DDEV &lt;0005&gt; LMSDevice.cpp:297 Using device[0]<br /> Sat Jun 12 10:00:30 2021 DDEVDRV &lt;0006&gt; LMSDevice.cpp:187 Reference clock 30.72 MHz<br /> Sat Jun 12 10:00:30 2021 DDEV &lt;0005&gt; LMSDevice.cpp:126 Device identified as LimeNET-Micro<br /> Sat Jun 12 10:00:30 2021 DDEV &lt;0005&gt; LMSDevice.cpp:324 Init LMS device<br /> Sat Jun 12 10:00:31 2021 DDEV &lt;0005&gt; LMSDevice.cpp:332 Setting Internal clock reference<br /> Sat Jun 12 10:00:31 2021 DDEV &lt;0005&gt; LMSDevice.cpp:482 Device type LimeNET-Micro doesn't support internal reference clock<br /> Sat Jun 12 10:00:31 2021 DDEV &lt;0005&gt; LMSDevice.cpp:377 Error in LMS open, closing: <br /> Sat Jun 12 10:00:31 2021 DMAIN &lt;0000&gt; osmo-trx.cpp:597 Failed to create radio device<br /> Sat Jun 12 10:00:31 2021 DMAIN &lt;0000&gt; osmo-trx.cpp:568 Shutting down transceiver...<br /> Sat Jun 12 10:00:31 2021 DDEV &lt;0005&gt; LMSDevice.cpp:158 Closing LMS device</code></pre> OsmoMSC - Bug #5057 (New): Can only send a maximum of 15 SMPP messages?https://osmocom.org/issues/50572021-03-03T02:53:02Zoxenff
<p>I am currently using SMPP to send SMS messages to a device connected to my GSM Core Network ( via LTE ).</p>
<p>For some strange reason however, once the MSC sends 15 messages, they stop and I can't send anymore.</p>
<p>I've had a pretty extensive search around the code as to why this might be happening but can't for the life of me work out why.</p>
<p>This was not an issue when using the previous OpenBSC SMPP ( 0.15.0 ).</p>
<p>Any help would be greatly appreciated !</p> osmo-qcdiag - Bug #4781 (New): get hoernchen/gsmtap branch mergedhttps://osmocom.org/issues/47812020-10-06T15:09:14Zlaforge
<p>I had no idea that this work from May had not undergone some patch submission to gerrit so far.</p>
<p>It should go without saying that we always want to make sure that our work ends up in the master branch, as far as possible.</p>
Please split up in per-feature patches and push them to gerrit. Looking at the code, that could fore xample be:
<ul>
<li>support for LTE RRC</li>
<li>getopt parsing</li>
<li>SIGINT/SIGTERM handling to close gracefully</li>
<li>UMTS RRM gsmtap support (possibly including cell_id tracking)</li>
<li>UMTS NAS gsmtap support</li>
<li>introduction of diag_instance as first parameter to handle_* functions</li>
<li>GSM RR gsmtap support</li>
<li>GSM GMM gsmtap support</li>
<li>GPRS MAC gsmtap support</li>
<li>DIAG I/O fies</li>
</ul>
<p>In the end, the customer/usage/application specific patch could consist of mainly adding some #ifdefs to disable/enable handling of specific features. That patch can stay in a branch, but all of the general improvements should be merged master.</p>
<p>Thanks!</p> osmo-ccid-firmware - Bug #4777 (New): Reader does not answer to GET DATA RATES commandhttps://osmocom.org/issues/47772020-10-03T16:11:03Zrousseau
<p>If I use the parse tool from my CCID driver to get the supported clock list I get:<br /><a class="external" href="https://ccid.apdu.fr/#CCID_compliant">https://ccid.apdu.fr/#CCID_compliant</a></p>
<pre>
bNumDataRatesSupported: 0 (will use whatever is returned)
IFD does not support GET_DATA_RATES request: LIBUSB_ERROR_TIMEOUT
</pre>
<p>Since the value of bNumDataRatesSupported is 0 an empty list as answer would be perfect instead of a timeout.</p>
<p>The CCID spec says: "A CCID with bNumDataRatesSupported equal to 00h does not have to support this request." so the reader is stil compliant to the CICD specification. But an answer would be fine.</p> osmo-ccid-firmware - Bug #4776 (New): Reader does not answer to GET CLOCK FREQUENCIES commandhttps://osmocom.org/issues/47762020-10-03T16:05:18Zrousseau
<p>If I use the parse tool from my CCID driver to get the supported clock list I get:</p>
<pre>
bNumClockSupported: 4
IFD does not support GET CLOCK FREQUENCIES request: LIBUSB_ERROR_TIMEOUT
</pre>
<p>I expected a list of 4 values.</p>
<p>This command is described in CCID v1.1 chapter '5.3.2 GET_CLOCK_FREQUENCIES' page 24.</p> OsmoTRX - Bug #4622 (New): Lots of "dumping STALE burst in TRX->SDR interface" messages in osmo-t...https://osmocom.org/issues/46222020-06-18T17:01:52Zpespin
<p>Running osmo-bts-trx with osmo-trx-uhd using a B200 with multi-arfcn enabled and 2 TRX.<br />Then osmo-bts-trx enters a "graceful exit" due to Abis signal lost (eg: kill BSC process). As part of "graceful exit", BTS will ramp down power, and finally send CMD POWEROFF and wait for RSP POWEROFF before exiting the process.<br />At this point in time, osmo-trx is still running waiting for next osmo-bts-trx to connect to it and do a "POWERON".<br />When osmo-bts-trx is restarted and connects to it after a few seconds, and does the "POWERON", then LOTS of messages like this show up in the log during a few seconds/minutes</p>
<p>Remark: I'm using my WIP branch to have all those graceful shutdown features I'm mentioning, but they will be merged soon and they are not the "cause" of the issue.</p>
<p>So clearly there's something wrong during 2nd POWERON (POWERON->POWEROFF->wait some time->POWERON). Probably some state is kept regarding reading timestamps and then upon 2nd POWERON osmo-trx somehow tries to catch up.<br /><pre>
20200618185527592 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (3:967881 vs 5:967952), retrans=0
20200618185527592 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (4:967881 vs 5:967952), retrans=0
20200618185527592 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (5:967881 vs 5:967952), retrans=0
20200618185527592 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (6:967881 vs 5:967952), retrans=0
20200618185527592 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=1] dumping STALE burst in TRX->SDR interface (7:967883 vs 5:967952), retrans=0
20200618185527592 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (7:967881 vs 6:967952), retrans=0
20200618185527596 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (0:967882 vs 4:967953), retrans=0
20200618185527596 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (1:967882 vs 4:967953), retrans=0
20200618185527596 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=1] dumping STALE burst in TRX->SDR interface (6:967884 vs 4:967953), retrans=0
20200618185527596 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (2:967882 vs 5:967953), retrans=0
20200618185527597 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (3:967882 vs 5:967953), retrans=0
20200618185527597 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (4:967882 vs 5:967953), retrans=0
20200618185527597 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (5:967882 vs 5:967953), retrans=0
20200618185527597 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=1] dumping STALE burst in TRX->SDR interface (7:967884 vs 5:967953), retrans=0
20200618185527597 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (6:967882 vs 6:967953), retrans=0
20200618185527597 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (7:967882 vs 6:967953), retrans=0
20200618185527601 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (0:967883 vs 4:967954), retrans=0
20200618185527601 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=1] dumping STALE burst in TRX->SDR interface (6:967885 vs 4:967954), retrans=0
20200618185527601 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (1:967883 vs 5:967954), retrans=0
20200618185527601 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (2:967883 vs 5:967954), retrans=0
20200618185527601 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (3:967883 vs 5:967954), retrans=0
20200618185527601 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (4:967883 vs 5:967954), retrans=0
20200618185527601 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (5:967883 vs 5:967954), retrans=0
20200618185527601 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (6:967883 vs 5:967954), retrans=0
20200618185527601 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=1] dumping STALE burst in TRX->SDR interface (7:967885 vs 5:967954), retrans=0
20200618185527602 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (7:967883 vs 6:967954), retrans=0
20200618185527606 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (0:967884 vs 5:967955), retrans=0
20200618185527606 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (1:967884 vs 5:967955), retrans=0
20200618185527606 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (2:967884 vs 5:967955), retrans=0
20200618185527606 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (3:967884 vs 5:967955), retrans=0
20200618185527606 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (4:967884 vs 5:967955), retrans=0
20200618185527606 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (5:967884 vs 5:967955), retrans=0
20200618185527606 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (6:967884 vs 5:967955), retrans=0
20200618185527606 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (7:967884 vs 5:967955), retrans=0
20200618185527606 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=1] dumping STALE burst in TRX->SDR interface (6:967886 vs 5:967955), retrans=0
20200618185527606 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=1] dumping STALE burst in TRX->SDR interface (7:967886 vs 5:967955), retrans=0
20200618185527610 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (0:967885 vs 5:967956), retrans=0
20200618185527610 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (1:967885 vs 5:967956), retrans=0
20200618185527610 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (2:967885 vs 5:967956), retrans=0
20200618185527610 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (3:967885 vs 5:967956), retrans=0
20200618185527610 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (4:967885 vs 5:967956), retrans=0
20200618185527610 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (5:967885 vs 5:967956), retrans=0
20200618185527611 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (6:967885 vs 5:967956), retrans=0
20200618185527611 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (7:967885 vs 5:967956), retrans=0
20200618185527611 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=1] dumping STALE burst in TRX->SDR interface (6:967887 vs 5:967956), retrans=0
20200618185527611 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=1] dumping STALE burst in TRX->SDR interface (7:967887 vs 5:967956), retrans=0
20200618185527614 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (0:967886 vs 4:967957), retrans=0
20200618185527615 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=1] dumping STALE burst in TRX->SDR interface (6:967888 vs 4:967957), retrans=0
20200618185527615 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (1:967886 vs 5:967957), retrans=0
20200618185527615 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (2:967886 vs 5:967957), retrans=0
20200618185527615 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (3:967886 vs 5:967957), retrans=0
20200618185527615 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (4:967886 vs 5:967957), retrans=0
20200618185527615 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (5:967886 vs 5:967957), retrans=0
20200618185527615 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=1] dumping STALE burst in TRX->SDR interface (7:967888 vs 5:967957), retrans=0
20200618185527615 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (6:967886 vs 6:967957), retrans=0
20200618185527615 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (7:967886 vs 6:967957), retrans=0
20200618185527620 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (0:967887 vs 5:967958), retrans=0
20200618185527620 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (1:967887 vs 5:967958), retrans=0
20200618185527620 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (2:967887 vs 5:967958), retrans=0
20200618185527620 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (3:967887 vs 5:967958), retrans=0
20200618185527620 DTRXDDL <0003> Transceiver.cpp:428 [tid=139983326238464][chan=0] dumping STALE burst in TRX->SDR interface (4:967887 vs 5:967958), retrans=0
</pre></p> OsmoSGSN - Bug #4599 (New): counter group sgsn:pdpctx already exists for index X, instead using Yhttps://osmocom.org/issues/45992020-06-08T18:05:33Zlaforge
<p>When using OsmoSGSN (current nightly) in a setup with 3rd party 2G BSS and 3G RAN, we are running quite often into the following error message:</p>
<pre>
<0020> rate_ctr.c:224 counter group 'sgsn:pdpctx' already exists for index 5, instead using index 8. This is a software bug that needs fixing.
</pre>
<p>I wonder how this happens. It basically means we want to allocate a PDP context for the same NSAPI where we already have a PDP context.</p>
<p>The only path that calls sgsn_pdp_ctx_alloc() is sgsn_create_pdp_ctx() via activate_ggsn() originating from do_act_pdp_req() and the latter actually chekcs if we already have a PDP context fro the NSAPI in sgsn_pdp_ctx_by_nsapi. weird.</p>
<p><a class="user active" href="https://osmocom.org/users/1741">lynxis</a> any ideas?</p> Cellular Network Infrastructure - Bug #4141 (New): No osmux specific code in place during codec n...https://osmocom.org/issues/41412019-08-05T15:57:19Zpespin
<p>Current code in OsmoBSC and OsmoMSC doesn't take into account that Osmux is to be used when codec negotiation goes one. That means that supported codec list needs to be correctly configured manually in VTY in order to avoid selecting incorrect codecs (like non-AMR). Moreover if an MS doesn't support AMR, since we don't have transcoding yet, the call cannot take place.</p>
<p>Different scenarios need to be listed here and think about what we want to do in each case.</p> libosmo-sccp + libosmo-sigtran - Bug #4072 (New): Implement IPA PING/PONG mechanism in libosmo-si...https://osmocom.org/issues/40722019-06-21T14:51:56Zlaforge
<p>When using an IPA based transport (SCCPlite), we should use the IPA PING/PONG mechanism to check the peer is still alive. This applies both to the server (SGW) and client (AS/ASP) roles.</p> SIMtrace 2 - Bug #3815 (New): simtrace2 fails USB-IF CH9 testhttps://osmocom.org/issues/38152019-02-23T15:10:02Zlaforge
<p>When running the Chapter9 tests of the USB IF against a simtrace2 device, they fail. The test claims SET_CONFIGURATION is failing, which is quite odd.</p> OsmoBSC - Feature #3330 (New): osmo-bsc: Implement IMMEDIATE ASSIGNMENT EXTENDEDhttps://osmocom.org/issues/33302018-06-08T12:14:49Zpespin
<p>See 04.08 "9.1.19 Immediate assignment extended". It allows to send two Immediate Assignment to different MS in the same message.</p>
<p>Furthermore, according to 08.58 "5.7 IMMEDIATE ASSIGNMENT" section:</p>
<pre>
The IMMEDIATE ASSIGNMENT EXTENDED message is either sent by the BSC in the IMMEDIATE ASSIGN
COMMAND, or built by the BTS from up to two IMMEDIATE ASSIGN COMMAND messages.
</pre>
<p>It's probably more useful to implement it in osmo-bts (see <a class="issue tracker-2 status-1 priority-2 priority-default" title="Feature: osmo-bts: Implement IMMEDIATE ASSIGNMENT EXTENDED (New)" href="https://osmocom.org/issues/3329">#3329</a>), but we may still want to support it in osmo-bsc if we connect to non osmo-bts which don't craft IMMEDIATE ASSIGNMENT EXTENDED from regular IMMEDIATE ASSIGNMENT on their own. I imagine for instance an scenario osmo-bsc<->nanobts.</p>
<p>We recently saw some production scenarios which high load in which the AGCH IMM Assign queue was saturated (1000 messages in the queue), so this should help maintain the queue len in lower numbers.</p> OsmoBTS - Feature #3329 (New): osmo-bts: Implement IMMEDIATE ASSIGNMENT EXTENDEDhttps://osmocom.org/issues/33292018-06-08T12:02:32Zpespin
<p>See 04.08 "9.1.19 Immediate assignment extended". It allows to send two Immediate Assignment to different MS in the same message.</p>
<p>Furthermore, according to 08.58 "5.7 IMMEDIATE ASSIGNMENT" section:</p>
<pre>
The IMMEDIATE ASSIGNMENT EXTENDED message is either sent by the BSC in the IMMEDIATE ASSIGN
COMMAND, or built by the BTS from up to two IMMEDIATE ASSIGN COMMAND messages.
</pre>
<p>So we don't need to support IMMEDIATE ASSIGNMENT EXTENDED in osmo-bsc, we can already craft them in osmo-bts (bts.c) in a way similar to what we already do with IMMEDIATE ASSIGNMENT REJECT commands (we couple up to 4 messages in one in there).</p>
<p>We recently saw some production scenarios which high load in which the AGCH IMM Assign queue was saturated (1000 messages in the queue), so this should help maintain the queue len in lower numbers.</p> Cellular Network Infrastructure - Feature #3229 (New): build-system: jenkins.sh: Improve debian ...https://osmocom.org/issues/32292018-05-03T12:40:28Zpespin
<p>The idea is to add extra tests/checks to avoid breaking debian package building during nightly builds in OBS. Instead, let's catch it during gerrit patch submission time and don't allow merging it until it's fixed.</p>
<p>We should investigate several tools, like pbuilder, dpkg-build, etc. I recall lynxis also told me something about some kind of lint tool available for this purposes.</p> Cellular Network Infrastructure - Feature #3142 (New): Further simplification of "NITB like" setupshttps://osmocom.org/issues/31422018-04-05T20:09:38Zlaforge
<p>Running the post-NITB network is quite a lot more complex than the old code.</p>
<p>There are some ideas on how to make it simpler to run small, self-contained networks while removing some complexity</p>
<ul>
<li>I was also wondering if we should spend time on "MGW-less operation". In theory, you only need OsmoMGW if you have no IP-level routing between your Abis / A / core network [like any decent network operator for security reasons]. But then, if you run everything on one machine, and don't need/want transcoding, and have transparent routing between all components, we could do without the MGW.</li>
</ul>
<ul>
<li>stp-less operation should also be possible (but make configuration actually more complicated), as both the "ASP" (client) and "SG" (server) role are inside libosmo-sigtran, and hence the server could run inside the MSC without the need of an external stp (osmo-stp is just a thin wrapper with vty around libosmo-sigtran)</li>
</ul>
<p>Let's keep this as a reminder and create sub-tasks as ideas materialize more</p> OsmoSGSN - Bug #2958 (Stalled): OsmoSGSN doesn't authenticate on second/further ATTACH REQUESThttps://osmocom.org/issues/29582018-02-17T17:29:12Zlaforge
<p>When a new/unknown MS performs an ATTACH REQUEST for the first time, it is authenticated.</p>
<p>However, if that same MS later performs a second ATTACH REQUEST, even with new P-TMSI/TLLI, it is not authenticated and we simply send an ATTACH ACCEPT. This is a security problem, as it means anyone can impersonate other known-existing IMSIs.</p> OsmoMSC - Bug #2933 (New): change of trans->bearer_cap (e.g. via MNCC) will not trigger BSSMAP AS...https://osmocom.org/issues/29332018-02-12T11:36:39Zlaforge
<p>Whenever the trans->bearer_cap change (e.g.due to a CC MODIFY or MNCC MODIFY), the MSC must chck if the new bearer capabilities are different from the old bearer capabilities, and subsequently trigger a BSSMAP ASSIGNMENT towards the BSS.</p>
<p>Currently, the handling of bearer_cap will in only work if the related CC/MNCC message with <br />besrer_cap IE happens before the pint in time at which the MSC performs the BSSMAP ASSIGNMENT<br />procedure. Our logic still needs to change in a way that the CC/MNCC <br />code in gsm_04_08.c detects if trans->bearer_cap != new bearer_cap, and<br />in that case triggers a new follow-up BSSMAP ASSIGNMENT.</p> OsmoMSC - Bug #2928 (New): OsmoMSC doesn't do BSSMAP ASSIGNMENT if no MNCC_RTP_CREATE is receivedhttps://osmocom.org/issues/29282018-02-11T10:35:23Zlaforge
When operating OsmoMSC with external MNCC handler, it seems that it "forgets" to
<ul>
<li>perform BSSMAP ASSIGNMENT procedure</li>
<li>perform CRCX/MDCX on MGW endpoint for RAN side<br />if the eternal MNCC handler is not sending the MNCC_RTP_CREATE.</li>
</ul>
<p>This is wrong and indicates the state machines have some trouble.</p>
<p>The voice call should be established towards MS/RAN/MGW as usual, no matter if and when an external MNCC handler decides to actually connect to the MSC-located MGW. The MNCC_RTP_{CREATE,MODIFY} should only be translated to CRCX/MDCX of the mncc-side connection to OsmoMGW, and not anything on the RAN side.</p> OsmoMSC - Feature #1974 (New): VLR: high water mark on subscriber storagehttps://osmocom.org/issues/19742017-03-08T14:54:50Zneelsnhofmeyr@sysmocom.de
<p>In libvlr, we (will) keep every subscriber in RAM as long as it still has valid auth tuples (3GPP TS 33.102 Annex C.2.3).<br />Most subscribers will still have auth tuples left upon detaching, so we would store <strong>all</strong> subscribers.</p>
<p>Implement a configurable way of limiting the number of subscribers kept in RAM, e.g. a fixed max size.<br />If this is reached, discard those subscribers that have been inactive for the longest time first.</p> OsmoMSC - Feature #1973 (New): VLR: efficient subscriber lookuphttps://osmocom.org/issues/19732017-03-08T14:52:10Zneelsnhofmeyr@sysmocom.de
<p>In libvlr, we (will) keep every subscriber in RAM as long as it still has valid auth tuples (3GPP TS 33.102 Annex C.2.3).<br />Most subscribers will still have auth tuples left upon detaching, so we would store <strong>all</strong> subscribers.<br />Storing numerous subscribers in a linear list is inefficient, implement a hash table for faster access times.</p> OsmoBSC - Feature #1946 (New): Add checks to the BSC VTY to prevent configurations known to not workhttps://osmocom.org/issues/19462017-02-08T23:41:53Zneelsnhofmeyr@sysmocom.de
<p>e.g. running TCH/F_TCH/H_PDCH timeslots on a nanobts doesn't work,<br />similarly, the BS11 should reject any codec except HRv1, FR and EFR (i.e. no AMR),<br />and so on.</p> OsmoBTS - Feature #1755 (New): osmo-bts-sysmo L1: unify hLayer3 handlinghttps://osmocom.org/issues/17552016-06-16T11:27:40Zneelsnhofmeyr@sysmocom.de
<p>In <a class="external" href="https://gerrit.osmocom.org/264">https://gerrit.osmocom.org/264</a> , some hLayer3 use was added.<br />However, some of the messages were already using hLayer3.</p>
<p>After the patch, the prim_init() sets a hLayer3 which is overwritten<br />shortly after that, so the other functionality is not affected by this patch.</p>
<p>Some functions to generate hLayer3 for a timeslot and similar already existed,<br />and also to retrieve a timeslot and similar back from a hLayer3 handle.</p>
<p>And also, the other hLayer3 functions use a "magic" byte<br />(like the most significant byte always set to 0xbb).</p>
<p>So in fact, we should have rejected this patch, and we should follow up with<br />a merger of my hLayer3 to the existing hLayer3 infrastructure.<br />The priority is low though, since no harm is done.</p>
<p>See:</p>
<ul>
<li>osmo-bts/src/osmo-bts-sysmo/oml.c
<ul>
<li>mph_send_activate_req()</li>
<li>mph_send_config_logchpar()</li>
<li>mph_send_config_ciphering()</li>
<li>mph_send_deactivate_req()</li>
</ul></li>
</ul> Cellular Network Infrastructure - Bug #1612 (New): more configuration consistency checkinghttps://osmocom.org/issues/16122016-02-23T16:22:14Zlaforge
<p>Right now it is possible to configure various things that wouldn't work, like an ARFCN that is outside the band of the BTS, or even the TRX.</p>
<p>More consistency checks would make sense, together with reasonable error messages.</p> OsmoBTS - Feature #1576 (New): consider using hLayer2 as a pointer storagehttps://osmocom.org/issues/15762016-02-23T15:38:30Zlaforge
<p>This would speed up the l1if_hLayer_to_lchan lookup. Not sure if it's worth the extra risk.</p>