問題
表題の通りで、macOS Catalinaにおいて、VirtualBoxにBluetooth USB Dongleが認識されない問題があります。
Bluetooth USB Dongle自体はVirtualBoxのUSB一覧に表示されるのですが、選択してattachしようとすると、以下のエラーが発生します。
Failed to attach the USB device XXX to the virtual machine YYY.
Details:
Failed to create a proxy device for the USB device. (Error: VERR_READ_ERROR).
Result Code: NS_ERROR_FAILURE (0x80004005)
Component: Console
Interface: IConsole {8ab7c520-2442-4b66-8d74-4ff1e195d2b6}
各バージョンは以下の通り。
macOS: 10.15.1 (19B88)
VirtualBox: Version 6.0.14 r133895 (Qt5.6.3)
解決策
以下のコマンドを実行して、BT USBを抜き差しすると、認識されるようになります!
$ sudo nvram bluetoothHostControllerSwitchBehavior=never
Ref: https://forums.virtualbox.org/viewtopic.php?f=8&t=95479&start=15
Host/GuestともにOS再起動は不要です。
どうやら、Bluetooth Host Controllerに関連するデフォルト設定が変わったようですね。なので、その他のUSBデバイスには、アタッチの問題は発生しません。
なお、このままだとiPhoneなどをFinderでマウントすることができなくなるようです。(Xcodeの接続には問題ありません)
用がなくなったら、以下で元に戻しましょう。
$ sudo nvram bluetoothHostControllerSwitchBehavior=always
bluetoothHostControllerSwitchBehavior
については、こちらに説明があります。
https://developer.apple.com/library/archive/technotes/tn2295/_index.html
最後に
この問題はVirtualBoxの問題のため、Guest OSには関係なく発生します。
この記事で、多くの方がこの厄介なトラブルから救われることを願っています。