The NCM Driver for Windows
These sample codes are the basis of the actual implementation of the NCM drivers officially shipped with Windows 11. They provide examples of how to write a WDF NetAdapterCx NIC driver for USB based NICs.
Furthermore, they are good references for understanding the behaviors and the features provided by the Windows NCM host driver, and how it interoperates with other NCM compatible function devices.
Code Tour
This project contains two NIC drivers: UsbNcmSample.sys, the driver for the USB host side; and UsbNcmFnSample.sys for the USB function side. While each driver has distinct codes for dealing with either USB host stack or USB function stack, both share many same codes for the common tasks.
adapter
This is the static library that uses NetAdapterCx APIs, and in turn interact with the rest of network stack above. It’s linked by both the host driver and function driver, and performs tasks such as:
- Create and destory the NetAdapter object
- Configure the NetAdapter using registry settings
- Create and destroy the tx and rx queue objects
- Transmitting and receiving the network packets from/to the network stack above
This library is agnostic about the device stack below. It does not interact directly with either host stack or function stack; instead, it uses a set of common callbacks exposed by the host and function driver, as defined in inc/callbacks.h.
common
This is the other static library in the project that implements a few common tasks needed by both host and function drivers:
- Packing and unpacking datagrams into/from NTB according to NCM specification. It supports both 16-bit NTB and 32-bit NTB format.
- Manages pre-allocated memory and WDFREQUEST objects so that it avoids dynamic resource allocation
If your NIC uses some other proprietary ways of packing datagrams into transfer blocks, this is there you can replace the sample code with your own implementation.
host
This builds the host driver UsbNcmSample.sys binary. It contains USB host stack specific logic and reads NCM descriptors from the attached NCM function devices. It performs the actual data transfer between the adapter object and the USB host stack, and also handles other necessary control messages and interrupts.
The host driver ties the adapter’s life-cycle with its device’s life-cycle: It creates the adapter in the EvtWdfDevicePrepareHardware callback and destroys the adapter in the EvtWdfDeviceReleaseHardware callback.
function
This builds the function driver UsbNcmFnSample.sys binary. It contains USB function stack specific logic and it emulates a NCM function device. It performs the actual data transfer operation between the adapter object and the USB function stack, and it also handles bus event and generates interrupts to the host side.
The function driver manages the adapter’s life-cycle differently than the host driver: It creates the adapter when received alt-setting 1 selected bus event, and it destroys the adapter when received alt-setting 0 selected bus event. All above happens when the device is in the fully working state, i.e. after D0Entry
This demonstrates an important aspect of NetAdapterCx framework — the adapter and device can be de-coupled in NetAdapterCx based driver.
inc
This folder contains various C++ headers included by previously mentioned components, some notable ones are
- callbacks.h — declares the callbacks between adpater and device that each side implements
- buffers.h — declares the pre-allocated memory/WDFREQUEST pool APIs for tx and rx queue
- NetPacketLibrary.h — declares a few helper APIs for manipulate the NET_RING/NET_PACKET/NET_FRAGMENT
- ntb.h — declares NTB packing and unpacking APIs
dmf
Both drivers, mainly the function driver, leverage certain pre-built modules from DMF, so DMF repro is included here as a submodule that the entire project is build-able under Visual Studio
Contributing
This project welcomes contributions and suggestions. Most contributions require you to agree to a
Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us
the rights to use your contribution. For details, visit https://cla.microsoft.com.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
Драйверы
На этой странице вы можете скачать универсальные драйверы для модемов HUAWEI.
Как установить драйверы?
1. Скачать архив с драйверами.
2. Распаковать архив с драйверами.
3. Отключить антивирус. (Он может по ошибке блокировать установку драйверов, так как они устанавливаются в фоновом режиме.)
4. Подключить модем к компьютеру и запустить файл DriverSetup.exe (Драйверы устанавливаются в фоновом режиме, поэтому вы не увидете процесс установки, просто подождите секунд 20-40).
Драйверы для модемов HUAWEI. Версия драйверов 4.25.22.00.
Скачать Huawei Drivers 4.25.22.00
Поддержка OS Windows: XP (x86-x64) Vista (x86-x64) 7 (x86-x64) 8 (x86-x64)
Что нового в последней версии:
* Fix the issue of memory leak in performance test.
* Fix the issue of BSOD when loading wwan driver for 005HW product.
* Note: This version is based on version 4.25.21.00
Драйверы для модемов HUAWEI. Версия драйверов 5.01.05.00.
Скачать Huawei Drivers 5.01.05.00
Поддержка OS Windows: XP (x86-x64) Vista (x86-x64) 7 (x86-x64) 8 (x86-x64) 8.1 (x86-x64)
Что нового в последней версии:
* Close SS feature when device not support remote wakeup.
* Optimize MAC address query flow.
* Fix the issue that wwan can’t connect after recover from PUK mode.
* Fix the issue of BSOD when inserted in win7/win8 WWAN.
Драйверы для модемов HUAWEI. Версия драйверов 5.01.10.00.
Скачать Huawei Drivers 5.01.10.00
Поддержка OS Windows: XP (x86-x64) Vista (x86-x64) 7 (x86-x64) 8 (x86-x64) 8.1 (x86-x64)
Что нового в последней версии:
* Fix the issue of modem download stop.
* Fix the issue of HW wwan NCM accumulate time.
* Fix the issue of HW wwan provider name display error.
* Note: This version is based on version 5.01.08.00
Драйверы для модемов HUAWEI. Версия драйверов 5.01.16.00.
Скачать Huawei Drivers 5.01.16.00
Поддержка OS Windows: XP (x86-x64) Vista (x86-x64) 7 (x86-x64) 8 (x86-x64) 8.1 (x86-x64)
Что нового в последней версии:
* Fix the issue of BSOD when unblock pin.
* Note: This version is based on version 5.01.15.00
Драйверы для модемов HUAWEI. Версия драйверов 5.05.01.00.
Скачать Huawei Drivers 5.05.01.00
Поддержка OS Windows: XP (x86-x64) Vista (x86-x64) 7 (x86-x64) 8 (x86-x64) 8.1 (x86-x64) 10 (x86-x64)
Что нового в последней версии:
* Fix the issue of BSOD when plug device in data transmission.
* Fix the issue of AT cmd ‘AT^DATACLASS?’ was parsed incorrectly.
* Note: This version is based on version 5.01.16.00
Драйверы для модемов HUAWEI. Версия драйверов 5.05.02.00.
Скачать Huawei Drivers 5.05.02.00
Поддержка OS Windows: XP (x86-x64) Vista (x86-x64) 7 (x86-x64) 8 (x86-x64) 8.1 (x86-x64) 10 (x86-x64)
Что нового в последней версии:
* Fix the issue of BSOD when plug device in data transmission.
* Note: This version is based on version 5.05.01.00
TL-USBNet Device Driver for Windows 11 and Windows 10
Thesycon’s TL-USBNet driver provides a network adapter emulation on Windows operating systems by implementing the specific network protocol on USB.
TL-USBNet device driver works with USB devices that are compliant to the following CDC subclasses:
- Ethernet Control Model (CDC/ECM)
- Network Control Model (CDC/NCM)
- Ethernet Emulation Model (CDC/EEM)
The driver implements a network adapter based on Microsoft’s network driver model NDIS (Network Driver Interface Specification).
Features of the USB network drivers
- Supports USB 2.0 full speed and high speed, and USB 3.0/3.1/3.2 super speed or higher
- Supports devices that are compliant with one of the following device class specifications: CDC/ECM, CDC/NCM, CDC/EEM
- Compatible with device implementations based on the Linux USB gadget framework
- Supports devices that implement a subset of the specification only, i.e. a subset of the required class requests
- Implements an NDIS 6.60 compliant network adapter for Windows 10 and Windows 11.
- USB communication based on WDF (KMDF)
- Optionally the driver supports advanced USB power management including selective suspend
- Driver behavior is highly configurable via customization settings
- Custom features or optimizations can be implemented on request
- Source code is available on request (subject to a separate license agreement)
Customization of the Driver
- The driver will be delivered fully customized for licensee’s product.
- Customization includes USB VID/PID, file names, text strings, etc.
- The driver is signed by using Microsoft Attestation signing.
- Driver Customization Kit add-on: The Driver Customization Kit enables licensee to customize the driver by themselves.
Driver Installer add-on
- Supported scenarios: first-time installation, driver update, removal of driver software
- Interactive mode with graphical user interface
- Silent mode without user interface, enables integration into surrounding software installers
- Supports popup-free installation
WHQL Certification
The driver is conform with current WHQL and Hardware Lab Kit (HLK) requirements.
To get a WHQL certification, HLK tests must be executed with licensee’s device which can
be done by licensee or Thesycon. If you are interested in a WHQL certification, please contact Thesycon for a quotation.
Supported Platforms
- Windows 11 arm64
- Windows 11 64-bit
- Windows 10 64-bit
- Windows 10 32-bit
- Windows Server 2022 64-bit
- Windows Server 2019 64-bit
The TL-USBNet driver is also available for Windows 7, 8, 8.1. Since Microsoft is discontinuing cross signing for Windows 7, 8, 8.1 drivers a WHQL certification is required.
For more information about TL-USBNet driver for Windows 7, 8, 8.1 and WHQL certification, please contact
.
Software made in Germany
Our software is purely designed and implemented by our team in Germany — no outsourcing. Technical support is provided directly by the developers.
Free Demo, Licensing conditions & Prices
Current version of TL-USBNet driver: 3.75
- Demo version and prices for Windows 10 and 11
The free evaluation version of the TL-USBNet driver works for an interval of 60 days without any limitation. After that evaluation period has expired, the driver stops working.
NOTE: The driver described on this page is *not for use by end users*. It will not help solve any problems you may experience with a consumer device such as a webcam, camcorder, card reader, external sound card, etc. Thesycon’s device drivers are software components intended to be used by hardware or software manufacturers to create end products.
USB Vendor and Product ID
For each USB device model an official USB vendor ID (VID) is required. Vendor IDs must be unique and will be assigned by the USB Implementers Forum (www.usb.org). Registration fees will be charged.
Thesycon owns a USB vendor ID and provides a subset of product IDs (PID) to licensees of Thesycon drivers.
© 2022 THESYCON
Специальное предложение. См. дополнительную информацию о Outbyte и unistall инструкции. Пожалуйста, просмотрите Outbyte EULA и Политика Конфиденциальности
Microsoft CDC Ethernet Control Model (ECM)
Windows XP, XP 64-bit, Vista, Vista 64-bit, 7, 7 64-bit, 11, 10, 8, 8.1
Microsoft CDC Ethernet Control Model (ECM) Windows для устройств собирались с сайтов официальных производителей и доверенных источников. Это программное обеспечение позволит вам исправить ошибки Microsoft CDC Ethernet Control Model (ECM) или Microsoft CDC Ethernet Control Model (ECM) и заставить ваши устройства работать. Здесь вы можете скачать все последние версии Microsoft CDC Ethernet Control Model (ECM) драйверов для Windows-устройств с Windows 11, 10, 8.1, 8 и 7 (32-бит/64-бит). Все драйверы можно скачать бесплатно. Мы проверяем все файлы и тестируем их с помощью антивирусного программного обеспечения, так что скачать их можно на 100% безопасно. Получите последние WHQL сертифицированные драйверы, которые хорошо работают.
Эта страница доступна на других языках:
English |
Deutsch |
Español |
Italiano |
Français |
Indonesia |
Nederlands |
Nynorsk |
Português |
Українська |
Türkçe |
Malay |
Dansk |
Polski |
Română |
Suomi |
Svenska |
Tiếng việt |
Čeština |
العربية |
ไทย |
日本語 |
简体中文 |
한국어