如何释放/重置串口 FTDI 设备 - Mac OSX

thk*_*emp 20 usb matlab ftdi macos

我正在尝试使用自定义 PCB,该 PCB 使用 FTDI FT232RL 与我的计算机(运行 OSX 10.11 El Capitan 的 MacBookPro)通信以进行硬件项目。我正在使用 Matlab 发送串行命令,但在 ClearToSend (CTS) 引脚显然“高”(关闭)时遇到了一些问题,但那是另一回事了。

但是我现在的问题是我的 Mac 在我拔掉它之后不会“释放”(不知道还有什么可以称它为)设备。我可以拔掉设备并将其放在另一个 USB 总线上,但我真的只能这样做一次,因为如果我拔掉插头,同样的事情会再次发生——这让我的开发变得困难,因为我找到了解决这个问题的唯一方法就是重启整个电脑。如何释放/重置/清除这些设备?

如果我打开System Information>Hardware>USB,我基本上可以看到相同的设备在设备树上列出了两次。

在此处输入图片说明

这使得当我尝试ls /dev/tty.*(在 Matlab 或终端中)设备未列出时,它基本上被阻止,即使它已插入并在设备树上显示两次。我该怎么办?

我已经安装了 2.3 版 FTDI 驱动程序,但它似乎可以正常工作。请让我知道我可以提供哪些其他信息来深入了解这一点。谢谢

小智 11

MacOS High Sierra 10.13.3 FTDI 驱动程序修复 - 2018 年 1 月 31 日

作者:Garrett Johnson 厌倦了你的开发。在您闪亮的新 macbook 上无法识别电路板?你是在责怪那些该死的 C 端口吗?

问题:FTDI 设备在 MacOS High Sierra 中无法使用。就我自己而言,我在将 FT232R 芯片设备连接到带有 C 端口的 2016 年 Macbook Pro 时遇到了问题。这些设备出现在我的 USB 设备树中(系统信息 -> 硬件 -> USB),但没有显示为使用 Arduino 或 Coolterm 的串行设备。- 注意:它们在终端中使用命令 (ls /dev/cu*) 或 (ls /dev/tty*) 时不会出现

解决方案:

3) 从FTDI 的网站http://www.ftdichip.com/Drivers/VCP.htm下载2.4.2 驱动程序 并安装。安装会成功,但由于 Apple 内置的 FTDI 驱动程序,它们将无法工作。

2) 重新启动计算机并进入恢复模式 通过关机并在重新启动时按住 CMD + R。

3) 在恢复模式下,从屏幕顶部的实用程序打开终端,然后键入以下内容以暂时禁用系统完整性保护:

csrutil disable

计算机将提示您重新启动以使更改生效。

4) 在重新启动时,我们现在需要禁用 Apple FTDI 驱动程序(注意:这可以随时撤消,所以不要担心)。- 打开终端并输入以下内容。

cd /system/library/extensions
Run Code Online (Sandbox Code Playgroud)

sudo mv AppleUSBFTDI.kext AppleUSBFTDI.disabled

sudo touch /System/Library/Extensions

chgrp -R wheel FTDIUSBSerialDriver.kext

sudo mv D2zzHelper.kext D2xxHelper.disabled

现在您将成功禁用 Apple 的内置 FTDI 驱动程序并将其替换为 FTDI v2.4。

5) 在恢复模式下重新启动计算机。关机,按住 Command + R 并在“实用工具”选项卡中打开终端。输入以下内容以重新启用 Apple 的系统完整性保护

csrutil enable

最后!最后一次重启,然后您的 USB 串行设备应该都正确加载了!

**注意:我已经在 2016 Macbook Pro 和 MacOS 10.13.3 的以下设备/应用程序上进行了测试:1) 终端内的屏幕、CoolTerm、Bus Pirate V3.6、JTAGulator、Arduino Uno、Adafruit Mega AT、Arduino巨型克隆。

  • 很酷的修复。它也适用于 Jewelbots 的 iMac。小问题: 1. Apple 的 KEXT 位于 /System/Library/Extensions/(HFS+ 和 APFS 是大小写保留的,终端是挑剔的)。2. 不需要 chgrp。安装后组已经是轮子了。3. FTDIUSBSerialDriver.kext 在 /Libray/Extensions/ 和 /Library/StagedExtensions/Library/Extensions/ 不在 /System/Library/Extensions/ 中。4. D2zzHelper.kext 不存在 (2认同)

小智 9

我在与 Arduino Nano 克隆(也使用 FTDI FT232RL 桥接器)交谈时遇到了同样的问题,尽管是在 Sierra 上。

似乎对我有用的实际上是删除了 FTDI 驱动程序 ( /Library/Extensions/FTDIUSBSerialDriver.kext),在发现 Apple 随操作系统本身提供了 FTDI 驱动程序 ( /System/Library/Extensions/AppleUSBFTDI.kext) 之后。

我认为同时激活两个驱动程序会导致冲突,从而占用 USB 端口。