Howto: DisplayLink USB Single Monitor on Linux
Posted on 23. Dec, 2011 by jerome in Using
Unfortunately, Linux doesn’t support multiple graphics adapters the way Windows does, which means you can’t just plug in USB graphics adapters and expect them to extend your desktop (the good news is there is progress on this support).
What is possible, however, is running a single DisplayLink adapter, or several with a Xinerama or multiseat configuration — just as long as you don’t expect to use your main GPU at the same time.
The single-display case is relatively easy to set up, and we’ll cover that here.
First, make sure you’re running kernel version 2.6.35 or later (Ubuntu 10.10 or later). For older kernel versions, you’ll need to update udlfb and run a modified fbdev X server (not covered in this post). On these kernel versions, when you plug in your DisplayLink-based USB graphics device, you should get a green screen. This means that at the driver built into the Linux kernel is happy, healthy, and talking to the device.
Second, if you are running Unity Desktop in Ubuntu 11.04 or later, you’ll need to switch back to Classic Mode so you’re running straight X. Here’s how on Ubuntu:
Click on the power button in the upper right corner (mine looks like a light switch) and choose the last option, System Settings. Search for Login Screen, Double-click to display, Choose Unlock and enter your password, Select Ubuntu Classic as default session.
Third, if you’re running kernel versions between 2.6.35 to 3.1, enable the fb_defio option of udlfb. To do this, create or edit a file like
/etc/modprobe.d/50-displaylink.conf
and add the single line
options udlfb fb_defio=1
And reboot (or run “sudo depmod -a” and unplug/replug your adapter). This will turn on defio (page fault change detection) support. This option is already enabled by default in kernels 3.2+.
Lastly, create an X config file called 60-plugable.conf (or similar) with the following contents and place it in /usr/share/X11/xorg.conf.d (on recent distros; on older distros, make this your xorg.conf):
Section "Device" Identifier "uga" driver "fbdev" Option "fbdev" "/dev/fb0" EndSection Section "Monitor" Identifier "monitor" EndSection Section "Screen" Identifier "screen" Device "uga" Monitor "monitor" EndSection Section "ServerLayout" Identifier "default" Screen 0 "screen" 0 0 EndSection
Note: if your main GPU creates a /dev/fb0 even when the USB display is not attached, then your USB display is probably getting assigned to /dev/fb1. In that case, change /dev/fb0 in the “Device” section above to /dev/fb1
Now, on reboot, you should (hopefully!) see your login come up on your DisplayLink USB attached display!
This kind of simple setup is useful for:
- Testing or playing with your USB graphics adatper on Linux.
- Embedded systems with USB but no GPU.
- As a backup method when the main GPU or its driver isn’t available or working.
- Systems where a USB graphics adapter enables higher modes (up to 2048×1152) than the main GPU screen.
Please comment if you have any trouble with this single display case. See our past posts for additional information about the DisplayLink Linux kernel driver and some more involved setups.
The instructed here work on all Plugable USB 2.0 graphics adapters and Plugable USB 2.0 docking stations and thin clients (and should also generally work on all DisplayLink based products).
Plugable’s New 10-Port USB 2.0 Hub
Posted on 01. Nov, 2010 by Bernie Thompson in Windows
A lot of USB hubs end up looking like a porcupine on your desk – wires going in all directions.
So we’re excited to launch a hub with a lots of expandability (10 ports), but with a simple and clean design.
- Full USB 2.0/1.1 performance and compatibility. No compromises. Works on all platforms with no drivers (i.e. it’s a standard USB 2.0 hub)
- Cascaded Terminus Technology chipsets – the best designed, lowest power, most reliable USB 2.0 hub controller out there right now
- The 10 ports (plus upstream port to PC and AC power) are all on just two sides of the hub, minimizing cable clutter
- Two of the ports swivel to a vertical position – so if you want a flash drive or antenna to stick up, that works. If you want everything to lay flat so you can stack on the hub, no problem
- A blue LED bar down the center of the device signals power. 2.5A AC adapter included
The customer feedback from this hub design has been surprising us – you wouldn’t think in 2010 that a USB 2.0 hub could get people excited. But buyers have written with disproportionately positive feedback like “Easy to use and a really helpful device” and “Exactly what I was looking for”.
With many laptops only having 2 or 3 USB ports, the easy expandability of a hub like this is a nice win.
Check out more pics and details on the Amazon product page
![]() |
Plugable USB 2.0 10 Port Hub (with Power Adapter) | Product Details | $26.95 | ![]() |
Howto: ASIX 88178 USB Ethernet Adapter on Ubuntu 10.10 Linux
Posted on 18. Oct, 2010 by Bernie Thompson in Using
[update Dec 2011: Linux kernel 3.2 rc3 and later "just work" and don't need the fix described below]
Support for these devices has been in the Linux kernel since kernel 2.6.21 (file /drivers/usb/net/asix.c). However, this driver fails to find an IP address, and comes up “disconnected”
To get the adapter working, we need to download, compile, and install the latest driver available from ASIX for the AX88X family. This driver is compatible with kernels 2.6.14+
Steps
Assumes you have another net connection on this machine. Download the driver on another machine and copy over if not.
mkdir asix cd asix wget http://www.asix.com.tw/FrootAttach/driver/AX88772B_772A_760_772_178_LINUX2.6.35_Driver_v3.5.0_Source.tar.bz2 tar xvjf * sudo apt-get install module-assistant sudo module-assistant prepare sudo modprobe -r asix make sudo make install sudo modprobe asix
Your USB network interface should now come up automatically.
These instructions have been written for our Plugable USB2-E1000 USB Gigabit Ethernet adapter, but should apply to any ASIX adapter with an ASIX AX88178 USB Ethernet controller and Realtek RTL8211CL PHY, which reports ASIX’s USB IDs VID_0B95 & PID_1780.
The steps should work identically on older Ubuntu kernel versions. It was also tested on Ubuntu 9.04, kernel 2.6.28.10. Comment here if you have any trouble, and we’ll try to figure it out.
Common errors
Before this update of the driver, the common errors you’ll see typically show up as a timeout trying to get an IP address from DHCP. You’ll see messages like
“no ipv6 routers present” in dmesg and /var/log/kern.log
And in /var/log/syslog:
“DHCP transaction took too long (>45s), stopping it”
“Marking connection ‘Auto eth1′ invalid”
Again, this update of the ‘asix’ kernel module should resolve these errors. For the future, hopefully the in-kernel ASIX driver will get patches to catch it up with the driver source available directly from ASIX.



Recent Comments