I'm trying to connect my external monitor (via VGA cable) to my laptop, using Bumblebee and the Optimus configuration.
I have a Lenovo W520, with an Intel GMA HD 3000 and an Nvidia Quadro 2000M. The BIOS has three options regarding the graphic cards - integrated, discrete, and Optimus.
The use case is very simple. For work, I just use the integrated card and the laptop display; when I watch movies though, I want to use my projector. Now, what I have to do in this case is:
- reboot
- start windows
- watch the movie
Thanks to Bumblebee, I'm able now to keep the setup always as Optimus.
Before BB, I had to change the BIOS setting every time I wanted to watch a movie, because even in windows, using integrated graphics caused the projector not to be detected by the system (I suppose that this is what they generally mean by "hardwired output", and that the VGA output is hardwired to the discrete card).
Now, what I'd like to do, is to be able to connect the external monitor without having to switch O/S, that is, to use it in Ubuntu.
Is it possible?
Right now, if I want to use the external monitor on Ubuntu, the only option is to change the BIOS to use the discrete graphics, then use nvidia-settings.
If I use instead the Optimus setup, even when I run it using "optirun nvidia-settings -c :8", I don't get any option for an external monitor.
Is there something I can do?
I have a W520. It is not the same setup as the T420 - the VGA output is wired to the nvidia card, so the "this" link from Samsagax will not work. I've prepared a blog post here outlining the options you have. I was unable to get either external monitor to work with Bumblebee, and I do not believe it is possible with the W520. However, you can use an extenal monitor in optimus mode, but you either have to use xinerama or open a separate X screen on the extenal monitor.
(redirected from linux-hybrid-graphics list)
I have a Thinkpad T420 which might be similar (but may be not).
On my T420, VGA is attached to the Intel and Display-Port is attached to the NVIDIA. So for the VGA output I can use the usual xrandr.
The Display-Port is a different story. For that I have to change the xorg.conf from bumblebee in /etc/bumblebee/xorg.conf.nvidia:
The option
ConnectedMonitor
fromDFP
(the default) toDP1
for DisplayPort.Newer versions of the Intel driver include a program called
intel-virtual-output
which greatly simplifies setup of double and triple displays on a W520.The
intel-virtual-output
command provides a way for an X server on the Intel card to duplicate screens to another X server. It looks at the available screens on the remote display and presents them on the Intel X server as VIRTUAL1, VIRTUAL2, etc.The following script (run as root) works for me, but most likely you'll need to tweak things:
This setup enables my DisplayPort to DVI cable (VIRTUAL3) on the left and the VGA (VIRTUAL1) on the right. It also disables the laptop screen.
Note that since these are just virtual screens from the driver, in theory your GUI's display configuration tool should be able to figure it out after you've run
intel-virtual-output
.In practice, the display configuration tool in xubuntu did not really do coherent things. That's why those
xrandr
commands are there. If you're running gnome or kde it might be worth trying the GUI tool before messing withxrandr
. Otherwise, before you run this you'll probably want to tweak some things for whatever setup you're actually using. Running justxrandr
tells you what displays are currently connected. You can connect and disconnect your monitors to see which plug connects to which VIRTUAL[0-9] display. The laptop screen is LVDS1. Then it's just a matter of doing thexrandr
commands with--right-of
,--left-of
,--below
, etc. to get things in their proper place.When you want to go mobile again you can run this (again, as root):
I'm running xubuntu 14.04 using the proprietary nvidia driver version 337.25. I've also got bumblebee packages from https://launchpad.net/~bumblebee/+archive/ubuntu/stable.
Interestingly, this setup is the reverse of the usual Optimus setup. Usually you're selectively running programs on the nvidia card and copying buffers from the nvidia card to the intel card which actually talks to the monitors. In this case you're running everything on the intel card and copying the relevant screen buffers to the nvidia card.
If you're wondering, yes, this makes it hard to run nvidia accelerated applications. I've not yet figured out a way to make games perform well, and even with HD video it slows down over time. It even appears to not be double-buffering because you get visible left-right top-down scanning after playing fairly high-resolution video for a while. That said, most projectors will probably be fine.
Maybe try this.
But is dependent on hardwiring.