Linux 为什么';tZaber设备是否显示在dev目录中?
我的Zaber设备是X-MCB2,它通过USB连接到我的电脑。命令lsusb可以如下所示显示其信息,但在/dev目录中找不到它 总线003设备023:ID 2939:495b 还有另一个Arduino设备也连接到我的电脑。与Zaber设备不同,这个Arduino设备工作良好,它在/dev中的名称是ttyACM0 即使我拔出了Arduino设备,Zaber设备仍然不会显示在/dev目录中Linux 为什么';tZaber设备是否显示在dev目录中?,linux,zaber,Linux,Zaber,我的Zaber设备是X-MCB2,它通过USB连接到我的电脑。命令lsusb可以如下所示显示其信息,但在/dev目录中找不到它 总线003设备023:ID 2939:495b 还有另一个Arduino设备也连接到我的电脑。与Zaber设备不同,这个Arduino设备工作良好,它在/dev中的名称是ttyACM0 即使我拔出了Arduino设备,Zaber设备仍然不会显示在/dev目录中 我的linux内核是2.6.32,这个Zaber设备不需要额外的驱动程序。我通过以下链接解决了这个问题: ec
我的linux内核是2.6.32,这个Zaber设备不需要额外的驱动程序。我通过以下链接解决了这个问题:
echo“0x2939 0x495b”>/sys/bus/usb/drivers/cdc\u acm/new\u id
感谢您发布您的答案
问题的可能原因是Zaber控制器使用CDC ACM实现USB,并将USB接口描述符的协议字段设置为0(表示设备不接受AT命令)
在Linux 2.6.32中,CDC ACM内核驱动程序,它应该处理设备
对于这种类型,其编写方式使其无法控制
协议字段为0的设备(而是具有特定的
它接受的协议编号,但该列表不包括0)。相反,您必须像在发布的解决方案中那样手动附加它
这个问题在内核2.6.36中得到了修复
以下是将通过USB手动连接Zaber控制器的命令列表:
X-MCB2:
echo“0x2939 0x495b”>/sys/bus/usb/drivers/cdc\u acm/new\u id
X-MCB1:
echo“0x2939 0x495a”>/sys/bus/usb/drivers/cdc\u acm/new\u id
A-MCB2:
echo“0x2939 0x459”>/sys/bus/usb/drivers/cdc_acm/new_id
命令“lsusb-t”,Zaber设备的驱动程序为空,而Arduino设备的驱动程序为cdc_acm。两者都是1200万美元。