CH34x 驱动程序/kext 安装 OSX Sierra

oop*_*ops 6 macos driver kernel-extension

我正在尝试让 OSX Sierra 上的驱动程序运行。但没有结果。

我的研究使我访问了以下站点:https : //github.com/adrianmihalko/ch340g-ch34g-ch34x-mac-os-x-driver https://tzapu.com/ch340-ch341-serial-adapters-macos- sierra/ https://blog.sengotta.net/signed-mac-os-driver-for-winchiphead-ch340-serial-bridge/ http://www.wch.cn/download/CH341SER_MAC_ZIP.html(公布为最新版本)

在我尝试安装它们之前,我在恢复模式下尝试过这个(用 ? + R 重新启动)。

csrutil enable --without kext
Run Code Online (Sandbox Code Playgroud)

后来我尝试安装驱动程序。

这没有解决,所以我也在恢复模式下禁用了 csrutil。

csrutil disable
Run Code Online (Sandbox Code Playgroud)

我安装每个驱动程序的步骤

虽然 csrutil 被禁用。

  1. 删除旧驱动程序
  2. 安装新的

卸载驱动程序:

$ sudo su
$ find / | grep usbserial/Library/Extensions/usbserial.kext
...
/Library/Extensions/usbserial.kext/Contents
/Library/Extensions/usbserial.kext/Contents/_CodeSignature
/Library/Extensions/usbserial.kext/Contents/_CodeSignature/CodeResources
/Library/Extensions/usbserial.kext/Contents/Info.plist
/Library/Extensions/usbserial.kext/Contents/MacOS
/Library/Extensions/usbserial.kext/Contents/MacOS/usbserial
/Library/Extensions/usbserial.kext/Contents/Resources
/Library/Extensions/usbserial.kext/Contents/Resources/en.lproj
/Library/Extensions/usbserial.kext/Contents/Resources/en.lproj/InfoPlist.strings
...
$ rm -rf /Library/Extensions/usbserial.kext
$ find / | grep wch
...
/private/var/db/receipts/com.wch.ch34xinstall.mykextdir.pkg.bom
/private/var/db/receipts/com.wch.ch34xinstall.mykextdir.pkg.plist
...
$ rm -rf /private/var/db/receipts/com.wch.*
$ csrutil status
System Integrity Protection status: disabled.
Run Code Online (Sandbox Code Playgroud)

安装新的:

  • 只需安装 .pkg
  • 重启
  • 在 /dev 中搜索驱动程序
  • 没有司机上市

我错过了什么吗?

编辑:我发现 kext 没有加载。但为什么?  未加载 kext

Edit2:现在我加载了 kext 但串行驱动程序没有显示在 /dev 中。

tim:~$ sudo kextload -b com.wch.usbserial
Password:
tim:~$
Run Code Online (Sandbox Code Playgroud)

已加载

它没有显示在 kextstats 中。

tim:~$ kextstat | grep com.wch.usbserial
tim:~$
Run Code Online (Sandbox Code Playgroud)

但是可以找到。

tim:~$ kextfind -b com.wch.usbserial
/System/Library/Extensions/usbserial.kext
/Library/Extensions/usbserial.kext
Run Code Online (Sandbox Code Playgroud)

也许只是kext不起作用?

tim:~$ sudo kextutil -b com.wch.usbserial
Password:
Warnings:
    Dependency lacks appropriate value for OSBundleRequired and may not be availalble during early boot:
        com.apple.iokit.IOSerialFamily - Safe Boot
Run Code Online (Sandbox Code Playgroud)

oop*_*ops 1

它正在工作

我移动了 SiLabsUSBDriver(备份到我的桌面),插入设备,我就可以使用它了。

当没有插入带有串行 USB 端口的设备时,串行驱动程序不会出现在 /dev/ 中!

有关驱动程序的更多信息,请参阅以下屏幕截图。 SiLabsUSBDriver 屏幕截图