TinyUSB netdev driver for CDC ECM, CDC NCM and RNDIS protocol. More...
TinyUSB netdev driver for CDC ECM, CDC NCM and RNDIS protocol.
The tinyUSB netdev driver is part of the tinyUSB package and is enabled by module tinyusb_netdev
. It is available for boards that provide the tinyusb_device
feature.
The tinyUSB netdev driver uses Ethernet over USB and supports the following protocols:
While Linux and macOS support all these protocols, Microsoft Windows only supports the RNDIS protocol and since Windows version 11 also the CDC NCM protocol. macOS supports the RNDIS protocol since version 10.15 (Catalina).
Which protocol is used is selected by the corresponding pseudomodules tinyusb_class_net_cdc_ecm
, tinyusb_class_net_cdc_ncm
and tinyusb_class_net_rndis
.
The CDC ECM protocol (tinyusb_class_net_cdc_ecm
) and the RNDIS protocol (tinyusb_class_net_rndis
) can be used simultaneously to support all operating systems, for example :
In this case, the CDC ECM protocol is the default protocol and the RNDIS protocol the alternative protocol defined as second device configuration.
The CDC NCM protocol cannot be used together with the CDC ECM or the RNDIS protocol.
Files | |
file | tinyusb_netdev.h |
TinyUSB netdev driver for CDC ECM, CDC NCM and RNDIS protocol. | |
Data Structures | |
struct | tinyusb_netdev_t |
Device descriptor for tinyUSB CDC ECM network devices. More... | |