我通过docker-machine创建了一个虚拟框:
$ docker-machine create --driver virtualbox default
在Guest-OS中,我想访问我的USB-Serial设备,这是一个北欧nRF52840 DevKit,在macos中列为/dev/tty.usbmodem144241
。
但是,此设备未被virtualbox列为USB设备。我也尝试将设备添加为端口模式“Host-Device”的串口,如in this link所述,但没有任何成功:
如果我将串行端口添加为.tty-usbmodem
,则虚拟框将挂起“正在启动”,我必须终止所有虚拟机进程或断开串行电缆才能重新启动。如果我使用.cu-usbmodem
虚拟机启动但立即崩溃。
我这里的想法已经不多了。我坚持这个问题,因为docker for mac不支持没有虚拟机的--devices
映射,而对于虚拟机我无论如何都无法管理添加端口。
关于我还能尝试什么的任何想法?
因此,事实证明,当设备实际连接时,virtualbox非常挑剔,并且无法像我使用VMWare那样无缝地工作:
SEGGER J-Link
重要的事实是,在虚拟机启动时,不得连接设备。因此,添加设备的步骤如下:
现在每次要将设备与虚拟机一起使用时:
docker-machine stop default
)docker-machine start default
)/dev
下列出它,例如/dev/ttyACM0
在盒子启动后取出/插入已过滤的设备也可以正常工作(如果您在启动设备之前忘记断开设备,则无需再次关闭虚拟机。只需等待盒子启动,拔下插头即可在,应该是好的)。