【问题标题】:How to write to USB not showing up as Serial device如何写入 USB 不显示为串行设备
【发布时间】:2013-10-08 21:12:35
【问题描述】:

作为一个宠物项目,我想通过 USB 从血糖仪中获取数据。但该设备不会显示为串行设备。我需要帮助来确定我的下一步是什么,非常欢迎提供文档和/或示例。

这是我第一次尝试通过 USB 进行通信。

我只从nrjavaserial(我在 Mac 上)将这些设备列为串行设备:

/dev/cu.Bluetooth-PDA-Sync
/dev/tty.Bluetooth-Modem

但是如果我运行下面的命令,我可以看到有关设备的信息:

$ system_profiler SPUSBDataType

Hub:
      Product ID: 0x2513
      Vendor ID: 0x0424  (SMSC)
      Version:  b.b3
      Speed: Up to 480 Mb/sec
      Location ID: 0xfd100000 / 2
      Current Available (mA): 500
      Current Required (mA): 2

        Abbott Stereo Plug Cable:

          Product ID: 0x3410
          Vendor ID: 0x1a61  (Abbott Diabetes Care)
          Version: 1,01
          Speed: Up to 12 Mb/sec
          Manufacturer: Abbott Labs
          Location ID: 0xfd120000 / 4
          Current Available (mA): 500
          Current Required (mA): Unknown (Device has not been configured)

当我在 Linux 中测试类似的命令(lsusb 和 ls /dev/ttyS*)时,它没有被列为串行设备,这让我觉得我遗漏了一些明显的东西。

我看到有人使用 C# 和串行 USB 与类似设备 (The-Beginnings-of-a-Glucose-Meter-Downloader) 进行通信的示例,这让我相信我应该能够对这个设备做同样的事情。

【问题讨论】:

  • 并非所有设备都将自己暴露为串行端口。设备列出的兼容 ID 是什么?
  • 没有完全按照你的意思。您指的是 /dev/tty* 列表还是上面 Abbott Stereo Plug 电缆下列表中的 id? (他是实际设备,电缆是 USB 的立体声插头)
  • 我不知道在 Linux 下在哪里可以找到它,但在 Windows 下,有一个用于 USB 设备的“兼容 ID”的位置。这将适用于您的电缆。虽然,既然您提到您的 USB 设备实际上是一个电缆适配器,我怀疑它实际上是一个 USB/串行适配器。您是否尝试过 PL2303 的所有常用驱动程序?制作自己的电缆可能更容易。设备上可能是 3.3V 串口。
  • 嗯,我从雅培买了一条全新的电缆,它是立体声插头到 USB 电缆。在这种情况下,我认为新电缆不会有帮助。我认为这是一个问题,即我如何与不显示为串行设备的设备进行通信。如果我可以将“原始”数据发送到某个 tty 以及如何确定要使用哪个 tty。
  • 不,听着,那样不行。您需要的是您的那条电缆的串行驱动程序。如果你没有,你就不能使用它。就是这么简单。您建议的是编写自己的驱动程序。如果您真的想要这样做,那么您需要重新表述您的问题。你的那根电缆不仅仅是一根电缆,它是某种 USB 设备,可能是 USB 转 3.3V 串行适配器。要使用它,您需要将虚拟串行设备公开给您的操作系统的驱动程序。

标签: java serial-port usb


【解决方案1】:

正如 Brad 建议的那样,答案是找出正确的 USB 驱动程序。在我的例子中,productId 是 0x3410,它是 TUSB3410 串行转 USB 适配器电缆。

这是我为最终在 Linux 中获得工作串行端口所做的工作: sudo modprobe ti_usb_3410_5052 vendor_3410=0x1a61 product_3410=0x3410

之后我可以将命令 mem 发送到我的 Abbott Freestyle Lite 并获取读数,非常好。

还有一个unofficial Mac OS X driver我还没试过。

【讨论】:

  • Abbot Freestyle Lite 设备的 ID 是否包含在读数中?我得到了一些看起来像 ID 的东西,但我不确定...... :)
  • 这个话题有两年了。我不记得列表是什么样的。
猜你喜欢
  • 2019-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-04
相关资源
最近更新 更多