EC200U USB disconnecting and reconnecting

I have an EC200U USB dongle connected to an SBC (RPi) running Ubuntu Linux. It is recognized:

$ uname -a
Linux rpi 5.15.0-1087-raspi #90-Ubuntu SMP PREEMPT Thu Sep 25 18:17:05 UTC 2025 aarch64 aarch64 aarch64 GNU/Linux

$ lsusb
...
Bus 001 Device 046: ID 2c7c:0901 Quectel Wireless Solutions Co., Ltd. Android
$ ls /dev/ttyUSB*
/dev/ttyUSB0  /dev/ttyUSB2  /dev/ttyUSB4  /dev/ttyUSB6
/dev/ttyUSB1  /dev/ttyUSB3  /dev/ttyUSB5

I assume the driver is not an issue, the device is picked up by Option driver.
And I can connect to an AT port using command like

microcom -p /dev/ttyUSB0

Here is ATI output:

Quectel
EC200U
Revision: EC200UEUAAR03A20M08

(I tried other terminal software and observed same problems, so am pretty sure the issue is not with microcom)
I can send at commands, but after a while (like one minute) the port would get closed (e.g. EOF received), and sometimes the ttyUSB device will disappear and get re-enumerated, like the /dev/ttyUSB0 becomes /dev/ttyUSB1 whilst /dev/ttyUSB0 is gone, etc.
dmesg | grep usb suggests that the device is indeed disconnected and then reconnected every now and then.
I tried AT+CBC command:

+CBC: 1,82,3991

But failed to interprit its output.

Is this likely a power issue? If so, what would be the best root to fix it (without physically altering the dongle’s hardware design)? And is there a way to verify whether it indeed lacks power?
Could it still be a software/driver issue or even firmware related (I don’t know whether the firmware is latest, but even if it’s not I wouldn’t dare to upgrade it because the device is likely to disconnect in process)?

Check the kernel logs and compare the time intervals between USB disconnection and reconnection.
If it exceeds 5 seconds, it’s related to the power supply.

Hi @Bean.Wang-Q thanks for your reply. Here is a part of dmesg log:

