Difference between revisions of "HDMI to DVI problem"

From Organic Design wiki
m (link to further bg info)
(shell script)
Line 17: Line 17:
 
  xrandr --addmode TMDS-1 1680x1051_60.00
 
  xrandr --addmode TMDS-1 1680x1051_60.00
 
  xrandr --output TMDS-1 --mode 1680x1051_60.00
 
  xrandr --output TMDS-1 --mode 1680x1051_60.00
 +
 +
I'm not sure how to translate these settings in to ''xorg.conf'' if you just want to run only the external monitor, but for dual monitor configuration, simply add the ModeLine to the appropriate monitor section. For now I've created a shell script which applies the new mode and turns off the laptop panel.
 +
 +
<bash>
 +
#!/bin/bash
 +
xrandr --newmode "1680x1051_60.00"  147.27  1680 1784 1968 2256  1051 1052 1055 1088  -HSync +Vsync
 +
xrandr --addmode TMDS-1 1680x1051_60.00
 +
xrandr --output TMDS-1 --mode 1680x1051_60.00
 +
xrandr --output LVDS --off
 +
</bash>
  
 
== See also ==
 
== See also ==

Revision as of 21:02, 17 July 2008

We found on our Dell laptops under Ubuntu Linux (one an XPS, the other an Inspiron) that the external monitor would not work at the right resolution when connected to from the HDMI output to the monitor's DVI input. It would work fine using the VGA analogue output, but when using digital it would always result in a resolution one line short on the external monitor, for example 1680x1049 instead of 1680x1050.

This problem should be fixed in a future kernel or driver update, but in the mean time the problem can be overcome by creating a custom resolution which is one line higher than the monitors natural resolution.

Defining a new video mode requires nine parameters which are difficult to work out manually so first we'll use the gtf utility to work out the sequence of numbers from the resolution and frequency we want. In our case we wanted to create a resolution of 1680 by 1051 at 60Hz.

gtf 1680 1051 60 -x

This resulted in the following information on my system:

# 1680x1051 @ 60.00 Hz (GTF) hsync: 65.28 kHz; pclk: 147.27 MHz
Modeline "1680x1051_60.00"  147.27  1680 1784 1968 2256  1051 1052 1055 1088  -HSync +Vsync

Next use these number to create and set a new video mode as follow:

xrandr --newmode "1680x1051_60.00"  147.27  1680 1784 1968 2256  1051 1052 1055 1088  -HSync +Vsync
xrandr --addmode TMDS-1 1680x1051_60.00
xrandr --output TMDS-1 --mode 1680x1051_60.00

I'm not sure how to translate these settings in to xorg.conf if you just want to run only the external monitor, but for dual monitor configuration, simply add the ModeLine to the appropriate monitor section. For now I've created a shell script which applies the new mode and turns off the laptop panel.

<bash>

  1. !/bin/bash

xrandr --newmode "1680x1051_60.00" 147.27 1680 1784 1968 2256 1051 1052 1055 1088 -HSync +Vsync xrandr --addmode TMDS-1 1680x1051_60.00 xrandr --output TMDS-1 --mode 1680x1051_60.00 xrandr --output LVDS --off </bash>

See also