Skip to contentSkip to conversation

USB: serial: pl2303: add Delock Infrared device id

DISCUSSION Johan Hovold 1 participant 1 message Feb 9, 2019 USB

lore
Share & tools
lore
#0 lore raw
Quoted 77 lines · Ebrahim Byagowi
Quoted 9 lines · Johan Hovold
Quoted 7 lines · On Sat, Feb 09, 2019 at 12:18:40PM +0330, [email protected] wrote:

From: Ebrahim Byagowi <[email protected]>

This makes Delock Infrared adapter to work as a USB to Serial device.

---
 drivers/usb/serial/pl2303.c | 1 +
 drivers/usb/serial/pl2303.h | 3 +++
 2 files changed, 4 insertions(+)
Quoted 5 lines

Review

Quoted 3 lines
(quoted diff) +3 -0
+/* Delock Infrared Adapter */
+#define DELOCK_VENDOR_ID	0x1685
+#define DELOCK_PRODUCT_ID	0x2000

Please post the output of lsusb -v for this device, and perhaps also a log from when connecting the device with driver debugging enabled.

lsusb -v -d 1685:0200

Bus 002 Device 019: ID 1685:0200 Delock Infrared adapter Couldn't open device, some information will be missing Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass          255 Vendor Specific Class bDeviceSubClass         1
  bDeviceProtocol         0
  bMaxPacketSize0         8
  idVendor           0x1685 Delock
  idProduct          0x0200 Infrared adapter bcdDevice            0.08
  iManufacturer           0
  iProduct                0
  iSerial                 0
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0027
    bNumInterfaces          1 bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              440mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4 bInterfaceNumber        0 bAlternateSetting       0
      bNumEndpoints           3
      bInterfaceClass         0 bInterfaceSubClass      0 bInterfaceProtocol      0
      iInterface              0
      Endpoint Descriptor:
        bLength                 7 bDescriptorType         5 bEndpointAddress     0x81  EP 1 IN bmAttributes            3
          Transfer Type            Interrupt Synch Type               None
          Usage Type               Data wMaxPacketSize     0x000a  1x 10 bytes bInterval               1
      Endpoint Descriptor:
        bLength                 7 bDescriptorType         5 bEndpointAddress     0x02  EP 2 OUT bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data wMaxPacketSize     0x0040  1x 64 bytes bInterval               0
      Endpoint Descriptor:
        bLength                 7

Quoted 8 lines

        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0

These descriptors do no look like they come from a pl2303 device (e.g. the device descriptor class and protocol is 255/1/0 and not 0/0/0).

Quoted 3 lines

I've uploaded a screenshot here
https://commons.wikimedia.org/wiki/File:A_modified_kernel_screenshot_on_QEMU.png
which shows it understands a remote control commands also.

It shows that you receive something over the bulk-in endpoint at the default line speed, but those -EPIPE errors also tells us that this is not a pl2303 device.

I suspect there are further errors in the log after you've opened the device which can involve setting the baudrate.

Quoted 6 lines
Quoted 1 line

How did you determine that this a pl2303 device?

I tried to find a compatible driver from different IR adapters I have around, one of them a 0df7:0620 which identifies itself as a Mobile Action Technology, Inc. MA-620 Infrared Adapter, enlisted on the same header, uses the driver and I found the same driver works for this dongle.

Some quick searching for the MA-620 descriptors show that those are indeed from a pl2303 and are quite different from the ones you posted above:

	https://sparcher.blogspot.com/2016/11/howto-some-experience-with-usb-irda.html

There are other usb-serial chips that can be found in other ir-devices too.

Would you be able to open the device to see if you can identify a generic usb-serial chip inside?

Johan