[86343.484174] option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0
[86343.485698] option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1
[86343.487582] option1 ttyUSB2: GSM modem (1-port) converter now disconnected from ttyUSB2
[86343.489193] option1 ttyUSB3: GSM modem (1-port) converter now disconnected from ttyUSB3
[86343.490947] option1 ttyUSB4: GSM modem (1-port) converter now disconnected from ttyUSB4
[86343.493190] option1 ttyUSB5: GSM modem (1-port) converter now disconnected from ttyUSB5
[86343.494398] option1 ttyUSB6: GSM modem (1-port) converter now disconnected from ttyUSB6
[86347.210744] option 1-1.3:1.2: GSM modem (1-port) converter detected
[86347.211100] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB0
[86347.211582] option 1-1.3:1.3: GSM modem (1-port) converter detected
[86347.211884] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB1
[86347.212321] option 1-1.3:1.4: GSM modem (1-port) converter detected
[86347.212550] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB2
[86347.212947] option 1-1.3:1.5: GSM modem (1-port) converter detected
[86347.213190] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB3
[86347.213622] option 1-1.3:1.6: GSM modem (1-port) converter detected
[86347.213881] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB4
[86347.214292] option 1-1.3:1.7: GSM modem (1-port) converter detected
[86347.214595] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB5
[86347.215080] option 1-1.3:1.8: GSM modem (1-port) converter detected
[86347.215358] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB6
[86352.644264] option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0
[86352.646112] option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1
[86352.649487] option1 ttyUSB2: GSM modem (1-port) converter now disconnected from ttyUSB2
[86352.651830] option1 ttyUSB3: GSM modem (1-port) converter now disconnected from ttyUSB3
[86352.654733] option1 ttyUSB4: GSM modem (1-port) converter now disconnected from ttyUSB4
[86352.656766] option1 ttyUSB5: GSM modem (1-port) converter now disconnected from ttyUSB5
[86352.657703] option1 ttyUSB6: GSM modem (1-port) converter now disconnected from ttyUSB6
[86360.754841] option 1-1.3:1.2: GSM modem (1-port) converter detected
[86360.755177] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB0
[86360.755641] option 1-1.3:1.3: GSM modem (1-port) converter detected
[86360.755991] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB1
[86360.756444] option 1-1.3:1.4: GSM modem (1-port) converter detected
[86360.756691] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB2
[86360.757077] option 1-1.3:1.5: GSM modem (1-port) converter detected
[86360.757297] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB3
[86360.757747] option 1-1.3:1.6: GSM modem (1-port) converter detected
[86360.758004] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB4
[86360.758436] option 1-1.3:1.7: GSM modem (1-port) converter detected
[86360.758659] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB5
[86360.759152] option 1-1.3:1.8: GSM modem (1-port) converter detected
[86360.759415] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB6
[86704.448296] option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0
[86704.449996] option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1
[86704.452060] option1 ttyUSB2: GSM modem (1-port) converter now disconnected from ttyUSB2
[86704.453781] option1 ttyUSB3: GSM modem (1-port) converter now disconnected from ttyUSB3
[86704.455823] option1 ttyUSB4: GSM modem (1-port) converter now disconnected from ttyUSB4
[86704.458977] option1 ttyUSB5: GSM modem (1-port) converter now disconnected from ttyUSB5
[86704.460207] option1 ttyUSB6: GSM modem (1-port) converter now disconnected from ttyUSB6
[86708.194010] option 1-1.3:1.2: GSM modem (1-port) converter detected
[86708.194423] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB0
[86708.195101] option 1-1.3:1.3: GSM modem (1-port) converter detected
[86708.195409] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB1
[86708.195929] option 1-1.3:1.4: GSM modem (1-port) converter detected
[86708.196210] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB2
[86708.196678] option 1-1.3:1.5: GSM modem (1-port) converter detected
[86708.196919] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB3
[86708.197422] option 1-1.3:1.6: GSM modem (1-port) converter detected
[86708.197724] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB4
[86708.198264] option 1-1.3:1.7: GSM modem (1-port) converter detected
[86708.198590] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB5
[86708.199166] option 1-1.3:1.8: GSM modem (1-port) converter detected
[86708.199468] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB6
[86713.404230] option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0
[86713.405631] option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1
[86713.408167] option1 ttyUSB2: GSM modem (1-port) converter now disconnected from ttyUSB2
[86713.409848] option1 ttyUSB3: GSM modem (1-port) converter now disconnected from ttyUSB3
[86713.412064] option1 ttyUSB4: GSM modem (1-port) converter now disconnected from ttyUSB4
[86713.416073] option1 ttyUSB5: GSM modem (1-port) converter now disconnected from ttyUSB5
[86713.418926] option1 ttyUSB6: GSM modem (1-port) converter now disconnected from ttyUSB6
[86721.539053] option 1-1.3:1.2: GSM modem (1-port) converter detected
[86721.539338] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB0
[86721.539810] option 1-1.3:1.3: GSM modem (1-port) converter detected
[86721.540081] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB1
[86721.540515] option 1-1.3:1.4: GSM modem (1-port) converter detected
[86721.540722] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB2
[86721.541066] option 1-1.3:1.5: GSM modem (1-port) converter detected
[86721.541287] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB3
[86721.541708] option 1-1.3:1.6: GSM modem (1-port) converter detected
[86721.541947] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB4
[86721.542335] option 1-1.3:1.7: GSM modem (1-port) converter detected
[86721.542535] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB5
[86721.543225] option 1-1.3:1.8: GSM modem (1-port) converter detected
[86721.543502] usb 1-1.3: GSM modem (1-port) converter now attached to ttyUSB6

If I can provide any other relevant log or information that may help resolve the issue, please kindly let me know.


T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480  MxCh= 1
B:  Alloc=  0/800 us ( 0%), #Int=  0, #Iso=  0
D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=1d6b ProdID=0002 Rev= 5.15
S:  Manufacturer=Linux 5.15.0-1087-raspi xhci-hcd
S:  Product=xHCI Host Controller
S:  SerialNumber=0000:01:00.0
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
E:  Ad=81(I) Atr=03(Int.) MxPS=   4 Ivl=256ms

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= 4.21
S:  Product=USB2.0 Hub
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=100mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
E:  Ad=81(I) Atr=03(Int.) MxPS=   1 Ivl=256ms

