https://projects.osmocom.org/https://projects.osmocom.org/favicon.ico?16647414092023-05-08T04:01:48ZOpen Source Mobile CommunicationsOsmoBTS - Feature #5781: NCH support in osmo-btshttps://projects.osmocom.org/issues/5781?journal_id=268492023-05-08T04:01:48Zlaforge
<ul></ul><p>actually, the NCH is part of the normal Downlink CCCH, so no additional SDCCH is occupied.</p>
<p>Relevant quotes from TS 45.002:</p>
<blockquote>
<p><strong>3.3.3.1 iv)</strong>: Notification channel (NCH): Downlink only, used to notify mobile stations of voice group and voice broadcast calls.</p>
</blockquote>
<blockquote>
<p><strong>6.4.1 NOTE 0</strong>: CCCH = PCH+ RACH + AGCH + NCH.</p>
</blockquote>
<blockquote>
<p><strong>6.3.1.3 ii)</strong>: System Information Type 1 needs to be sent if frequency hopping is in use or when the NCH is present in a cell.</p>
</blockquote>
<blockquote>
<p>The PCH, AGCH, NCH and BCCH Ext may share the same TDMA frame mapping (considered modulo 51) when combined onto a basic physical channel. The channels are shared on a block by block basis, and information within each block, when de-interleaved and decoded allows a mobile to determine whether the block contains paging messages, notification message, system information messages or access grants. However, to ensure a mobile satisfactory access to the system a variable number of the available blocks in each 51-multiframe can be reserved for access grants and system information messages, only. The number of blocks not used for paging (BS_AG_BLKS_RES) starting from, and including block number 0 is broadcast in the BCCH (see subclause 3.3.2). As above the number of paging blocks per 51-multiframe considered to be "available" shall be reduced by the number of blocks reserved for access grant messages.</p>
</blockquote>
<blockquote>
<p><strong>6.5.1 vii)</strong> An MS which has its membership of at least one voice group or voice broadcast call group set to the active state shall, in addition to monitoring the paging blocks as described above, monitor the notification channel, NCH. This logical channel is always mapped onto contiguous blocks reserved for access grants, in a position and number as given by the parameter NCP, defined in 3GPP TS 44.018, broadcast on the BCCH. The channel may be present when a cell supports voice group or voice broadcast calls. The coding of the various structural parameters described above in this subclause is not changed. Information within a block, when deinterleaved and decoded, allows the MS to determine whether the block contains access grant messages or notification messages.</p>
</blockquote>
<blockquote>
<p><strong>6.5.5</strong>: When mobile stations are to be alerted on a voice group or voice broadcast call, notification messages shall be sent on the notification channel (NCH), using the blocks defined in subclause 6.5.1.<br />When the NCH is in use, the parameter BS_AG_BLKS_RES shall be set to a value not lower than the number of blocks used for the NCH, see subclause 6.5.1 vii) [above].</p>
</blockquote> OsmoBTS - Feature #5781: NCH support in osmo-btshttps://projects.osmocom.org/issues/5781?journal_id=268502023-05-08T04:08:39Zlaforge
<ul></ul><p>The detailed position of the NCH within the downlink CCCH is encoded in the <em>SI1 Rest Octets</em>, as described in TS 44.018 Table 10.5.2.32.1b:</p>
<blockquote>
<p>NCH Position on the CCCH<br />The values in the NCH Position field indicates the block number of the CCCH block which is used for the first NCH block and the number of blocks used for the NCH. (The block numbering corresponds to table 5 in clause 7 of 3GPP TS 45.002)<br />The absence of the NCH position field indicates that there is no NCH in the cell/on the carrying CCCH slot<br />The following coding applies if 1 or more basic physical channels are used for CCCH, not combined with SDCCHs.</p>
</blockquote>
<table>
<tr>
<th>Value</th>
<th>No of blocks</th>
<th>Number of first block</th>
</tr>
<tr>
<td>0 0 0 0 0</td>
<td>1</td>
<td>0</td>
</tr>
<tr>
<td>0 0 0 0 1</td>
<td>1</td>
<td>1</td>
</tr>
<tr>
<td>0 0 0 1 0</td>
<td>1</td>
<td>2</td>
</tr>
<tr>
<td>0 0 0 1 1</td>
<td>1</td>
<td>3</td>
</tr>
<tr>
<td>0 0 1 0 0</td>
<td>1</td>
<td>4</td>
</tr>
<tr>
<td>0 0 1 0 1</td>
<td>1</td>
<td>5</td>
</tr>
<tr>
<td>0 0 1 1 0</td>
<td>1</td>
<td>6</td>
</tr>
<tr>
<td>0 0 1 1 1</td>
<td>2</td>
<td>0</td>
</tr>
<tr>
<td>0 1 0 0 0</td>
<td>2</td>
<td>1</td>
</tr>
<tr>
<td>0 1 0 0 1</td>
<td>2</td>
<td>2</td>
</tr>
<tr>
<td>0 1 0 1 0</td>
<td>2</td>
<td>3</td>
</tr>
<tr>
<td>0 1 0 1 1</td>
<td>2</td>
<td>4</td>
</tr>
<tr>
<td>0 1 1 0 0</td>
<td>2</td>
<td>5</td>
</tr>
<tr>
<td>0 1 1 0 1</td>
<td>3</td>
<td>0</td>
</tr>
<tr>
<td>0 1 1 1 0</td>
<td>3</td>
<td>1</td>
</tr>
<tr>
<td>0 1 1 1 1</td>
<td>3</td>
<td>2</td>
</tr>
<tr>
<td>1 0 0 0 0</td>
<td>3</td>
<td>3</td>
</tr>
<tr>
<td>1 0 0 0 1</td>
<td>3</td>
<td>4</td>
</tr>
<tr>
<td>1 0 0 1 0</td>
<td>4</td>
<td>0</td>
</tr>
<tr>
<td>1 0 0 1 1</td>
<td>4</td>
<td>1</td>
</tr>
<tr>
<td>1 0 1 0 0</td>
<td>4</td>
<td>2</td>
</tr>
<tr>
<td>1 0 1 0 1</td>
<td>4</td>
<td>3</td>
</tr>
<tr>
<td>1 0 1 1 0</td>
<td>5</td>
<td>0</td>
</tr>
<tr>
<td>1 0 1 1 1</td>
<td>5</td>
<td>1</td>
</tr>
<tr>
<td>1 1 0 0 0</td>
<td>5</td>
<td>2</td>
</tr>
<tr>
<td>1 1 0 0 1</td>
<td>6</td>
<td>0</td>
</tr>
<tr>
<td>1 1 0 1 0</td>
<td>6</td>
<td>1</td>
</tr>
<tr>
<td>1 1 0 1 1</td>
<td>7</td>
<td>0</td>
</tr>
</table>
<blockquote>
<p>Other values are reserved for future use. A mobile station receiving a reserved value shall behave as if the NCH position was not present<br />In the case the CCCH configuration is not compatible with the NCH position (e.g., <strong>CCCH with combined SDCCH and the value different from 00000, 00001 or 00111</strong>), the mobile station shall behave as if the NCH Position field was not present.</p>
</blockquote> OsmoBTS - Feature #5781: NCH support in osmo-btshttps://projects.osmocom.org/issues/5781?journal_id=268542023-05-08T08:56:22Zlaforge
<ul><li><strong>Status</strong> changed from <i>New</i> to <i>In Progress</i></li><li><strong>Assignee</strong> set to <i>laforge</i></li><li><strong>% Done</strong> changed from <i>0</i> to <i>10</i></li></ul><p>In general, it turns out that we don't even actually need a NCH. It seems entirely optional.</p>
<p>In absence of a NCH, the related notification messages are sent via PCH (P1 rest octets).</p>
<p>In any case, let's implement basic NCH suport so we can test sending notification messages both via NCH and via PCH.</p>
<p>There's also a path to send notification via FACCH to those MS that are currently in a dedicated call. This has to be implemented in the BSC, though.</p> OsmoBTS - Feature #5781: NCH support in osmo-btshttps://projects.osmocom.org/issues/5781?journal_id=270222023-06-02T18:55:34Zfixeria
<ul></ul><p>I am seeing error messages like this one:</p>
<pre>
DNM ERROR osmo_bsc_main.c:399 (bts=0) CCCH is combined with SDCCHs, but NCH position/size is incompatible with that. Please fix your config!
</pre>
<p>since this commit was merged:</p>
<p><a class="external" href="https://gerrit.osmocom.org/q/Iefde0af44a663f22462a54d68a58caa560eceb2f">https://gerrit.osmocom.org/q/Iefde0af44a663f22462a54d68a58caa560eceb2f</a></p>
<pre>
commit 8798689f3bc737c1f1d2da58803673a05291ee72
Author: Harald Welte <laforge@osmocom.org>
Date: Mon May 8 06:59:55 2023 +0200
Support (optional) indication of NCH position in SI1 rest octets
</pre>
<p>The problem is that my config file contains no NCH position/size configuration at all...</p> OsmoBTS - Feature #5781: NCH support in osmo-btshttps://projects.osmocom.org/issues/5781?journal_id=270382023-06-06T16:44:11Zlaforge
<ul><li><strong>Assignee</strong> changed from <i>laforge</i> to <i>jolly</i></li></ul> OsmoBTS - Feature #5781: NCH support in osmo-btshttps://projects.osmocom.org/issues/5781?journal_id=277522023-09-01T12:14:03Zfixeria
<ul></ul><p>fixeria wrote in <a href="#note-5">#note-5</a>:</p>
<blockquote>
<p>I am seeing error messages like this one: [...]</p>
</blockquote>
<p>The bogus error message has been fixed by this patch:</p>
<pre>
commit 6153c619fcf5f7b31edb6cc49cb3f1331e011ac3
Author: Harald Welte <laforge@osmocom.org>
Date: Wed Jun 21 11:46:15 2023 +0200
prevent bogus NCH related error message if no NCH is configured
</pre> OsmoBTS - Feature #5781: NCH support in osmo-btshttps://projects.osmocom.org/issues/5781?journal_id=278022023-09-07T08:58:19Zlaforge
<ul></ul><p>why is the status at in progress / 10%? Isn't NCH fully working already?</p> OsmoBTS - Feature #5781: NCH support in osmo-btshttps://projects.osmocom.org/issues/5781?journal_id=278232023-09-08T09:46:09Zjolly
<ul><li><strong>Status</strong> changed from <i>In Progress</i> to <i>Closed</i></li></ul><p>NCH (including NLN for reduced NCH monitoring) is completely implemented.</p> OsmoBTS - Feature #5781: NCH support in osmo-btshttps://projects.osmocom.org/issues/5781?journal_id=278272023-09-08T10:07:09Zjolly
<ul><li><strong>% Done</strong> changed from <i>10</i> to <i>100</i></li></ul>