RM500Q-AE latest linux drivers and installation manual

Okay I did this and a minicom terminal opened. I typed the first AT command and pressed Enter and there is not output

Show the output of ls -l /dev/ttyUSB*

pi# ls -l /dev/ttyUSB*
crw-rw---- 1 root dialout 188, 0 Jun 16 10:32 /dev/ttyUSB0
crw-rw---- 1 root dialout 188, 1 Jun 16 12:05 /dev/ttyUSB1
crw-rw---- 1 root dialout 188, 2 Jun 16 12:48 /dev/ttyUSB2
crw-rw---- 1 root dialout 188, 3 Jun 16 11:59 /dev/ttyUSB3
crw-rw---- 1 root dialout 188, 4 Jun 16 11:59 /dev/ttyUSB4
crw-rw---- 1 root dialout 188, 5 Jun 16 11:59 /dev/ttyUSB5
crw-rw---- 1 root dialout 188, 6 Jun 16 11:59 /dev/ttyUSB6

It looks like you have other devices, so you need to adjust the port number as I mentioned already twice.
Your AT port is probably /dev/ttyUSB5 now.

sorry. you are right its USB5. both the above mentioned AT commands give output OK

That looks wrong as both commands should provide some meaningful output.
Try a standard command ATI

Welcome to minicom 2.7

OPTIONS: I18n
Compiled on Apr 22 2017, 09:14:19.
Port /dev/ttyUSB5, 13:31:44

Press CTRL-A Z for help on special keys

AT+QCFG="usbnet"AT+QCFG=“usbnet”

+QCFG: “usbnet”,0

OK

AT+QCFG="data_interface"AT+QCFG=“data_interface”

+QCFG: “data_interface”,0,0

OK

AATTII

Quectel
RM500Q-GL
Revision: RM500QGLABR11A03M4G

OK

Turn the echo off in the terminal settings. Then

At the end you will need to run cat /sys/kernel/debug/usb/devices and see what is assigned to last interface of the modem.

This is the output now:

