RM230N-GL always searching

I’ve purchased one of the following modules:
RM520N-GL 5G USB

I’ve followed the instructions of the ECM Dial-up in Raspberry Pi OS section:

  • Uninstall modemmanager and network-manager. With this, the output of lsusb includes:
Bus 002 Device 005: ID 2c7c:0801 Quectel Wireless Solutions Co., Ltd. RM520N-GL

And the output of usb-devices is:

T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480 MxCh= 1
D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=1d6b ProdID=0002 Rev=06.01
S:  Manufacturer=Linux 6.1.21-v7l+ xhci-hcd
S:  Product=xHCI Host Controller
S:  SerialNumber=0000:01:00.0
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I:  If#=0x0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=480 MxCh= 4
D:  Ver= 2.10 Cls=09(hub  ) Sub=00 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=2109 ProdID=3431 Rev=04.21
S:  Product=USB2.0 Hub
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=100mA
I:  If#=0x0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

T:  Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=5000 MxCh= 4
D:  Ver= 3.00 Cls=09(hub  ) Sub=00 Prot=03 MxPS= 9 #Cfgs=  1
P:  Vendor=1d6b ProdID=0003 Rev=06.01
S:  Manufacturer=Linux 6.1.21-v7l+ xhci-hcd
S:  Product=xHCI Host Controller
S:  SerialNumber=0000:01:00.0
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I:  If#=0x0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub

T:  Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  5 Spd=5000 MxCh= 0
D:  Ver= 3.20 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 9 #Cfgs=  1
P:  Vendor=2c7c ProdID=0801 Rev=05.04
S:  Manufacturer=Quectel
S:  Product=RM520N-GL
S:  SerialNumber=31f56428
C:  #Ifs= 6 Cfg#= 1 Atr=a0 MxPwr=896mA
I:  If#=0x0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=30 Driver=option
I:  If#=0x1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=40 Driver=option
I:  If#=0xa Alt= 0 #EPs= 1 Cls=02(commc) Sub=06 Prot=00 Driver=cdc_ether
I:  If#=0xb Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_ether
I:  If#=0x2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
I:  If#=0x3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option

As you can see, I’m using a Rasperry Pi, which is a model 4B with 8 GB of RAM and is using a 5A power supply, just in case (I’ve plugged both USB wires to the 2 USB 3.0 connectors of the Raspberry Pi).

  • I’ve switched to ECM mode using minicom on /dev/ttyUSB2 with:
AT+QCFG="usbnet",1
  • I’m forcing 5G since I know the card has 5G support (I’ve tested it previously with a smart phone, and I’ve disabled the SIM PIN just in case):
AT+QNWPREFCFG="nr5g_band"
  • I’ve configured the APN:
    AT+CGDCONT=1,“IPV4V6”,“telefonica.es”
  • I’ve forced a restart:
AT+CFUN=1,1

After a while, I can see the notifications of the modem once it starts again:

RDY

+CFUN: 1

+CPIN: READY

+QUSIM: 1

+QIND: SMS DONE

+QIND: PB DONE

However, it looks like it can’t find any compatible cell. I try to see what’s going on with:

AT+QENG="servingcell"

And the answer is always:

+QENG: "servingcell","SEARCH"

I’ve also checked whether it was trying to register to the network with:

AT+C5GREG?

And the response is always:

+C5GREG: 0,2

If I follow the instructions of the initial website and launch udhcpd for this interface at this point:

sudo udhcpc -i usb0

I get an IP address from the network 192.168.225.0/24, apparently generated by the cdc_ether driver. Although I’m not an expert on CDC, I guess the driver has generated a virtual ethernet interface probably on top of /dev/ttyUSB3, and will retain this IP address until the modem can actually connect to the network. After that, the lease will probably expire and the new “final” IP address will be generated by the DHCP server of the ISP (usually a 10.x.y.z/8 address).

So my question here is, how can I check what’s going on? I don’t think there’s a power issue and I can confirm the SIM card works. I can also tell that I have 5G connectivity here and the 4 antennas are connected, so that shouldn’t be a problem either.

Regards

I will answer the question why it get the local IP like 192.168.225.X.
Even it is not registerred or even without the SIM card, it it is in ECM mode, you will get the local IP by default.
If you want to get the public IP, it is better to try the modem in RMNET or MBIM mode.
AT+QCFG=“usbnet”,0 // RMNET mode , the driver is qmi_wwan_q
AT+QCFG=“usbnet”,2 // MBIM mode, the driver is cdc_mbim

In both RMNET and MBIM mode, you need the quectel-CM to set up data connection.

If you insist on ECM mode, you need the IPPT releted command, it is complicated. And the current problem is that it is not registerred in 5G network.

For why it is not registerred in 5G, I think you need to check
Whether there is 5G cell and whether the antenna is connected first.

Let me start from the end, am I going to get the IP offered by the ISP once the connection is established as shown in the example of the website I mentioned? If that’s the case, it’s enough for me.

And regarding the registration problem, is there any way to enable some sort of additional debug? Maybe by sending a custom AT command? According to the documentation included about the usage of each tty port generated, /dev/ttyUSB0 is the DIAG Port for output developing message (maybe the modem flushes debug information through this serial port).

Regards

For the ip address, I think the rmnet and mbim is for what you want.

For the registration problem,