# AMB82-Mini USB Host CDC ECM fails to enumerate Quectel EC200U 4G modem — "ecm init fail"

**URL:** <https://forum.amebaiot.com/t/amb82-mini-usb-host-cdc-ecm-fails-to-enumerate-quectel-ec200u-4g-modem-ecm-init-fail/4802>\
**Category:** USB\
**Tags:** evb-amb82, rtl8735b\
**Created:** [April 2, 2026, 4:01pm UTC](https://forum.amebaiot.com/t/amb82-mini-usb-host-cdc-ecm-fails-to-enumerate-quectel-ec200u-4g-modem-ecm-init-fail/4802 "2026-04-02T16:01:02Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![Pradeep\_1](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.amebaiot.com/pradeep_1/32/2670_2.png) [@Pradeep\_1](https://forum.amebaiot.com/u/Pradeep_1)\
**Post date:** [April 2, 2026, 4:01pm UTC](https://forum.amebaiot.com/t/amb82-mini-usb-host-cdc-ecm-fails-to-enumerate-quectel-ec200u-4g-modem-ecm-init-fail/4802/1 "2026-04-02T16:01:03Z")

</div>

Hi Realtek team,

I am developing a 4G dashcam using AMB82-Mini ( RTL8735B) with a Quectel EC200U-CN 4G modem ( [Quectel EC200U 4G Modem - CAPUF](https://capuf.in/ec200u-4g-cellular-gsm-modem/) ). The modem is configured for USB CDC ECM mode via AT+QCFG=“usbnet”,1. UART AT commands work perfectly, the modem registers on the network, and gets an IP address. However, USB Host CDC ECM enumeration always fails with ecm init fail.

**Hardware Setup**

- **Board:** AMB82-Mini EVB (Rev 2V0)

- **Modem:** Quectel EC200U-CN

- **SDK:** ameba-rtos-pro2 (FreeRTOS SDK, GCC build)

- **USB connection:** EC200U USB header pins (5/P/M/G) → AMB82-Mini **CON9** (USB Host port)

- **Debug serial:** CON8 (CH340 debug port) — separate from USB Host

- **UART AT commands:** PA\_2 (TX) → EC200U RX, PA\_3 (RX) → EC200U TX — working

**What Works**

- UART AT commands: all working (AT+CPIN? → READY, AT+CREG? → registered, AT+CGPADDR → IP assigned)

- Modem USB ECM mode confirmed: AT+QCFG=“usbnet” returns +QCFG: “usbnet”,1

- Modem registered on Airtel 5G LTE (Band 40), signal CSQ 23

- PDP context active, IP assigned

- VBUS 5V verified at CON9 and at EC200U USB header pin

- Tried both D+/D- orientations

**What Fails**

USB Host ECM enumeration fails every time. Serial log:

_**[ECM] USB host ECM demo started…**_

_ **usb otg mode 1** _

_ **USB\_Init** _

_**[4G] Waiting for DHCP… (28)**_

_**[4G] Waiting for DHCP… (27)**_

_ **…** _

_ **ecm init fail** _

_ **The bulk\_task already deinit** _

_ **The intr\_task already deinit** _

_ **USB\_DeInit** _

_ **ecm deinit ok** _

_ **ecm\_status 2** _

The USB host controller initializes (usb otg mode 1, USB\_Init) but usbh\_cdc\_ecm\_on() returns false — no USB device is detected on the bus.

**Code Reference**

I am calling ethernet\_usb\_init() from component/ethernet\_mii/ethernet\_usb.c (line 593), which creates the usbh\_ecm\_thread. Inside that thread, ecm\_on() (line 290) calls usbh\_cdc\_ecm\_on(), which fails.

My initialization code is as following:

_ **/\* In modem\_task — called after modem AT init completes \*/** _

_**ethernet\_usb\_init();**_

_ **/\* Wait for DHCP \*/** _

_ **int dhcp\_timeout = 30;** _

_**while (ecm\_lwip\_dhcp\_status() != 4 && dhcp\_timeout-- \> 0) {**_

```
***printf("\[4G\] Waiting for DHCP... (%d)\\r\\n", dhcp_timeout);***

***vTaskDelay(1000 / portTICK_PERIOD_MS);***

```

_ **}** _

Build configuration in video\_example\_media\_framework.cmake:

CONFIG\_USBH\_CDC\_ECM=1

platform\_opts.h:

#define CONFIG\_ETHERNET 1

#define MII\_INTERFACE 0

#define USB\_INTERFACE 1

#define ETHERNET\_INTERFACE USB\_INTERFACE

**What I’ve Verified**

1. **Schematic confirmed:** CON9 D+/D- route to USB\_HSDP (pin 85) / USB\_HSDM (pin 86) via 33Ω series resistors (R60/R61)

2. **CON8 is separate:** Debug USB goes to CH340C (U9), not RTL8735B USB OTG

3. **VBUS detected by modem:** USB PWR LED turned on in EC200U module when VBUS connected

4. **Tried with retries:** Added 3 retry attempts with ethernet\_usb\_deinit() between each — same result

5. **Tried longer delays:** Waited up to 15 seconds before calling ethernet\_usb\_init() — same result

**Questions**

1. Has USB Host CDC ECM been tested with any device other than RTL8152B USB Ethernet dongle?

2. Does usbh\_cdc\_ecm\_on() in libusbd.a filter by USB VID/PID?

3. Is there a way to enable verbose USB host debug logging to see if the host detects any electrical activity on D+/D-?

4. Is there a known issue with USB Host enumeration on AMB82-Mini EVB ?

5. Would it be possible to get source code for usbh\_cdc\_ecm\_on() (currently in precompiled library form) so we can debug the enumeration failure?

**Environment**

- SDK: ameba-rtos-pro2

- Board: AMB82-Mini EVB 2V0

- OS: Windows11

Warm Regards,

Pradeep

---

<div class="post-metadata">

**Author:** ![Pammy](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.amebaiot.com/pammy/32/936_2.png) [@Pammy](https://forum.amebaiot.com/u/Pammy)\
**Post date:** [April 7, 2026, 5:51am UTC](https://forum.amebaiot.com/t/amb82-mini-usb-host-cdc-ecm-fails-to-enumerate-quectel-ec200u-4g-modem-ecm-init-fail/4802/2 "2026-04-07T05:51:23Z")

</div>

Hi @Pradeep_1,

Kindly refer to this [link](https://forum.amebaiot.com/t/rtl8735bdm-a20-n04-ethernet/4642/3) for the USB-to-Ethernet adapter that we have tested on our end.

Could you share which USB Ethernet adapter you are using?

May I also check if you are using the default JXF37 sensor? We can provide a test firmware for you to try, which may help narrow down whether the issue is related to hardware or the source code.

---

<div class="post-metadata">

**Author:** ![Pradeep\_1](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.amebaiot.com/pradeep_1/32/2670_2.png) [@Pradeep\_1](https://forum.amebaiot.com/u/Pradeep_1)\
**Post date:** [April 8, 2026, 1:52pm UTC](https://forum.amebaiot.com/t/amb82-mini-usb-host-cdc-ecm-fails-to-enumerate-quectel-ec200u-4g-modem-ecm-init-fail/4802/3 "2026-04-08T13:52:50Z")

</div>

Hi Pammy,

i am not using USB to Ethernet adapter. if you have seen my post i have already written everything in very detail. I am trying to interface EC200U modem with AMB82-mini using USB interface. SO AMB82-mini will act as a USB host. Please read my previous post before providing any solution, i have written everything in detail. Also, i am using JXF37 sensor, and it is working fine i am able to record video as well.

Best regards,

Pradeep

---

<div class="post-metadata">

**Author:** ![Pammy](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.amebaiot.com/pammy/32/936_2.png) [@Pammy](https://forum.amebaiot.com/u/Pammy)\
**Post date:** [April 16, 2026, 6:58am UTC](https://forum.amebaiot.com/t/amb82-mini-usb-host-cdc-ecm-fails-to-enumerate-quectel-ec200u-4g-modem-ecm-init-fail/4802/4 "2026-04-16T06:58:39Z")

</div>

Hi @Pradeep_1,

Apologies for the misunderstanding. Thank you for your clarification and waiting while we reviewed the requested feature.

The current USB ECM example is intended only for USB-to-Ethernet adapter use cases, and is not compatible with 4G dongle usage.

Support for 4G dongles is still under development and will require some time to complete.

We will provide an update once this feature becomes available in the SDK.

Thank you.

---

<div class="post-metadata">

**Author:** ![Radek\_Smejkal](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.amebaiot.com/radek_smejkal/32/3399_2.png) [@Radek\_Smejkal](https://forum.amebaiot.com/u/Radek_Smejkal)\
**Post date:** [July 16, 2026, 12:37pm UTC](https://forum.amebaiot.com/t/amb82-mini-usb-host-cdc-ecm-fails-to-enumerate-quectel-ec200u-4g-modem-ecm-init-fail/4802/5 "2026-07-16T12:37:14Z")

</div>

Hello @Pammy, can I also ask if there are any updates for USB ECM to make it work with LTE modems? Thank you very much

---

<div class="post-metadata">

**Author:** ![Pammy](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.amebaiot.com/pammy/32/936_2.png) [@Pammy](https://forum.amebaiot.com/u/Pammy)\
**Post date:** [July 20, 2026, 2:28am UTC](https://forum.amebaiot.com/t/amb82-mini-usb-host-cdc-ecm-fails-to-enumerate-quectel-ec200u-4g-modem-ecm-init-fail/4802/6 "2026-07-20T02:28:03Z")

</div>

Hi @Radek_Smejkal,

> [@Radek\_Smejkal](#):
>
> LTE modems

May I clarify whether you are referring to a USB LTE dongle? You may also share the brand and model of the device you are using.

---

<div class="post-metadata">

**Author:** ![Radek\_Smejkal](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.amebaiot.com/radek_smejkal/32/3399_2.png) [@Radek\_Smejkal](https://forum.amebaiot.com/u/Radek_Smejkal)\
**Post date:** [July 20, 2026, 5:38am UTC](https://forum.amebaiot.com/t/amb82-mini-usb-host-cdc-ecm-fails-to-enumerate-quectel-ec200u-4g-modem-ecm-init-fail/4802/7 "2026-07-20T05:38:50Z")

</div>

Hello @Pammy, I am using AMB82-mini (RTL8735B) with AmebaPro2 SDK 4.1.0 as USB Host and Quectel EG915 LTE modem in CDC-ECM mode (AT+QCFG=“usbnet”,1).

Current status:

Modem is correctly enumerated via USB.  
CDC-ECM driver is initialized and endpoints are found:  
Interrupt IN: 0x81  
Bulk IN: 0x8B  
Bulk OUT: 0x08  
SET\_INTERFACE(if=1, alt=1) is successful.  
PDP context is active, modem is registered in LTE network and gets WWAN IP address (AT+CGPADDR=1 returns valid IP).  
DHCP client on lwIP is started.  
TX direction is working – TX frame counter is increasing and modem is receiving Ethernet frames without errors.

Problem:

RX remains permanently 0.

No DHCP OFFER, ARP or other Ethernet frame comes from the modem.  
So the host can send frames to the modem, but never gets a response back.

Now I will try to update the EG915. And I will see if anything changes.

USB Host CDC-ECM driver compatible with common LTE modems (Quectel, SIMCom, Fibocom, etc.) would be useful

Thank you very much.

---

<div class="post-metadata">

**Author:** ![Pammy](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.amebaiot.com/pammy/32/936_2.png) [@Pammy](https://forum.amebaiot.com/u/Pammy)\
**Post date:** [September 4, 2026, 10:11am UTC](https://forum.amebaiot.com/t/amb82-mini-usb-host-cdc-ecm-fails-to-enumerate-quectel-ec200u-4g-modem-ecm-init-fail/4802/8 "2026-09-04T10:11:32Z")

</div>

Hi,

We’ll be introducing an LTE dongle solution soon, with support for the 4G LTE dongle (EG915U-EU). The code is currently being prepared for release.

Do let us know if this solution would be suitable for your application, or if you have any additional requirements.

---

<div class="post-metadata">

**Author:** ![Radek\_Smejkal](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.amebaiot.com/radek_smejkal/32/3399_2.png) [@Radek\_Smejkal](https://forum.amebaiot.com/u/Radek_Smejkal)\
**Post date:** [September 9, 2026, 5:17am UTC](https://forum.amebaiot.com/t/amb82-mini-usb-host-cdc-ecm-fails-to-enumerate-quectel-ec200u-4g-modem-ecm-init-fail/4802/9 "2026-09-09T05:17:58Z")

</div>

That would be great. The next LTE module we plan to use for connectivity will be, for example, the Quectel EC200U. However, I assume that if the EG915 works, there should be no problem with the EC200U either.
