pi-zero usb otg 端口在引导期间被识别为未知设备

pi-zero usb otg port identified as unknown device during boot

我目前有一个 pi 零,它充当蓝牙键盘 - 当连接到计算机时 - 键入从 SD 卡读取的文本。我遵循了本教程 https://www.rmedgar.com/blog/using-rpi-zero-as-keyboard-setup-and-device-definition。我只使用 USB“数据”端口,为其供电和发送数据。

此设置在我测试过的几乎所有计算机上都运行良好,只是在某些 Windows 7 系统上它根本无法运行。它不工作的系统将 pi 零识别为“未知设备”,然后永远不会将其“重新识别”为它应该是的键盘。
所有其他系统首先将该设备识别为“未知设备”,并在几秒钟后将其“重新识别”为实际键盘。 IMO 问题是 scruss 在这个 post 中提到的问题:https://raspberrypi.stackexchange.com/questions/60056/cant-see-raspberry-pi-zero-via-usb-otg-on-windows-10

我正在寻找解决此问题的可能性。是否有可能以在启动期间不识别为任何 USB 设备的方式配置 pi 零。也许在启动过程中,数据 USB 端口仅用作电源 USB 端口。 或者我可以在启动后关闭和打开 USB 端口,以便从计算机的角度来看,USB 设备看起来像是被移除并重新连接??

我在一位同事的帮助下解决了这个问题。 解决方案似乎非常简单——只需删除 USB 小工具并重新添加即可。 所需的代码同样简单:

#Remove usb gadget    
echo "" > UDC
#Add it again
ls /sys/class/udc > UDC