MacOS High Sierra 10.13.3 FTDI ドライバー修正 - 2018 年 1 月 31 日

MacOS High Sierra 10.13.3 FTDI ドライバー修正 - 2018 年 1 月 31 日

私はハードウェア プロジェクトのために、FTDI FT232RL を使用して自分のコンピューター (OSX 10.11 El Capitan を実行している MacBookPro) と通信するカスタム PCB を操作しようとしています。シリアル コマンドを送信するために Matlab を使用していますが、ClearToSend (CTS) ピンが明らかに「ハイ」(オフ) になっているという問題が発生していますが、それはまた別の話です。

しかし、今の問題は、Mac がデバイスを取り外した後にデバイスを「解放」しない (他に何と呼べばいいのかわかりません) ことです。デバイスを取り外して別の USB バスに置くことはできますが、実際にこれを行うことができるのは 1 回だけです。取り外すと同じことが再び起こるためです。この問題を解決する唯一の方法は、コンピュータ全体を再起動することであるため、開発が困難になっています。これらのデバイスを解放/リセット/クリアするにはどうすればよいでしょうか。

開けたらシステム情報>ハードウェア>USB基本的に、デバイス ツリーに同じデバイスが 2 回リストされていることがわかります。

ここに画像の説明を入力してください

これにより、(Matlab またはターミナルのいずれかで) 試してみると、ls /dev/tty.*デバイスが接続されていてデバイス ツリーに 2 回表示されているにもかかわらず、デバイスがリストされず、実質的にブロックされます。どうすればよいでしょうか。

バージョン 2.3 の FTDI ドライバをインストールしましたが、それ以外は正常に動作しているようです。この問題の原因を突き止めるために他にどのような情報を提供できるか教えてください。よろしくお願いします。

答え1

私も、Sierra 上で Arduino Nano クローン (FTDI FT232RL ブリッジも使用) と通信しているときに同じ問題が発生しました。

/Library/Extensions/FTDIUSBSerialDriver.kext私の場合、Apple が OS 自体に FTDI ドライバーを同梱していることがわかったので、FTDI ドライバーを削除する ( ) 方法が効果的だったようです/System/Library/Extensions/AppleUSBFTDI.kext

両方のドライバーを同時にアクティブにすると競合が発生し、USB ポートが占有されると思います。

答え2

MacOS High Sierra 10.13.3 FTDI ドライバー修正 - 2018 年 1 月 31 日

著者: Garrett Johnson 開発ボードが新しい MacBook で認識されないことにうんざりしていませんか? C ポートのせいにしていませんか?

問題: FTDI デバイスは MacOS High Sierra では使用できません。私の場合、C-Ports を搭載した 2016 Macbook Pro に FT232R チップ デバイスを接続するのに問題がありました。デバイスは USB デバイス ツリー (システム情報 -> ハードウェア -> USB) に表示されましたが、Arduino や Coolterm を使用したシリアル デバイスとしては表示されませんでした。- 注: ターミナルでコマンド (ls /dev/cu*) または (ls /dev/tty*) を実行しても表示されませんでした。

解決:

3) FTDIのウェブサイトから2.4.2ドライバをダウンロードするhttp://www.ftdichip.com/Drivers/VCP.htm インストールします。インストールは成功しますが、Apple の組み込み FTDI ドライバーが原因で動作しません。

2) コンピュータを再起動し、電源を切り、再起動時に CMD + R を押したままにして、リカバリ モードに入ります。

3) リカバリモードで、画面上部のユーティリティからターミナルを開き、次のように入力してシス​​テム整合性保護を一時的に無効にします。

csrutil disable

変更を有効にするためにコンピューターを再起動するように求められます。

4) 再起動時に、Apple FTDI ドライバーを無効にする必要があります (注: これはいつでも元に戻せるので、心配しないでください)。 - ターミナルを開き、次のように入力します。

cd /system/library/extensions

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 シリアル デバイスがすべて正常に読み込まれるはずです。

**注: 私はこれを、MacOS 10.13.3 を搭載した 2016 Macbook Pro で、次のデバイス/アプリでテストしました: 1) ターミナル内の画面、CoolTerm、Bus Pirate V3.6、JTAGulator、Arduino Uno、Adafruit Mega AT、Arduino Mega クローン。

答え3

私が抱えていたパズルのもう 1 つのピースを解決する追加の回答を提供したいと思います。上記の Garrett Johnson の優れた回答に従っても、FTDI ドライバーはまだ動作しませんでした。システム環境設定の [セキュリティとプライバシー] タブが、ドライバーの読み込みを許可するトラックパッドの [許可] ボタンのクリックを受け入れなかったことが判明しました (これはおかしいように聞こえますが)。インストール ログに次のメッセージが表示された後、この方法を採用しました。

2018-09-15 16:21:04-04 host installd[1160]: kextcache: Kext rejected due to system policy: <OSKext 0x7f869ab80530 [0x7fff87e7aaf0]> { URL = "file:///Library/StagedExtensions/Library/Extensions/FTDIUSBSerialDriver.kext/", ID = "com.FTDI.driver.FTDIUSBSerialDriver" }

もちろん、そこで「許可」をクリックしましたが、何も起こらなかったようです。ボタンはクリックを記録しましたが、確認のためのウィンドウがポップアップしたり、その他の何かが表示されたりしませんでした。インターネットを検索したところ、Karabiner の github ページで、システム環境設定でマウス クリックを許可するように強制するいくつかのソリューションについて説明している長いスレッドを見つけました。

https://github.com/tekezo/Karabiner-Elements/issues/1017

どうやら、トラックパッドのアクティビティを妨害するソフトウェアが動作していたようです。私の場合は、リストに載っている何人かの人とは異なり、Chrome ではありませんでした。それが何だったのか全くわからず、少し心配です。私の場合、うまくいった解決策は、マウス キーを有効にしてから、「I」を押して「許可」ボタンの上でマウスをクリックすることでした。その時点で、ウィンドウがポップアップし、FTDI ドライバーの読み込みを許可できました。

まだ首を振ってるよ!

答え4

私も同じ問題を抱えていました。Creality Ender 3 インストール ノートのリンクから FTDI ドライバーをインストールしましたが、リンクによってバージョン 2.2.18 がインストールされました。これは OS X 10.8 以下用です (私は Sierra 10.12 を実行しています)。ドライバーは動作しましたが、リリースされませんでした。使用中のドライバーを削除しsudo rm /System/Library/Extensions/FTDIUSBSerialDriver.kext/、バージョン 2.4.2 をダウンロードしてインストールしました。これですべて動作します。

関連情報