Skip to main content
Visitor II
February 9, 2024
Question

STM32U5xx: USB ECM on Windows - please license driver

  • February 9, 2024
  • 2 replies
  • 3077 views

My USB ECM project on NUCLEO-U575 and NUCLEO-U5A5 - it works now, on all OS platforms.

https://github.com/tjaekel/STM32U5xx_USB_ECM 

This project and demo for a STM32U575I-EV (where I have converted from) needs a vendor driver on Windows.
Windows does not support USB ECM (or USBLAN, just RNDIS, but it is different). There is not any driver to use USB ECM on Windows, except: Belcarra USBLAN demo driver.

Dear STM Team:

please, could you consider to license the Belcarra USBLAN driver for Windows?

http://usblan.belcarra.com    http://www.belcarra.com

It would be nice, when STM (or AZURE RTOS - Microsoft), providing a demo for USB ECM, that it can be used also on a Windows OS host.
Please, license such this driver and provide it together with CubeMX (and demos, HAL drivers). Thank you.

Remark:

In order to make it really correct working on all OS platforms (esp. Windows OS), a small fix in file "ux_device_descriptors.c" is needed (see the modification in the GitHub project).

 

The related thread in forum:

https://community.st.com/t5/stm32-mcus-products/stm32u5x-usb-ecm-demo-how-to-setup-host/m-p/631189/thread-id/233297 

    This topic has been closed for replies.

    2 replies

    Technical Moderator
    August 15, 2024

    Hi @tjaekel 

    Sorry for my late response. ECM is primarily supported by Linux, while RNDIS is more commonly used for Windows. AFAIK, Windows does not natively promote the ECM class, which is why RNDIS is often the preferred choice for network communication over USB on Windows systems. I guess it's better to address this request to Microsoft support. 

    Graduate II
    August 15, 2024

    It also looks like Microsoft has shifted focus for USB-IP devices towards implementing NCM:

     

    1. https://learn.microsoft.com/en-us/answers/questions/52386/usb-cdc-ncm-devices-not-assigned-to-usbncm-driver

    2https://github.com/microsoft/NCM-Driver-for-Windows

    3. https://learn.microsoft.com/en-us/windows-hardware/drivers/usbcon/supported-usb-classes

     

    The last links shows that Windows 11 ships with a default driver called "UsbNcm.sys", which means that's probably what MS wants new products to target. Existing projects, or new ones that have to support older windows releases are, as you'd expect, have to provide their own driver.

     

    TinyUSB has NCM driver, with a recently rewritten driver. It also supports RNDIS.