Full band scan network quality

Hello

Currently I am working on an EP06-E modue connected via USB on linux. I want to do full network scan, to where I scan on different LTE bands the signal strength and quality (RSRP and RSRQ). This is because I have a SIM card that can access any 4G network. I tried to find the correct AT commands for this, however I found only the AT+QENG=“neighbourcell” and “servingcell”. Furthermore with AT+COPS=? I can see what networks are available but not the quality of these networks.

I tried with MBIM cli and QMI cli tools to communicate with the modem as well. Most promising command was with MBIM CLI:

sudo mbimcli -p -d /dev/cdc-wdm0 --query-visible-providers               
	Provider [0]:
		    Provider ID: '20416'
		  Provider name: 'T-Mobile-NL'
		          State: 'preferred, visible, registered'
		 Cellular class: 'gsm'
		           RSSI: '99'
		     Error rate: '99'
	Provider [1]:
		    Provider ID: '20404'
		  Provider name: 'vodafone NL'
		          State: 'visible'
		 Cellular class: 'gsm'
		           RSSI: '99'
		     Error rate: '99'

However I still miss the frequency input. Now I am not familiar with this topic to much, so I have some troubles understanding these principles. I saw that in Android phones you can do exactly what I want namely: NetworkScanRequest  |  Android Developers .

After some debugging I even found a radio log, which shows exactly this:

logcat_text_threadtime05-04 15:27:15.921  1228  1409 D RILJ    : [UNSL]< RIL_UNSOL_NETWORK_SCAN_RESULT {
scanStatus=1, scanError=0, networkInfos=
	[
CellInfoLte:{	mRegistered=YES 
					mTimeStamp=690338432720846ns 
					mCellConnectionStatus=0 
					CellIdentityLte:{ mCi=373 mPci=229 mTac=12 mEarfcn=6400 mBands=[] mBandwidth=0 mMcc=262 mMnc=01 mAlphaLong=Telekom.de mAlphaShort=TDG mAdditionalPlmns={} mCsgInfo=null} 
					CellSignalStrengthLte: rssi=-69 rsrp=-94 rsrq=-7 rssnr=8 cqi=0 ta=0 level=3 parametersUseForLevel=1 
					android.telephony.CellConfigLte :{ isEndcAvailable = false }
				}, 
	CellInfoLte:{	mRegistered=NO 
					mTimeStamp=690338432720846ns 
					mCellConnectionStatus=0 
					CellIdentityLte:{ mCi=162 mPci=325 mTac=30 mEarfcn=6200 mBands=[] mBandwidth=0 mMcc=262 mMnc=03 mAlphaLong=o2 - de mAlphaShort=o2 - de mAdditionalPlmns={} mCsgInfo=null} 
					CellSignalStrengthLte: rssi=-73 rsrp=-100 rsrq=-10 rssnr=2 cqi=0 ta=0 level=2 parametersUseForLevel=1 
					android.telephony.CellConfigLte :{ isEndcAvailable = false }
				}, 
	CellInfoLte:{	mRegistered=NO 
					mTimeStamp=690338432720846ns 
					mCellConnectionStatus=0 
					CellIdentityLte:{ mCi=133 mPci=319 mTac=42 mEarfcn=6300 mBands=[] mBandwidth=0 mMcc=262 mMnc=02 mAlphaLong=vodafone.de mAlphaShort=vodafone.de mAdditionalPlmns={} mCsgInfo=null} 
					CellSignalStrengthLte: rssi=-75 rsrp=-98 rsrq=-6 rssnr=9 cqi=0 ta=0 level=2 parametersUseForLevel=1 
					android.telephony.CellConfigLte :{ isEndcAvailable = false }
				},

Note that on android this scan can be done in the background, while still being connected and exchange packets (it does not stall the device!)

The question is: Is it possible to scan in the same manner as android can do with the current EP06-E modem? and if it is how would I do this?

If this is not possible, does Quectel have modems that can do this?

Kind regards,
John Hendriks