Ruby - 以跨平台方式从串行端口获取USB VID / PID

时间:2014-01-18 05:58:10

标签: ruby linux macos serial-port usb

我正在编写一个Ruby gem,它将通过USB通过串口与设备进行通信。我需要处理几种不同的通信格式,格式是使用PID / VID值的组合确定的。

我希望宝石能够跨平台(Linux / Mac / Windows),但我会满足于Linux和Mac。

使用最少数量的宝石,Ruby中最便携的方式是什么,可靠地检测串口的USB PID / VID信息?

2 个答案:

答案 0 :(得分:2)

我最终解析了Mac& E下的命令行程序的输出。 Linux,在Windows下似乎没有一个解决方案,没有编写自定义C扩展。

答案 1 :(得分:1)

为了澄清一下,您需要获取与特定COM端口关联的已连接USB转串口适配器的VID和PID吗?假设是这种情况,你应该能够用libusb做到这一点。看起来已经存在一些Ruby代码:https://github.com/larskanis/libusb

免责声明 - 我没有必要为USB编写任何跨平台,因为我主要是Windows开发人员,我使用过WinUSB。我只是简单地看一下libusb API,它似乎有你需要的东西。