Skip to content

COTS UE setup

Deciding which phone you'll use is probably the most import decision you'll make. The srsRAN project maintains a compatibility table on their documentation.

SIM cards

The SIM cards user are made by osmocom so we used their tool to flash new identities to the cards.

git clone https://github.com/osmocom/pysim
cd pysim
sudo apt-get install --no-install-recommends \
    pcscd libpcsclite-dev \
    python3 \
    python3-setuptools \
    python3-pyscard \
    python3-pip
pip3 install -r requirements.txt

The values in the card used in our testing was flashed using the following command (note: the -a part is your ADM-KEY and it will differ from ours)

./pySim-prog.py -p0 -s 8988211000000689615 --mcc=001 --mnc=01 -a 77190612 --imsi=001010123456789  -k 41B7157E3337F0ADD8DA89210D89E17F --opc=1CD638FC96E02EBD35AA0D41EB6F812F

We also had a seconf simcard with the following configuration

imsi: 901700000028080
k: 724d0f31f2259622700437430b7b5c6e
opc: 1140620b2805d84b44643bfcfbe6218c

Troubleshooting

  • Some devices seem to block some PLMN IDs so testing different ones may be a good idea. Just be careful not to break any laws.
  • Sometimes, the phone will randomly decide they can't find the network anymore. Restarting the device and removing the SIM card may help. Using the same SIM in a different phone may also solve the issue.
  • In some rare instances, we observed through wireshark that our test phone decided to join a slice on its own. This can cause the phone to be rejected by the core. If this happens, make sure that you don't have anyother configurations that may interfere; if so, add that slice to your core.
  • In all setups described in this website, you will need to manually create an access point configuration on your device. Failing that will not allow the UE to connect to the network.
  • Some apps may allow you to set an android phone to 5G-only mode. This will prevent your phone from connecting to other networks if your lab is in a 4G-only zone.