Dear Sir,
I have tested and verified on several phones. This is a BUG.
The trouble is that 1800 MHz transmission is identified as 1900 MHz and vice versa for
common ARFCNs. This is the opposite for the design, explained below.
https://www.3gpp.org/ftp/Specs/archive/05_series/05.05/0505-8k0.zip
A multi-band MS shall interpret ARFCN numbers 512 to 810 as either DCS 1800 or PCS 1900
frequencies according to the parameter BAND_INDICATOR when received in other than the DCS
1800 or PCS 1900 bands. If received in the DCS 1800 or PCS 1900 bands, those ARFCN numbers
shall be interpreted as frequencies in the same band. The BAND_INDICATOR is broadcast on
BCCH, PBCCH and SACCH. The most recently received value shall be applied by the mobile
station. If the parameter is not broadcast, the default value is DCS 1800 frequencies.
BAND_INDICATOR (1 bit field)
See 3GPP TS 05.05 for definition of this field, which is coded as follows:
0 ARFCN indicates 1800 band
1 ARFCN indicates 1900 band
Pau Espin Pedrol <pespin(a)sysmocom.de>de>, 29 Nisan 2025 Salı saat 13:10 tarihinde şunu
yazdı:
Hi,
I fail to see what's wrong according to you:
"""
static int is_dcs_net(const struct gsm_bts *bts)
{
if (bts->band == GSM_BAND_850)
return 0;
if (bts->band == GSM_BAND_1900)
return 0;
return 1;
}
"""
"""
osmo_gsm48_rest_octets_si1_encode(si1->rest_octets, NULL, is_dcs_net(bts));
"""
"""
int osmo_gsm48_rest_octets_si1_encode(uint8_t *data, uint8_t *nch_pos,
int is1800_net)
{
...
if (is1800_net)
bitvec_set_bit(&bv, L);
else
bitvec_set_bit(&bv, H);
}
"""
Do you mind explaining the case in which we end up encoding a wrong value?
Also probably better use redmine to fill a bug report if you think there
may be one.
Regards,
Pau
--
- Pau Espin Pedrol pespin(a)sysmocom.de
http://www.sysmocom.de/
=======================================================================
* sysmocom - systems for mobile communications GmbH
* Siemensstr. 26a
* 10551 Berlin, Germany
* Sitz / Registered office: Berlin, HRB 134158 B
* Geschaeftsfuehrer / Managing Director: Harald Welte