# USB 3.0 AOC e1659Fwu - How can I use this with linux?

## mizery de aria

Disclaimer: I figured out some of the things explained below courtesy of http://plugable.com/2011/12/23/usb-graphics-and-linux/

Previously I have been using a USB 2.0 22-inch AOC e2251Fwu monitor.

As I first began using it, nothing appeared on the screen and it auto-powered off because I did not have the correct kernel modules included.

I added 3.14.14 kernel support for the following:

```

Device Drivers -> Graphics support -> <M> Displaylink 

Device Drivers -> Graphics support -> Support for frame buffer devices -> <M> Displaylink USB Framebuffer support

```

Then I was not familiar with why the screen was solid green color when plugged in and properly recognized by the kernel.

The following document was helpful to understand why the screen was green:

https://www.kernel.org/doc/Documentation/fb/udlfb.txt

 *Quote:*   

> If the DisplayLink device is successful, it will paint a "green screen" which means that from a hardware and fbdev software perspective, everything is good.

 

Although I had ideally wanted to use the usb monitor as the primary screen and to show the framebuffer/console during boot sequence, I am not sure if that is possible. However, I did realize how to make use of the monitor for Xorg-x11 (and also Wayland, albeit with kernel panics).

Particularly, attaching the AOC e2251Fwu monitor produced a new /dev/fb# file and I used it inside of xorg.conf

-

Onto 16" USB 3.0 AOC e1659Fwu

-

I just received this monitor earlier today, and I had anticipated it to work out of the box. Though, as it did not, I realize some details that may suggest or indicate why.

Particularly https://www.kernel.org/doc/menuconfig/drivers-video-Kconfig.html suggests:

 *Quote:*   

> 
> 
> FB_UDL
> 
> Displaylink USB Framebuffer support
> ...

 

Particularly of note is the USB 2.0 era reference.

The AOC e1659Fwu is a USB 3.0 device.

-

Here are some data I've gathered from the devices:

22" AOC e2251Fwu

```

$ lsusb -v # ...snipped...

Bus 003 Device 002: ID 17e9:03aa DisplayLink

Device Descriptor:

  bLength                18

  bDescriptorType         1

  bcdUSB               2.00

  bDeviceClass            0 (Defined at Interface level)

  bDeviceSubClass         0

  bDeviceProtocol         0

  bMaxPacketSize0        64

  idVendor           0x17e9 DisplayLink

  idProduct          0x03aa

  bcdDevice            1.39

  iManufacturer           1 DisplayLink

  iProduct                2 e2251Fwu

  iSerial                 3 #############

  bNumConfigurations      1

  Configuration Descriptor:

    bLength                 9

    bDescriptorType         2

    wTotalLength           66

    bNumInterfaces          1

    bConfigurationValue     1

    iConfiguration          0

    bmAttributes         0x80

      (Bus Powered)

    MaxPower              500mA

    Interface Descriptor:

      bLength                 9

      bDescriptorType         4

      bInterfaceNumber        0

      bAlternateSetting       0

      bNumEndpoints           3

      bInterfaceClass       255 Vendor Specific Class

      bInterfaceSubClass      0

      bInterfaceProtocol      0

      iInterface              0

      ** UNRECOGNIZED:  1b 5f 01 00 19 05 00 01 03 00 04 04 01 00 03 d0 00 02 04 00 bd 1f 00 01 04 01 02

      Endpoint Descriptor:

        bLength                 7

        bDescriptorType         5

        bEndpointAddress     0x01  EP 1 OUT

        bmAttributes            2

          Transfer Type            Bulk

          Synch Type               None

          Usage Type               Data

        wMaxPacketSize     0x0200  1x 512 bytes

        bInterval               0

      Endpoint Descriptor:

        bLength                 7

        bDescriptorType         5

        bEndpointAddress     0x82  EP 2 IN

        bmAttributes            3

          Transfer Type            Interrupt

          Synch Type               None

          Usage Type               Data

        wMaxPacketSize     0x0008  1x 8 bytes

        bInterval               4

      Endpoint Descriptor:

        bLength                 7

        bDescriptorType         5

        bEndpointAddress     0x0a  EP 10 OUT

        bmAttributes            2

          Transfer Type            Bulk

          Synch Type               None

          Usage Type               Data

        wMaxPacketSize     0x0200  1x 512 bytes

        bInterval               0

Device Qualifier (for other device speed):

  bLength                10

  bDescriptorType         6

  bcdUSB               2.00

  bDeviceClass            0 (Defined at Interface level)

  bDeviceSubClass         0 

  bDeviceProtocol         0 

  bMaxPacketSize0        64

  bNumConfigurations      1

Device Status:     0x0000

  (Bus Powered)

```

