<p style="white-space: pre-wrap; word-wrap: break-word;">this is a good start.  However, beyond the specific comments below, I think there are the following missing parts:</p><ul><li>"If an MS has not signalled a Repeated ACCH Capability bit as '1' the BSS may only use Repeated</li><li>Downlink FACCH to send command frames."  So we need to look at that "Repeated ACCH capability bit" of the MS and only consider LAPDm commands (based on C/R bit of the LAPDm header) by default as "eligible" for our "history of 2 lapdm frames queue".</li></ul><ul><li>the decision on when to repeate FACCH is a dynamic one.  Enablign it globally in the VTY doesn't make much sense beyond testing.  Thre needs to be some kind of "implementatoon-based criteria" that enables/disables repeated FACCH.  I would guess a vty-configurable RxQual threshold would be a good idea.  If the reported downlink link quality (as per UL meas rep) is below that threshold, enable repeated FACCH for this logical channel.  If not, disable it.</li></ul><ul><li>T200 impact.  As stated, whenever we enable the FACCH retransmission, we must increase the T200 dynamically.  My assumption is that we scale the T200 value of this given lchan by a factor of 2 while repeated FACCH is active, and then remove that scaling when repeated FACCH is disabled again.</li></ul><p><a href="https://gerrit.osmocom.org/c/osmo-bts/+/21014">View Change</a></p><p>3 comments:</p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0;"><p><a href="https://gerrit.osmocom.org/c/osmo-bts/+/21014/1/include/osmo-bts/gsm_data.h">File include/osmo-bts/gsm_data.h:</a></p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/osmo-bts/+/21014/1/include/osmo-bts/gsm_data.h@261">Patch Set #1, Line 261:</a> </p><p><blockquote style="border-left: 1px solid #aaa; margin: 10px 0; padding: 0 10px;"><pre style="font-family: monospace,monospace; white-space: pre-wrap;">/* SLOT #1 */<br>                     struct msgb *msg_1;<br>                   uint32_t fn_1;<br><br>                      /* SLOT #2 */<br>                 struct msgb *msg_2;<br>                   uint32_t fn_2;<br></pre></blockquote></p><p style="white-space: pre-wrap; word-wrap: break-word;">why not have an array[2] of a structure?</p></li></ul></li><li style="margin: 0; padding: 0;"><p><a href="https://gerrit.osmocom.org/c/osmo-bts/+/21014/1/src/common/l1sap.c">File src/common/l1sap.c:</a></p><ul style="list-style: none; padding: 0;"><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/osmo-bts/+/21014/1/src/common/l1sap.c@925">Patch Set #1, Line 925:</a> <code style="font-family:monospace,monospace"><= fn</code></p><p style="white-space: pre-wrap; word-wrap: break-word;">why <=8 ?  The spec says "M+8 or M+9 (in case of SACCH or IDLE)".  So there is exactly one frame number at which the FACCH is to be repeated.  I would hope there also is a better way to trigger than to use this 8/9 count, but to look at the logical block numbers within the 26-multiframe?</p></li><li style="margin: 0; padding: 0 0 0 16px;"><p style="margin-bottom: 4px;"><a href="https://gerrit.osmocom.org/c/osmo-bts/+/21014/1/src/common/l1sap.c@947">Patch Set #1, Line 947:</a> <code style="font-family:monospace,monospace">for TCH/H only one</code></p><p style="white-space: pre-wrap; word-wrap: break-word;">what do you mean by 'instances' here?  Which part in Osmo-BTS is ensuring this never happens?  If this could happen by the BSC (or whatever talks Abis to us) sends more FACCH messages in a given time interval, then we should not assert here.</p></li></ul></li></ul><p>To view, visit <a href="https://gerrit.osmocom.org/c/osmo-bts/+/21014">change 21014</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/c/osmo-bts/+/21014"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-bts </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: I72f0cf7eaaef9f80fc35e752c90ae0e2d24d0c75 </div>
<div style="display:none"> Gerrit-Change-Number: 21014 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: dexter <pmaier@sysmocom.de> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder </div>
<div style="display:none"> Gerrit-CC: laforge <laforge@osmocom.org> </div>
<div style="display:none"> Gerrit-Comment-Date: Mon, 02 Nov 2020 08:54:33 +0000 </div>
<div style="display:none"> Gerrit-HasComments: Yes </div>
<div style="display:none"> Gerrit-Has-Labels: No </div>
<div style="display:none"> Gerrit-MessageType: comment </div>