T:  Bus=01 Lev=02 Prnt=02 Port=02 Cnt=01 Dev#=  5 Spd=480  MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=2c7c ProdID=0901 Rev= 3.18
S:  Manufacturer=Android
S:  Product=Android
C:* #Ifs= 9 Cfg#= 1 Atr=e0 MxPwr=400mA
A:  FirstIf#= 0 IfCount= 2 Cls=02(comm.) Sub=06 Prot=00
I:* If#= 0 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=06 Prot=00 Driver=cdc_ether
E:  Ad=81(I) Atr=03(Int.) MxPS=  16 Ivl=32ms
I:  If#= 1 Alt= 0 #EPs= 0 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_ether
I:* If#= 1 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_ether
E:  Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=01(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=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=83(I) Atr=03(Int.) MxPS= 512 Ivl=4096ms
I:* If#= 3 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E:  Ad=85(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=03(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 4 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E:  Ad=86(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=04(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 5 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E:  Ad=87(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=05(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 6 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E:  Ad=88(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=06(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
I:* If#= 7 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E:  Ad=8a(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=07(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=89(I) Atr=03(Int.) MxPS= 512 Ivl=4096ms
I:* If#= 8 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=00 Prot=00 Driver=option
E:  Ad=8b(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=08(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms

T:  Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=5000 MxCh= 4
B:  Alloc=  0/800 us ( 0%), #Int=  0, #Iso=  0
D:  Ver= 3.00 Cls=09(hub  ) Sub=00 Prot=03 MxPS= 9 #Cfgs=  1
P:  Vendor=1d6b ProdID=0003 Rev= 5.15
S:  Manufacturer=Linux 5.15.0-1087-raspi xhci-hcd
S:  Product=xHCI Host Controller
S:  SerialNumber=0000:01:00.0
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
E:  Ad=81(I) Atr=03(Int.) MxPS=   4 Ivl=256ms

T:  Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480  MxCh= 1
B:  Alloc=  0/800 us ( 0%), #Int=  0, #Iso=  0
D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=1d6b ProdID=0002 Rev= 5.15
S:  Manufacturer=Linux 5.15.0-1087-raspi dwc2_hsotg
S:  Product=DWC OTG Controller
S:  SerialNumber=fe980000.usb
C:* #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=  0mA
I:* If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
E:  Ad=81(I) Atr=03(Int.) MxPS=   4 Ivl=256ms

Obviously the USB modem disconnected because it rebooted.

Is it USB donle? The power is not enough.

@Bean.Wang-Q Yes it is an USB dongle. And yes it seems like the device is constantly rebooting. Sometimes it can register on the network, but it might take a lot of time, and in most cases it reboots before.
Do you have any advice on resolving this kind power of issue? Is it likely to happen because the USB port cannot deliver enough power, or due to faulty hardware design?

You can try supplying power directly from the module’s VBAT pin, providing a 3.3V input.
Power consumption will be relatively high when searching for networks.
The power consumption is actually higher when the signal is weak.

@Bean.Wang-Q

You can try supplying power directly from the module’s VBAT pin, providing a 3.3V input.

Physical altering of the device hardware design would be the least desired scenario; could connecting it via a USB-Y cable (1 female 2 male USB-A) or an active (powered) USB hub possibly resolve the issue, or does it arise from the USB limitations?

Power consumption will be relatively high when searching for networks.

Is there any estimation? The maximum theoretic power the RPi can deliver via USB is 5V 1.2A, and the module is operating at ~3.9V according to AT+CBC.

The power consumption is actually higher when the signal is weak.

Yes, the signal quality is on the lower end, also it seems like the device is less stable when roaming (which unfortunately is one of the use cases). Here is some data:

 at+qnwinfo
+QNWINFO: "GPRS","23410","GSM 900",119
AT+CSQ
+CSQ: 9,99

at+creg?
+CREG: 0,5

at+qeng="servingcell"
+QENG: "servingcell","NOCONN","GSM",234,10,54NN,48NN,42,119,2,15,5,95,0,10,10,-,-,-,-,-,-,-,-,-,-,"-"

The module do not support 5V. The USB provide the 5V and The current does not exceed 500mA, but at a certain moment USB power supply is not enough.

The USB Adapter might can support 1.2A but the USB typeA only can provide current no more than 500mA.

T: Bus=01 Lev=02 Prnt=02 Port=02 Cnt=01 Dev#= 5 Spd=480 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=2c7c ProdID=0901 Rev= 3.18
S: Manufacturer=Android
S: Product=Android
C:* #Ifs= 9 Cfg#= 1 Atr=e0 MxPwr=400mA

Maybe no more than 400mA.

@Bean.Wang-Q

The module do not support 5V. The USB provide the 5V

I assume the USB dongle/adapter includes voltage converter, since the module indeed operates at around 3-8-3.9V?

the USB typeA only can provide current no more than 500mA.

I know this is part of USB type A specification, however I thought drawing more current might be possible when using an USB hub, especially the one that has charging capabilities.

at a certain moment USB power supply is not enough.

So in other words, using this module in USB adapter is impossible since it cannot deliver enough power?

I had similar dongle connected to PC (not RPi/SBC) via USB type-A port and it does not seem to experience issues like this (never seen it suddenly reboot), that’s why I thought the Raspberry PI cannot deliver enough power. Though the product I am talking about which I connected to PC was based on EC25-EUX module. Does it have different power requirements from those of EC200U?

With the USB adapter it is not a problem.
But with the USB typeA port, I think the power is not enough.

@Bean.Wang-Q
I tried to replug the USB adapter from the USB 2.0 to USB3.0 port and observed an interesting result. It disconnects less frequently, however AT+COPS=? always returns CME ERROR 3 (Operation not allowed) and the device can never find any cellular network (tried different values for AT+QCFG="nwscanmode", etc). Though device can observe cellular networks at the same physical location and run AT+COPS=? network scan before.

I’m not sure what the difference is between the driver capabilities of USB 3.0 and USB 2.0 Type-A ports.
I suggest you modify the USB dongle to add an additional power input.
As for the network issue, that should be unrelated to the USB disconnection.