T: Bus=01 Lev=02 Prnt=02 Port=02 Cnt=03 Dev#= 21 Spd=480 MxCh= 0
D: Ver= 2.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=2c7c ProdID=0800 Rev= 4.14
S: Manufacturer=Quectel
S: Product=RM500Q-GL
S: SerialNumber=8f92d1b6
C:* #Ifs= 6 Cfg#= 1 Atr=a0 MxPwr=500mA
A: FirstIf#= 4 IfCount= 2 Cls=02(comm.) Sub=0e Prot=00
I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=30 Driver=option
E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E: Ad=83(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E: Ad=85(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
E: Ad=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E: Ad=87(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
E: Ad=86(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 4 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=0e Prot=00 Driver=option
E: Ad=88(I) Atr=03(Int.) MxPS= 64 Ivl=32ms
I:* If#= 5 Alt= 0 #EPs= 0 Cls=0a(data ) Sub=00 Prot=02 Driver=option
I: If#= 5 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=02 Driver=option
E: Ad=8e(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=0f(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms

reboot, then run as root
modprobe cdc_mbim
then repeat what you did for option driver and finally re-check with cat /sys/kernel/debug/usb/devices

so now in the above command, option1 will be replaced by cdc_mbim right?

No. You need to do this for option only and only after mbim driver is loaded.

T: Bus=01 Lev=02 Prnt=02 Port=02 Cnt=03 Dev#= 16 Spd=480 MxCh= 0
D: Ver= 2.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=2c7c ProdID=0800 Rev= 4.14
S: Manufacturer=Quectel
S: Product=RM500Q-GL
S: SerialNumber=8f92d1b6
C:* #Ifs= 6 Cfg#= 1 Atr=a0 MxPwr=500mA
A: FirstIf#= 4 IfCount= 2 Cls=02(comm.) Sub=0e Prot=00
I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=30 Driver=option
E: Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 1 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E: Ad=83(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
E: Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 2 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E: Ad=85(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
E: Ad=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 3 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E: Ad=87(I) Atr=03(Int.) MxPS= 10 Ivl=32ms
E: Ad=86(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 4 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=0e Prot=00 Driver=cdc_mbim
E: Ad=88(I) Atr=03(Int.) MxPS= 64 Ivl=32ms
I: If#= 5 Alt= 0 #EPs= 0 Cls=0a(data ) Sub=00 Prot=02 Driver=cdc_mbim
I:* If#= 5 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=02 Driver=cdc_mbim
E: Ad=8e(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E: Ad=0f(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms

ModemManager is now detecting the modem!! The GSM connection up command is still showing, Error: Connection activation failed: no suitable device found for this connection

Everything looks good and now you can use for example mbim-network to establish the Internet connection, example is here.

I am following the instructions here for setting up the internet connection.

You can now execute the mbim-set-ip script (download found bellow related to this FAQ) with sufficient system privileges:
./mbim-set-ip /dev/cdc-wdm0 wwan0

For the step above, i need to download a ip setup script, but for that I need to register on this website. Do u know if this script is available anywhere?

No, but I would try using DHCP and see if it works.

I am getting this error:

root@RevPi45698:~# ping 8.8.8.8
connect: Network is unreachable

Here are some outputs for your reference:

root@RevPi45698:/home/pi# mbimcli --device=/dev/cdc-wdm0 --device-open-proxy --query-device-caps
[/dev/cdc-wdm0] Device capabilities retrieved:
Device type: ‘embedded’
Cellular class: ‘gsm’
Voice class: ‘no-voice’
Sim class: ‘removable’
Data class: ‘umts, hsdpa, hsupa, lte, custom’
SMS caps: ‘pdu-receive, pdu-send’
Ctrl caps: ‘reg-manual’
Max sessions: ‘15’
Custom data class: ‘5G/TDS’
Device ID: ‘863305040277955’
Firmware info: ‘RM500QGLABR11A03M4G’
Hardware info: ‘RM500QGL_VH’

root@RevPi45698:/home/pi# mbim=network /dev/cdc-wdm0 start
bash: /dev/cdc-wdm0: Permission denied
root@RevPi45698:/home/pi# mbim-network /dev/cdc-wdm0 start
/usr/bin/mbim-network: 138: /usr/bin/mbim-network: [[: not found
/usr/bin/mbim-network: 138: /usr/bin/mbim-network: [[: not found
Loading profile at /etc/mbim-network.conf…
APN: unset
APN auth protocol: unset
APN user: unset
APN password: unset
mbim-proxy: yes
Querying subscriber ready status ‘mbimcli -d /dev/cdc-wdm0 --query-subscriber-ready-status --no-close --device-open-proxy’…
[/dev/cdc-wdm0] Subscriber ready status retrieved: Ready state: ‘initialized’ Subscriber ID: ‘999400000256440’ SIM ICCID: ‘8900099100002144403F’ Ready info: ‘none’ Telephone numbers: (0) ‘unknown’ [/dev/cdc-wdm0] Session not closed: TRID: ‘4’
Saving state at /tmp/mbim-network-state-cdc-wdm0… (TRID: 4)
Querying registration state ‘mbimcli -d /dev/cdc-wdm0 --query-registration-state --no-open=4 --no-close --device-open-proxy’…
[/dev/cdc-wdm0] Registration status: Network error: ‘unknown’ Register state: ‘home’ Register mode: ‘automatic’ Available data classes: ‘custom’ Current cellular class: ‘gsm’ Provider ID: ‘99940’ Provider name: ‘DA’ Roaming text: ‘unknown’ Registration flags: ‘packet-service-automatic-attach’ [/dev/cdc-wdm0] Session not closed: TRID: ‘6’
Saving state at /tmp/mbim-network-state-cdc-wdm0… (TRID: 6)
Attaching to packet service with ‘mbimcli -d /dev/cdc-wdm0 --attach-packet-service --no-open=6 --no-close --device-open-proxy’…
Saving state at /tmp/mbim-network-state-cdc-wdm0… (TRID: 8)
Starting network with ‘mbimcli -d /dev/cdc-wdm0 --connect=apn=’’ --no-open=8 --no-close --device-open-proxy’…
Network started successfully
Saving state at /tmp/mbim-network-state-cdc-wdm0… (TRID: 11)

root@RevPi45698:/home/pi/Documents# ./mbim-set-ip.sh /dev/cdc-wdm0 wwan0
Requesting IPv4 and IPv6 information through mbimcli proxy:
error: couldn’t get IP configuration response message: ContextNotActivated
error: couldn’t get IP configuration response message: ContextNotActivated
Applying the following network interface configurations:
ip link set wwan0 down
ip addr flush dev wwan0
ip -6 addr flush dev wwan0
ip link set wwan0 up
Network interface configurations completed.

root@RevPi45698:/home/pi/Documents# ifconfig -a
wwan0: flags=4291<UP,BROADCAST,RUNNING,NOARP,MULTICAST> mtu 1500
inet6 fe80::a0aa:a6ff:fe73:70d5 prefixlen 64 scopeid 0x20
ether a2:aa:a6:73:70:d5 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 10 dropped 0 overruns 0 carrier 0 collisions 0

You forgot to configure your APN.

I have already set it as APN=internet. It is still showing “unset”