none
Generic RNDIS driver RRS feed

  • Question

  • I have an android device running version 4.2.2.  I want to connect it to Windows 10 using RNDIS.  I would like the RNDIS adapter to just use DHCP.  DHCP is running on my android device.  If I use the ACER VID/PID I get rndis 5.1.  I would like rndis6.  If I use the Samsung VID/PID is works.  Is there a Microsoft generic VID/PID I can use?  I don't want to go through the entire driver signing process.
    Thursday, November 29, 2018 4:10 AM

Answers

  • There is indeed a generic ID you can use.  The USB-IF has reserved Class EF, Subclass 04 to target RNDIS.  Windows ships with a generic INF named rndiscmp.inf that matches the hardware ID of "USB\Class_EF&SubClass_04&Prot_01", which corresponds to RNDIS-over-Ethernet.  (The other protocol types aren't supported in current versions of Windows.)

    I believe that this INF ships inbox for Windows Vista and later, so the customer doesn't need a driver download on any supported version of Windows client.  However, prior to Windows 7, I think the inbox INF would still get you the RNDIS 5.x implementation.

    Don't use someone else's VID without permission.

    Friday, November 30, 2018 7:56 PM

All replies

  • There is indeed a generic ID you can use.  The USB-IF has reserved Class EF, Subclass 04 to target RNDIS.  Windows ships with a generic INF named rndiscmp.inf that matches the hardware ID of "USB\Class_EF&SubClass_04&Prot_01", which corresponds to RNDIS-over-Ethernet.  (The other protocol types aren't supported in current versions of Windows.)

    I believe that this INF ships inbox for Windows Vista and later, so the customer doesn't need a driver download on any supported version of Windows client.  However, prior to Windows 7, I think the inbox INF would still get you the RNDIS 5.x implementation.

    Don't use someone else's VID without permission.

    Friday, November 30, 2018 7:56 PM
  • BTW, if for some reason you cannot change the device class/subclass, then you can also expose an "RNDIS" compatid using the MSOS descriptor.  Either approach will match the same built-in INF.
    Friday, November 30, 2018 8:03 PM
  • Jeffery, thanks for the information.  So there is no Microsoft or open source VID/DID I could use?  I need to create an inf for my android device, purchase a VID/DID, sign, certify, and publish? 
    Thursday, December 6, 2018 5:50 PM
  • It doesn't matter what VID/PID you use, as long as you set the Class + Subclass to the standard one.
    Thursday, December 6, 2018 6:54 PM
  • I am a little lost.  On my android device I can set VID, and PID, but not sure how to set the USB\Class_EF&SubClass_04&Prot_01
    Friday, December 7, 2018 6:21 AM
  • Thanks Jeffrey, i am getting closer.  setting the subclass and protocol and now i have RNDIS in my device manager, but it had an issue with the driver.  I used this method to install the Microsoft Remote NDIS Compatible Device and it work. https://developer.toradex.com/knowledge-base/how-to-install-microsoft-rndis-driver-for-windows-7

    Install the compatible driver was a bit ominous, but it appears to work.

    In the inf file i have 2 options.  MSID and CompatID.  Any thoughts on what is best.

    [RndisDevices.NTamd64]
    ;when MSID is used for RNDIS Ethernet devices over USB transport
    %RndisDevice%    = RNDIS.NT.6.0, USB\MS_COMP_RNDIS&MS_SUBCOMP_5162001
    ;when CompatID is used for RNDIS Ethernet devices over USB transport
    %RndisDevice%    = RNDIS.NT.6.0, USB\Class_EF&SubClass_04&Prot_01


    • Edited by johnwendell Friday, November 22, 2019 1:46 AM
    Friday, November 22, 2019 1:45 AM