How to test 4G / 5G signal with an Android Phone
Use Android hidden dial code
You can use hidden dial codes to get more control and information.
- Open the phone menu and dial the following code: *#*#4636#*#*
- (you can try putting the phone in landscape mode to better read)
- Select Cell Info Refresh Rate to "Immediate"
- Select LTE only or NR only depending on what you are testing
Here are some important values you may see in this menu (scroll down at the bott:
- RSRP (Reference Signal Received Power): Mean value received by UE from Base Station
- RSRQ (Reference Signal Receiver Quality): Signal quality as measured by UE
- SINR (Signal to Interference & Noise Ratio): Ratio between signal and ambient noise
- SRV: Serving status
- R (REGISTRATED): The UE has registrated to the cell
- P (PRIMARY_SERVING): The cell is the primary cell serving the UE
- S: SECONDARY_SERVING: The cell is the secondary cell serving the UE (ressources can be split up between primary and secondary)
- N: CONNECTION_NONE: The cell is not serving the UE currently
- PCI (Physical Cell ID): This can be used to identify which base station you are connecting to
Use Network Cell Lite Info
You can also use the "Network Cell Lite Info" app from the playstore, but it may not work on all phones.
The important tabs are "Gauge" and "Raw"
LTE & 5G signal strength reference table
You may use this table to analyze the different values indicated by your phone
RF Experience |
RSRP (dBm) |
RSRQ (dB) |
SINR (dB)
|
Excellent |
>= -80 |
>= -10 |
>= 20 |
Good |
-80 to -90 |
-10 to -15 |
13 to 20 |
Mid Cell |
-90 to -100 |
-15 to -20 |
0 to 13 |
Cell Edge |
<= -100 |
<= -20 |
<= 0 |
Iperf3 test
You should not use tools such as speedtest.net as they involve external servers from the internet, you should do only local speedtests between the UE and the core network.
We recommand using the "Magic Iperf" app to make iperf3 tests, you can find the APK on internet (it is not available in play store anymore)
First make sure the iperf3 server parameter is enabled on the core network service on the panel, then select "iperf3" on the app and type the iperf3 command using this parameters:
- -c ORS_IP: Mandatory, to get this IP you can go to settings -> About phone -> IP address, and replace the last digit with a "1" (For instance if you see 172.24.128.2 then the ORS IP is 172.24.128.1)
- -p : Port, choose 5201 if you are using the core network from the panel
- -u : Switch to UDP mode (we recommand trying this mode if you have bad connection with TCP mode)
- -b : For UDP mode only, choose the bandwidth (example: 10M for 10 Mbps)
- -t : Test duration in seconds
- -i : Internval, you can set to 1
- -R : Use for downlink tests, default is uplink test
Example: -u -c 172.19.0.1 -b 120M -p 5201 -t 10 -i 1 -R (downlink UDP test, 100 Mbps, 10 seconds)
Ping test
You can install an app such as Termux to make ping tests
Handover Test
Here are various things you may do for a handover test:
- We recommand running a continous ping for the whole duration of your test so that your phone doesn't go in Idle mode.
- Test that your phone is connected to the nearest base station by checking the PCI of the serving cell.
- Check the serving cell switches when walking from one base station to another.
- Do an iperf3 TCP test and check that the TCP connection survives switching from one cell to another.
- Do a video conferencing call using the ORS local video-conferencing server ( https://handbook.rapid.space/ors/rapidspace-HowTo.Use.MCPTT.With.ORS )
- Check the RSRP / RSRQ / SINR value while walking between cells, make sure their evolution is coherent