- Lenovo Ideapad Y700
Graphics cards (in my system, they are configured to work in hybrid mode):
- GeForce GTX 960M – NVIDIA Corporation GM107M (rev ff)
- Intel Corporation HD Graphics 530 (rev 06)
Docking station with DisplayLink support:
- ThinkPad Basic USB 3.0 Dock, Model No. DL3700-ESS
It is connected to the laptop via an USB3 port and has its own power supply.
Using the NVIDIA graphics card
The following point is probably irrelevant to DisplayLink usage and problems. However it is part of my environment and I mention it for completeness sake.
The laptop is configured, as instructed by https://wiki.debian.org/Bumblebee, to work with the Intel graphics card. The NVIDIA card is used by applications running under optirun. I had to modify /etc/bumblebee/bumblebee.conf to use KernelDriver=nvidia-current rather than KernelDriver=nvidia.
Connecting two additional displays to the laptop
To install the appropriate driver:
- git clone https://github.com/AdnanHodzic/displaylink-debian.git
- Follow the instructions in README.md
When everything works properly, three displays are identified by xrandr -q | egrep axis as follows:
- eDP-1 – laptop’s display
- HDMI-1 – external display connected via laptop’s HDMI port
- DVI-I-1-1 – external display connected via DisplayLink on docking port
Note that those displays could have different identifiers (such as DP1 or eDP1) in your system.
After starting the X-Window, configure the displays using:
- xrandr –output HDMI-1 –primary
- xrandr –output eDP-1 –mode 1360×768 –right-of HDMI-1
- sleep 1 # without it, the following display was not properly configured.
- xrandr –output DVI-I-1-1 –left-of HDMI-1
You probably want to add those commands to your ~/.xinitrc.
I chose the 1360×768 mode to have the same DPI in all attached displays.
Problems when upgrading from Debian 9 (Stretch) to Debian 10 (Buster)
The above setup worked under Debian 9 (Stretch).
However, after upgrade to Debian 10 (Buster) following the instructions in Release Notes for Debian 10 (buster), 64-bit PC, chapter 4, either the X-Window server did not work or the display connected via the docking station exhibited misconfiguration.
I got it to work as follows:
- Update your displaylink-debian clone to the most recent commit using
- If the most recent commit did not work for you, try:
git checkout fcb6ce5bc36c774af2d7f792842bcd2ede9c7483
as this commit worked for me after performing the following steps.
- Reinstall the driver by running displaylink-debian.sh and following the instructions in README.md.
- Finally, replace the contents of the file /etc/X11/xorg.conf.d/20-displaylink.conf, installed by the above instructions by the following:
Section "ServerLayout" Identifier "layout" Screen 0 "Intel Graphics" Inactive "nvidia" EndSection Section "Device" Identifier "intel" Driver "modesetting" Option "PageFlip" "false" Option "AccelMethod" "None" EndSection Section "Screen" Identifier "intel" Device "intel" EndSection Section "Device" Identifier "nvidia" Driver "nvidia" Option "ConstrainCursor" "off" EndSection Section "Screen" Identifier "nvidia" Device "nvidia" Option "AllowEmptyInitialConfiguration" "on" Option "IgnoreDisplayDevices" "CRT" EndSection Section "Device" Identifier "Intel Graphics" Driver "modesetting" Option "VSync" "false" EndSection Section "Screen" Identifier "Intel Graphics" Device "Intel Graphics" EndSection
- You need to restart the X-Server (I restarted the entire laptop to be on the safe side).
See GitHub issue: AdnanHodzic/displaylink-debian, Debian buster #308 for a similar bug report.
I wish to thank Boris Shtrasman for reviewing a draft of this post and providing a lot of feedback. Of course, any remaining inaccuracies in this post are my sole responsibility.