```

# from /var/log/message when device is attached

Aug 15 23:55:09 elemqi kernel: usb 3-2: new high-speed USB device number 6 using xhci_hcd

Aug 15 23:55:09 elemqi kernel: usb 3-2: New USB device found, idVendor=17e9, idProduct=03aa

Aug 15 23:55:09 elemqi kernel: usb 3-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3

Aug 15 23:55:09 elemqi kernel: usb 3-2: Product: e2251Fwu

Aug 15 23:55:09 elemqi kernel: usb 3-2: Manufacturer: DisplayLink

Aug 15 23:55:09 elemqi kernel: usb 3-2: SerialNumber: #############

Aug 15 23:55:09 elemqi kernel: udlfb: DisplayLink e2251Fwu - serial ##############

Aug 15 23:55:09 elemqi kernel: udlfb: vid_17e9&pid_03aa&rev_0139 driver's dlfb_data struct at ffff8802318c9000

Aug 15 23:55:09 elemqi kernel: udlfb: console enable=1

Aug 15 23:55:09 elemqi kernel: udlfb: fb_defio enable=1

Aug 15 23:55:09 elemqi kernel: udlfb: shadow enable=1

Aug 15 23:55:09 elemqi kernel: udlfb: vendor descriptor length:1b data:1b 5f 01 0019 05 00 01 03 00 04

Aug 15 23:55:09 elemqi kernel: udlfb: DL chip limited to 2080000 pixel modes

Aug 15 23:55:09 elemqi kernel: udlfb: allocated 4 65024 byte urbs

Aug 15 23:55:09 elemqi kernel: udlfb: 1920x1080 @ 60 Hz valid mode

Aug 15 23:55:09 elemqi kernel: udlfb: Reallocating framebuffer. Addresses will change!

Aug 15 23:55:09 elemqi kernel: udlfb: 1920x1080 @ 60 Hz valid mode

Aug 15 23:55:09 elemqi kernel: udlfb: set_par mode 1920x1080

Aug 15 23:55:09 elemqi kernel: udlfb: DisplayLink USB device /dev/fb2 attached. 1920x1080 resolution. Using 8104K framebuffer memory

```

-

16" AOC e1659Fwu

