Linux上的Cygnal Integrated Products串行端口 [英] Cygnal Integrated Products serial port on Linux

查看:139
本文介绍了Linux上的Cygnal Integrated Products串行端口的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个红外测温仪,该测温仪通过USB在虚拟串行端口上运行,我正在尝试在Debian Linux上使用它.不幸的是,系统没有枚举/dev/ttyUSB 设备.

I have an infrared thermometer which operates on a virtual serial port over USB, which I am trying to use on Debian Linux. Unfortunately, the system does not enumerate a /dev/ttyUSB device.

这是设备的 dmesg :

usb 5-1: new full-speed USB device number 3 using uhci_hcd
usb 5-1: New USB device found, idVendor=10c4, idProduct=834b
usb 5-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 5-1: Product: Infrared Online Sensor Adapter
usb 5-1: Manufacturer: Silicon Labs
usb 5-1: SerialNumber: CT00092755

这是 lsusb -v :

Bus 005 Device 003: ID 10c4:834b Cygnal Integrated Products, Inc.
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0        64
  idVendor           0x10c4 Cygnal Integrated Products, Inc.
  idProduct          0x834b
  bcdDevice            1.00
  iManufacturer           1
  iProduct                2
  iSerial                 3
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass       255 Vendor Specific Class
      bInterfaceSubClass      0
      bInterfaceProtocol      0
      iInterface              2
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0

如何使它工作,以便可以通过串行端口连接到它?

How can I get this working, so I can connect to it with the serial port?

推荐答案

事实证明,此设备使用标准的Silicon Labs CP2102接口芯片,设备制造商已加载了自定义的 idProduct 编号.虽然该芯片与 cp210x.ko 驱动程序100%兼容,但是 idProduct 无法被系统识别,也不会将驱动程序与其关联.

It turns out this devices uses a standard Silicon Labs CP2102 interface chip, which the device manufacturer loaded with a custom idProduct number. While the chip is 100% compatible with the cp210x.ko driver, the idProduct is not recognized by the system, and does not associate the driver with it.

目前,有几种可能的解决方案:

At this point, there are several possible solutions:

  • 手动引导系统将该 cp210x.ko 驱动程序与此 idProduct 一起使用.
  • idProduct 添加到开源驱动程序,进行编译并安装.然后尝试将更改推送到标准Linux存储库中.
  • 用通用芯片代替定制芯片.
  • 重写芯片上的 idProduct .
  • Manually direct the system to use the cp210x.ko driver with this idProduct.
  • Add the idProduct to the open source driver, compile, and install it. Then try to push the changes into standard Linux repositories.
  • Replace the customized chip with generic one.
  • Rewrite the idProduct on the chip.

我选择重写 idProduct .Silicon Labs具有免费实用程序来执行此操作.我设置了 idProduct = EA60 ,这是该芯片的默认设置.现在,该设备已被标准的内置驱动程序识别,并且可以正常运行.

I chose to rewrite the idProduct. Silicon Labs has a free utility to do just this. I set the idProduct=EA60, which is the default for this chip. The device is now recognized by the standard built-in driver, and works perfectly.

这篇关于Linux上的Cygnal Integrated Products串行端口的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