vnic example for FRDM-K64F not enumerating on Windows 10

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

vnic example for FRDM-K64F not enumerating on Windows 10

2,023 Views
jesseb
Contributor I

I am using the FRDM-K64F board and trying to run the usb_device_cdc_vnic example. The example seems to run but I don't see the network adapter on my computer (Windows 10). Here is the debug output I get:

USB device CDC virtual nic demo
RNDIS_Halt_Command
RNDIS_Halt_Command

Tags (2)
0 Kudos
13 Replies

1,712 Views
mjbcswitzerland
Specialist V

Jesse

I just realised that you are trying a VNIC (RNDIS I expect) and not just VCOM. There is not a binary there but if you tell me which configuration you actually need - see chapter 8 of http://www.utasker.com/docs/uTasker/uTaskerRNDIS.pdf for possibilities - I could put one there for you.

Sorry for the misunderstanding.

Regards

Mark

0 Kudos

1,712 Views
jesseb
Contributor I

Hey Mark,

Thanks for your replies. I'm still running into trouble with the VNIC example, and yes it is RNDIS. I moved on to get Ethernet and VCOM working separately and got those working in the examples and integrated in my application without much issue. My final setup needs Ethernet connected to one computer and the USB VNIC with RNDIS connected to another computer. I already have an LWIP TCP server running over the Ethernet connection and I want to run a client TCP socket to the other computer with the USB VNIC as the interface. The example VNIC seems to be coming up as a serial device and not a network adapter.

Thanks again!

Jesse

0 Kudos

1,712 Views
mjbcswitzerland
Specialist V

Hi Jesse

See chapter 10 of http://www.utasker.com/docs/uTasker/uTaskerRNDIS.pdf for some details about Windows installation.

It sounds like you are making good progress and if you keep plugging away you will sure be able to work out what detail is missing (Tip: use a USB analyser and compare the details when connecting an android phone in tethered mode and your HW).

Good luck

regards

Mark


uTasker - for immediate and complete Kinetis solutions

0 Kudos

1,712 Views
jesseb
Contributor I

Mark,

I really don't know what driver I should use. I've tried few options from these two sites for drivers:

RNDIS Drivers Download for Windows 10, 8.1, 7, Vista, XP 

Realtek 

None of them would work when trying to install as in chapter 10. This may be because I haven't enabled install of unsigned drivers. Is there a driver out there that I won't have to do that with.

Thanks!

Jesse

0 Kudos

1,712 Views
mjbcswitzerland
Specialist V

Jesse

You don't need to install a driver - you choose "Let me pick from a list of device drivers on my computer" and then tell it to use "Remote NDIS based Internet Sharing Device", which is under the "Network adapters" type.

Regards

Mark

0 Kudos

1,712 Views
mjbcswitzerland
Specialist V

Jesse

I have attached a FRDM-K64F RNDIS reference binary that you can load to your board. It then appears as a VNIC and the installation works exactly as shown in the document (I just checked on Win 10 to be sure).

You can use it as installation reference to see whether your firmware or your method is causing the issues.

Regards

Mark

uTasker - for immediate and complete Kinetis solutions

0 Kudos

1,712 Views
jesseb
Contributor I

That works. I suppose the VNIC example has some sort of incompatibility with Windows 10 then. I haven't done anything except import and run the example. I'll have to run some more debugging on this.

0 Kudos

1,712 Views
mjbcswitzerland
Specialist V

Jesse

Change the PID when you test to ensure that Win 10 make a new installation (and doesn't think that it is a VCOM that it has already registered before on that VID/PID).

Also, beware that automatic VCOM installation in Win 10 doesn't seem to work with VNIC - it thinks it is a VCOM and installs it as such, even if it should be VNIC (based on VCOM). Therefore make sure that in the returned configuration descriptor the "device class communication and control" fields are set to 2:0:0 (meaning install manually) and not 2:2:0 (which tells Win 10 to install VCOM automatically).

Regards

Mark

uTasker - for immediate and complete Kinetis solutions

0 Kudos

1,712 Views
jesseb
Contributor I

Mark,

Wow, that worked. Thanks for sticking with me on this one you've really been amazing. I know I speak for lots of others whom you've helped as well.

Thank you, thank you!

Jesse

For anyone else new to USB and working with the USB VNIC example for MCUXpresso IDE using FreeRTOS - I simply changed #define USB_CDC_VNIC_CIC_SUBCLASS (USB_CDC_ABSTRACT_CONTROL_MODEL) to #define USB_CDC_VNIC_CIC_SUBCLASS (USB_DEVICE_SUBCLASS) in usb_device_descriptor.h. That got the example working for me on Windows 10.

0 Kudos

1,712 Views
jesseb
Contributor I

That option works in windows 7 but unfortunately that option is not available in windows 10. The device does not come up in other devices. Rather, it is being enumerated as a COM port. 

0 Kudos

1,712 Views
mjbcswitzerland
Specialist V

Hi Jesse

First check your HW with a reference binary from here:
- http://www.utasker.com/kinetis/FRDM-K64F.html
which will verify the HW and that you haven't set something up incorrectly in your build.

Just drag and drop the file to your board when it appears as an external hard drive.

There are checks also for multiple CDCs and UART bridges, or USB-MSD to an SD card.

Regards

Mark

0 Kudos

1,712 Views
jesseb
Contributor I

I tried running an Ethernet connection from a rasperry pi through this example and I was able to connect to the internet from the pi. I didn't see the enumeration when I typed lsusb into the console though.

Also, which binary should I try with the link you provided? Any?

0 Kudos

1,712 Views
mjbcswitzerland
Specialist V

Jesse

There is a description for each binary and most have USB and/or Ethernet. It takes only a few seconds to load each one so try several to be sure.
If you are also interested in Ethernet it includes a web server, FTP and Telnet (maybe some other services too) and you can serve from the SD card (web server) and interact with the SD card via USB or FTP.
There is also a reference with MQTT client operation, which is popular for IoT work.

The USB operation is compatible with Windows, Linux, including Rasberry PI or Android (see image below) of a K64 talking to Android.

Regards

Mark

pastedImage_1.png

0 Kudos