```

$ lsusb -v # ...snipped...

Bus 004 Device 002: ID 17e9:ff05 DisplayLink 

Device Descriptor:

  bLength                18

  bDescriptorType         1

  bcdUSB               3.00

  bDeviceClass          239 Miscellaneous Device

  bDeviceSubClass         2 ?

  bDeviceProtocol         1 Interface Association

  bMaxPacketSize0         9

  idVendor           0x17e9 DisplayLink

  idProduct          0xff05 

  bcdDevice            1.31

  iManufacturer           1 DisplayLink

  iProduct                2 E1659Fwu

  iSerial                 3 #############

  bNumConfigurations      1

  Configuration Descriptor:

    bLength                 9

    bDescriptorType         2

    wTotalLength          116

    bNumInterfaces          2

    bConfigurationValue     1

    iConfiguration          0 

    bmAttributes         0x80

      (Bus Powered)

    MaxPower              126mA

    Interface Descriptor:

      bLength                 9

      bDescriptorType         4

      bInterfaceNumber        0

      bAlternateSetting       0

      bNumEndpoints           4

      bInterfaceClass       255 Vendor Specific Class

      bInterfaceSubClass      0 

      bInterfaceProtocol      3 

      iInterface              0 

      ** UNRECOGNIZED:  0c 5f 01 00 0a 00 04 04 01 00 04 00

      Endpoint Descriptor:

        bLength                 7

        bDescriptorType         5

        bEndpointAddress     0x02  EP 2 OUT

        bmAttributes            2

          Transfer Type            Bulk

          Synch Type               None

          Usage Type               Data

        wMaxPacketSize     0x0400  1x 1024 bytes

        bInterval               0

        bMaxBurst               0

      Endpoint Descriptor:

        bLength                 7

        bDescriptorType         5

        bEndpointAddress     0x08  EP 8 OUT

        bmAttributes            2

          Transfer Type            Bulk

          Synch Type               None

          Usage Type               Data

        wMaxPacketSize     0x0400  1x 1024 bytes

        bInterval               0

        bMaxBurst               0

      Endpoint Descriptor:

        bLength                 7

        bDescriptorType         5

        bEndpointAddress     0x84  EP 4 IN

        bmAttributes            2

          Transfer Type            Bulk

          Synch Type               None

          Usage Type               Data

        wMaxPacketSize     0x0400  1x 1024 bytes

        bInterval               0

        bMaxBurst               0

      Endpoint Descriptor:

        bLength                 7

        bDescriptorType         5

        bEndpointAddress     0x85  EP 5 IN

        bmAttributes            3

          Transfer Type            Interrupt

          Synch Type               None

          Usage Type               Data

        wMaxPacketSize     0x0008  1x 8 bytes

        bInterval               5

        bMaxBurst               0

    Interface Descriptor:

      bLength                 9

      bDescriptorType         4

      bInterfaceNumber        1

      bAlternateSetting       0

      bNumEndpoints           0

      bInterfaceClass       254 Application Specific Interface

      bInterfaceSubClass      1 Device Firmware Update

      bInterfaceProtocol      1 

      iInterface              0 

      Device Firmware Upgrade Interface Descriptor:

        bLength                             9

        bDescriptorType                    33

        bmAttributes                        1

          Will Not Detach

          Manifestation Intolerant

          Upload Unsupported

          Download Supported

        wDetachTimeout                    200 milliseconds

        wTransferSize                    1024 bytes

        bcdDFUVersion                   1.01

      ** UNRECOGNIZED:  10 40 08 06 0c 08 00 01 46 66 6c 79 4d 6f 6e 69

Binary Object Store Descriptor:

  bLength                 5

  bDescriptorType        15

  wTotalLength           42

  bNumDeviceCaps          3

  USB 2.0 Extension Device Capability:

    bLength                 7

    bDescriptorType        16

    bDevCapabilityType      2

    bmAttributes   0x00000002

      Link Power Management (LPM) Supported

  SuperSpeed USB Device Capability:

    bLength                10

    bDescriptorType        16

    bDevCapabilityType      3

    bmAttributes         0x00

    wSpeedsSupported   0x000e

      Device can operate at Full Speed (12Mbps)

      Device can operate at High Speed (480Mbps)

      Device can operate at SuperSpeed (5Gbps)

    bFunctionalitySupport   2

      Lowest fully-functional device speed is High Speed (480Mbps)

    bU1DevExitLat          10 micro seconds

    bU2DevExitLat         366 micro seconds

  Container ID Device Capability:

    bLength                20

    bDescriptorType        16

    bDevCapabilityType      4

    bReserved               0

    ContainerID             {dab7947e-9e08-f742-ab94-6cde69269e9e}

Device Status:     0x0000

  (Bus Powered)

```

```

# from /var/log/message when device is attached

Aug 15 23:53:15 elemqi kernel: usb 4-2: new SuperSpeed USB device number 3 using xhci_hcd

Aug 15 23:53:15 elemqi kernel: usb 4-2: Parent hub missing LPM exit latency info.  Power management will be impacted.

Aug 15 23:53:15 elemqi kernel: usb 4-2: New USB device found, idVendor=17e9, idProduct=ff05

Aug 15 23:53:15 elemqi kernel: usb 4-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3

Aug 15 23:53:15 elemqi kernel: usb 4-2: Product: E1659Fwu

Aug 15 23:53:15 elemqi kernel: usb 4-2: Manufacturer: DisplayLink

Aug 15 23:53:15 elemqi kernel: usb 4-2: SerialNumber: #############

```

-

Unfortunately, the 16" AOC e1659Fwu does not produce a new /dev/fb# file and I am unable to use the monitor at this time. =/

----------

## mizery de aria

The monitor has been available for consumer purchase for over a year according to Amazon.

Linux-related stuff:

http://displaylink.org/forum/showthread.php?t=1748

https://www.change.org/petitions/displaylink-support-linux-with-dl-3000-series-chips/sponsors/new

http://www.displaylink.com/support/ticket.php?id=160

http://floe.butterbrot.org/displaylink/doku.php

----------

