RM500q AT port doesn't work in RNDIS mode

Hello,

I can not give AT commands to the quectel modem RM500q after I gave AT+qcfg=“usbnet”,3 command. Before it was working properly.
image

How can I fix this?

Hi,You need to run the module on Linux, enter command mode with sudo busybox microcom /dev/ttyUSB2, type AT+QCFG=“usbnet”,1, and restart

Hi,

I tried in Linux. when I connect this RM500q, it disappear ttyUSB2 port. There is ttyUSB1 and ttyUSB0 but did not work for AT commands. I have been using another RM500q and it works fine.

Here is the dmesg output

[ 6659.182370] usb 2-1.3: new SuperSpeed USB device number 10 using tegra-xusb
[ 6659.214121] usb 2-1.3: New USB device found, idVendor=2c7c, idProduct=0800
[ 6659.214192] usb 2-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 6659.214238] usb 2-1.3: Product: RM500Q-AE
[ 6659.214282] usb 2-1.3: Manufacturer: Quectel
[ 6659.214324] usb 2-1.3: SerialNumber: eaf2b337
[ 6659.222194] option 2-1.3:1.2: GSM modem (1-port) converter detected
[ 6659.222426] usb 2-1.3: GSM modem (1-port) converter now attached to ttyUSB0
[ 6659.222633] option 2-1.3:1.3: GSM modem (1-port) converter detected
[ 6659.222850] usb 2-1.3: GSM modem (1-port) converter now attached to ttyUSB1
[ 6659.225516] GobiNet 2-1.3:1.4 eth0: register 'GobiNet' at usb-70090000.xusb-1.3, GobiNet Ethernet Device, de:29:56:68:27:75
[ 6659.229162] creating qcqmi0
[ 6659.332639] rndis_host 2-1.3:1.0 usb1: register 'rndis_host' at usb-70090000.xusb-1.3, RNDIS device, 9e:e1:ca:7c:f6:40
[ 6659.333270] usbcore: registered new interface driver rndis_host
[ 6659.439971] IPv6: ADDRCONF(NETDEV_UP): usb1: link is not ready
[ 6659.450849] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 6659.455101] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 6659.478832] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 6659.517810] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 6659.528774] net eth0: link_state 0x0, drop skb, len = 90
[ 6659.552773] net eth0: link_state 0x0, drop skb, len = 90
[ 6659.597091] net eth0: link_state 0x0, drop skb, len = 342
[ 6659.621012] net eth0: link_state 0x0, drop skb, len = 180
[ 6659.737345] net eth0: link_state 0x0, drop skb, len = 209
[ 6659.987949] net eth0: link_state 0x0, drop skb, len = 209
[ 6660.073287] net eth0: link_state 0x0, drop skb, len = 62
[ 6660.200689] net eth0: link_state 0x0, drop skb, len = 90
[ 6660.218595] net eth0: link_state 0x0, drop skb, len = 99
[ 6660.232792] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 6660.238600] net eth0: link_state 0x0, drop skb, len = 209
[ 6660.244686] net eth0: link_state 0x0, drop skb, len = 90
[ 6660.439300] net eth0: link_state 0x0, drop skb, len = 197
[ 6660.621823] net eth0: link_state 0x0, drop skb, len = 180
[ 6661.000647] net eth0: link_state 0x0, drop skb, len = 90
[ 6661.218447] net eth0: link_state 0x0, drop skb, len = 99
[ 6661.605325] net eth0: link_state 0x0, drop skb, len = 197
[ 6662.523916] net eth0: link_state 0x0, drop skb, len = 342
[ 6662.621883] net eth0: link_state 0x0, drop skb, len = 180
[ 6663.770892] net eth0: link_state 0x0, drop skb, len = 197
[ 6664.074254] net eth0: link_state 0x0, drop skb, len = 62
[ 6666.623837] net eth0: link_state 0x0, drop skb, len = 180
[ 6668.074706] net eth0: link_state 0x0, drop skb, len = 62
[ 6670.641050] net eth0: link_state 0x0, drop skb, len = 342

Here is ~$ ls /sys/bus/usb/drivers

asix          cdc_ether  cdc_subset  GobiNet  net1080  qmi_wwan    r8152       snd-usb-audio  usb    usbhid     usb-storage  zaurus
ax88179_178a  cdc_ncm    cdc_wdm     hub      option   qmi_wwan_q  rndis_host  uas            usbfs  usbserial  xpad

Both ttyUSB0 and ttyUSB1 should not respond to AT commands, that is shown in the documentation (LTE&5G Linux USB Driver User Guide).

ttyUSB0, USBDM
ttyUSB1 used for GPS NMEA message output
ttyUSB2 used for AT command communication
ttyUSB3 used for PPP connection or AT command communication

You should start from checking the output of cat /sys/kernel/debug/usb/devices

Hi, here is the output.

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

Unfortunately, I do not have the latest Quectel RNDIS driver for Windows, so I cannot check which If# is supposed to respond to AT commands in RNDIS mode.
In the normal mode the AT port will be on interface 2 (I:* If#= 2 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=30 Driver=option), that is the first instance of option driver in your current situation and it should be exposed as /dev/ttyUSB0 in the absence of other ttyUSBx devices.
Before the change you made, If#= 2 was the 3rd in the sequence of option instances, so it was mapped to /dev/ttyUSB2.
I would try to re-flash the modem with the hope that it will come up in the different mode.

Can I get the latest firmware for RM500Q ? So that I can try flashing the device.

i am having similar difficulties trying to reset the mode from RNDIS back to 0, i was wondering if i reflashed the firmware if it would resolve my issue, or if i can use the UART on the RM502Q-AE to send AT commands to set it back?

If you can provide the firmware, tools, and instructions it would be greatly appreciated.

Have you solved your problem? I have the same problem as you. If you solve it, can you tell me your solution?thanks!