RobertCNelson / bb-kernel

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

USB Serial Gadget doesn't work with windows 7 (after Debian 7.9 2015-11-12 4GB SD LXDE )

HarelAshwal opened this issue · comments

LK"I

Hi,
I bought a new BBB with version Debian 7.9 2015-11-12 4GB SD LXDE .
With this version the USB Serial gadget works perfectly on windows 7.
But if i'm upgrading the FW to something more up-to-date (for instance Debian 7.11 2015-06-15 4GB SD LXDE , or latest - Debian 9.1 2017-08-31 4GB SD LXQT)
Windows can't recognize "CDC Serial" driver, it placed it under "Other devices" with Device manager, and the BBB usb serial port stop working (it does generate it , but it can't function currectly).
I also tried to install latest drivers, it still doesn't work.

Any suggestions?
cdc_serial

Harel

@HarelAshwal correct, this only affects windows 7..

In Windows 8, Microsoft introduced a built-in cdc driver, so while this work in Windows 8/8.1/10, it's broken in Windows 7.

The reason for this change:

Every 6 months Microsoft would break our "signed" driver and we'd have to $ign it again. Around 6 months ago, we figured out how to use Window's built-in drivers for Serial and Ethernet.

While this broke in WinXP and Vista, those were both EOL.

For Windows 7, we haven't figured out how to work around the CDC Serial issue (that you see).

While they both work fine in Windows 8/8.1/10.

So we just need to figure out how to get the Windows 8 cdc driver into Windows 7...

Regards,

https://msdn.microsoft.com/en-us/library/windows/hardware/ff538820(v=vs.85).aspx

In Windows 8.1 and earlier versions, Usbser.sys is not automatically loaded. To load the driver, you need to write an INF that references the modem INF (mdmcpq.inf) and includes [Install] and [Needs] sections.

LK"I

Thanks for the quick replay!
So currently it is not supported with windows 7? Or I can make it work if one will create the proper driver?

Yeah, with a correctly crafted *.inf file, it would work....

LK"I

Do you think someone from the community can create such file? might be super-helpful for everyone running Windows 7 ....

LK"I
RCN,
Can you guide me on how to do that?
i've searched the net and found something similar (NXP product):

[DeviceList.NTx86]
%DESCRIPTION%=DriverInstall,USB\VID_2504&PID_0300

[DeviceList.NTamd64]
%DESCRIPTION%=DriverInstall,USB\VID_2504&PID_0300

but how do i know the PID/VID of the BBB USB device?

Harel

Same thing happened to me today and I tried to amend the ini file. CDC Serial of Beaglebone is USB\VID_1D6B&PID_0104&REV_0404&MI_04, so I duplicated the file under BEAGLEBONE DRIVE\Drive\Windows\src\files\CDCACM\linux-cdc-acm.inf. Change VID and PID under the [DeviceList.NTamd64] & [DeviceList], also renamed the device to CDC Serial for a better recognition. Then manually reinstall the driver by pointing it to the ini folder.

Another COM (CDC Serial) port should popup and you should be able to login using Tera Term as before.

Although is a very old issue but hope can help some one.

Attached is the driver.
linux-cdc-acm_fix.txt

@ake-1987 Thanks for your driver. I installed it and rebooted my win7(virtual machine on my Mac), but unluckily the CDC serial port was still not recognized. Was it the problem of the virtual machine? Any help will be appreciated.

Has this issue been resolved? I was trying to upgrade to latest image and i am getting this error on windows 7

@dizzy0ny sorry, it hasn't been resolved.. Microsoft never back-ported the Windows 8 cdc driver, to Windows 7 that makes things work in Windows 8/10/etc.. And now that windows 7 is eol, it'll never be fixed..

Signed *.inf welcome..

Closing, Windows 7 went eol in January 2020...

Regards,