2024-02-08 05:09 PM
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:
2024-08-15 03:41 AM
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.
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
2024-08-15 01:43 PM - edited 2024-08-16 11:19 AM
It also looks like Microsoft has shifted focus for USB-IP devices towards implementing NCM:
2. https://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.